Which is the reason why you see 0's show up as "success". The non-zero exit codes will show the same status as the pgagent.pga_jobstep.jstonerror column holds for the step in question.
The problem is not that 0 shows up as "Success", which I expect. The problem is that the non-0 does, too. This is in the Step Statistics view:
Note that Run 1, with an exit code of 127, is listed as "Successful". That does not seem right to me. The record for that row is:
postgres=# select * from pgagent.pga_jobsteplog where jslid = 1; -[ RECORD 1 ]------------------------------ jslid | 1 jsljlgid | 1 jsljstid | 1 jslstatus | s jslresult | 127 jslstart | 2011-12-15 16:49:25.038705-08 jslduration | 00:00:00.024641 jsloutput |
Which makes me think that either `rc`is not what gets put into jsresult, or that `steps->GetString(wxT("jstonerror"))` is returning "s", too. Or that I’m completely misunderstanding something, of course. :-)
What's in pgagent.pga_jobstep where jstid in (1, 3, 7)?