Originally posted by Scott Klement
View Post
Announcement
Collapse
No announcement yet.
HTTP job won't end
Collapse
X
-
Originally posted by Scott Klement View PostFWIW, status code 4 means that you tried to generate more JSON after the document was complete. This isn't allowed by JSON spec, so the generator will send that error and refuse to create the element.
To be clear, does this mean that the program tried to start a new json object/array/element after yajl_genClose() is called, or after you close the original JSON object (ie, the final } or ])?
PS - I accidentally found out I can edit other people's posts. may be a BB setting?
Comment
-
No, not after yajl_genClose().. that would be a different error, because there's no generator in that case to even call the YAJL routines under.
This is a valid JSON document:
Code:{ "field": "value", "another": "another value" }
Now imagine you tried to add an an additional field after the endObject... you can't, it's not possible.
Comment
-
Code:Opt Subsystem/Job User Type CPU % Function Status XXXXXXXXXX QTMHHTP1 BCI 47.4 THDW XXXXXXXXXX QTMHHTTP BCH .0 PGM-QZHBMAIN SIGW XXXXXXXXXX QTMHHTTP BCI .0 PGM-QZSRLOG SIGW XXXXXXXXXX QTMHHTTP BCI .0 PGM-QZSRHTTP SIGW XXXXXXXXXX QTMHHTP1 BCI .0 PGM-jvmStartPa TIMW XXXXXXXXXX QTMHHTP1 BCI .0 PGM-QZSRCGI TIMW XXXXXXXXXX QTMHHTTP BCI .0 PGM-QZSRHTTP DEQW XXXXXXXXXX QTMHHTP1 BCI .0 PGM-QZSRCGI TIMW XXXXXXXXXX QTMHHTP1 BCI .0 PGM-QZSRCGI TIMW
This is still an occasional problem for us. It happened last week, where I had to end the subsystem to get the job to end. Today I made sure to try and end the job *controlled, but after an hour I'm giving up and going to attempt *immediate. Then I'll probably have to end abnormal again.
No one else experiences this? I never did until last January. Now I've seen it 3 or 4 times.
Your friends list is empty!
Comment
-
Not like that, no.
I have a problem when I end something *IMMED where the job never ends, but it does not use high CPU time.
I would guess that you have a program running via the CGI interface (that's why you have userid=QTMHHTP1) and it is getting stuck in a loop or similar. You can't kill it via *CNTRLD because it is stuck in a loop and doesn't look for the shut down signal, and you can't kill it via *IMMED because HTTP server jobs never work with *IMMED. So you have a bad situation. This is just a guess, though, and if that is the problem you could fix the CGI code.
Comment
-
"you can't kill it via *IMMED because HTTP server jobs never work with *IMMED. So you have a bad situation."
Scott, by bad situation, could that include commits being rolled back? I've heard once or twice today about users missing some changes they've made to quotes in our system. I don't do much to update files with SQL, but I'm wondering me ending the HTTP server job could have done that? Regular CHAIN/UPDATE changes don't get rolled back, do they?
Your friends list is empty!
Comment
-
Whether changes are rolled back do not depend on wether they are executed by SQL or native I/O but whether they are executed under commitment control.
If you are using commitment control, all changes made under commitment control (SQL with compile option/set option/environment COMMIT other than *NONE and native I/O with keyword commit in the F-Specs) are rolled back at an abnormal job-end.
Birgitta
Comment
-
Originally posted by mjhaston View PostScott, by bad situation, could that include commits being rolled back? I've heard once or twice today about users missing some changes they've made to quotes in our system. I don't do much to update files with SQL, but I'm wondering me ending the HTTP server job could have done that? Regular CHAIN/UPDATE changes don't get rolled back, do they?
It doesn't matter if its SQL or native I/O (CHAIN/UPDATE) -- if its under committment control and hasn't been committed, it'll be rolled back.... like Birgitta said.
Comment
-
Since I'm running into this again, I figure I'd ask. How far back would these roll backs go? As long as this HTTP instance has been active? I just checked and by default our SQL programs are compiled with COMMIT(*CHG). It appears anywhere I use SQL to do an update or delete, I add "with nc" to my statement. But there are many other places in these programs where I do a native WRITE or UPDATE.
I've made copies of a few key files updated by this instance. If rollbacks occur, I'm hoping I can do some compares and find them.Your friends list is empty!
Comment
Comment