Suppressing SYSTEM ERROR 22

MattKnowles

New Member
While running the

assign rcode-info:file-name = cFile no-error.

command across a somewhat flakey network I occassionally (rather too occassionally!) get a

SYSTEM ERROR: I/O error 22 in readit.....

Do any of you know a way that I can trap this error (suppressing the message) so that I can mark this file for retry?

Many thanks,

Matt
 

Rob Fitzpatrick

ProgressTalk.com Sponsor
This is more of a guess than anything, but I believe the answer is no (though I would be happy to hear otherwise). I too see this error occasionally, and not just with the syntax you describe.

I find the AVM is generally pretty lacking in resiliency in the face of network dropouts, e.g. when accessing code on a samba share or NFS mount.
 

RealHeavyDude

Well-Known Member
Haven't tried it yet, but if the error raises a STOP condition than you can trap it. Mostly I would use the structured error handling for that.

Something like that ( coded in Firefox IDE - not syntax checked ) could do:
Code:
 MY-BLOCK:
DO ON ERROR UNDO MY-BLOCK, LEAVE MY-BLOCK
    ON STOP UNDO MY-BLOCK, RETRY MY-BLOCK:

    IF RETRY THEN DO:
        /* Your error handling stuff */
    END.

    CATCH anyError AS Progress.Lang.Error:
       /* Your error handling stuff */
       DELETE OBJECT anyError.
    END.

END. /* MY-BLOCK */
Heavy Regards, RealHeavyDude.
 
Top