STATUS()=137 I'm not sure about. It's not in SYS.MESSAGES. Or ERRMSG, for that matter. It's always 137? The 20 minute wait makes me think it is a lock problem. How about this:
- You are attempting top write without first EXPLICITLY locking the record. - Another user is holding a lock on that record. - Behind the scenes, the WIRTE statement implicitly attempts to lock the record before actually writing it. - It tries for 20 minutes, then errors out. The 20 minutes is hardcoded. - Fix: explicitly lock the record first (via READU, READVU, RECORDLOCK, FILELOCK) and include a LOCKED clause to handle the case where you can't get it. If anyone has a different explanation, I'd like to know. We have a case where the programmer cannot figure out and will not believe that he does not own the lock when he executes the WRITE. But this is the only explanation I know. In my case the error numbe that shows up in uv/errlog is 040019. > From: Donnie Jacobs > Sent: Wednesday, April 05, 2006 8:46 AM > > Universe Version 10.1.12 > Unix SunOS 5.8 > WRITE REC ON FLX,ID ON ERROR > ERROR.NUMBER = STATUS() > Blah..... > END ELSE > *This code got executed... > ERROR.NUMBER = STATUS() > Blah..... > END > > It was the "ELSE" clause that actually got executed. We have > different verbiage in the ON ERROR and ELSE clauses so that > we can differentiate between the two. > > FLX is a file variable referencing a Type 30 file. The error > number that came back was 137. > > Is there an include file or a header file somewhere that > would tell me what an error 137 means? > > One other thing to note is that the error occurred after > stalling for ~20 minutes. The program that was executing > normally completes within a few minutes. Our log files show > where the process started, and then ~20 minutes later is when > we logged the write failure. > > As always, thanks for the assistance! ------- u2-users mailing list u2-users@listserver.u2ug.org To unsubscribe please visit http://listserver.u2ug.org/