One of my long standing frustrations with Informix ER is that when the global catalog has issues, it gives errors that are pretty close to useless. Example: CDR GC peer processing failed: command: start replset, error 37, CDR server 3905
$ cdr finderr 37
37 undefined server
OK, that's nice, but which is the server that's allegedly undefined?
In my particular example, I've got two root nodes, call them A and B; node A has three children (all leaf nodes), while node B has none; sqlhosts on node B knows about all three leaf nodes even though it has no replicates defined that involve them. Yet every time I do any cdr start operation, it gives error 37 on node A and all three of its children and error 17 on node B. The ONLY sqlhosts difference I could find between Node A and Node B is that Node A has s=1 set for one of its leaf nodes, while the node definition for that same leaf on Node B does not.
Has anyone (looking at you, Art) written a script to check the global catalogs and specifically identify problems? It'd be nice to not have to guess.
The only time I have seen this was traced to poor/intermittent comms, i.e. the server was not accessible at the time of the command was issued. [not 100% sure it was error 37 though]
Didn't there used to be a method to force a GC sync ? If there was, it is not there now. I assume you have run diffs on the cdr list catalog -all
But I do agree most of the cdr errors are useless.
It happens every single time I do a cdr start repl.
The output of cdr list catalog –s on the two looks much different, though I can't explain why. This was a clean build.