Type: Incident report
Affects Version/s: 1.6.5
Fix Version/s: None
Environment:CentOS 5.3 - 2.6.18-128.1.16.el5xen - x86_64
On attempting to add a node , on the slave node, the following error is entered into the log files:
[Z3005] Query failed:  PGRES_FATAL_ERROR:ERROR: function md5(numeric) does not exist
LINE 1: ...||status||','||md5(macros)||','||md5(agent)||','||md5(time)|...
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
[insert into node_cksum (nodeid,tablename,recordid,cksumtype,cksum) select 30,'httptest',httptestid,1,md5(name)||','||applicationid||','||lastcheck||','||nextcheck||','||curstate||','||curstep||','||lastfailedstep||','||delay||','||status||','||md5(macros)||','||md5(agent)||','||md5(time)||','||md5(error) from httptest where 1=1 and httptestid between 3000000000000000 and 3099999999999999]
According to the PostgreSQL documentation, md5() only has md5(string), which would explain the error.
I ain't no programmer, but the only reference I found to md5() was in nodesender.c, which uses a md5(%s) on line 97, seemingly without explicitly casting %s as a string.
As it stands, this would seem to be stopping my two nodes from communicating with each other effectively.