Error closing "file" when last return code is a duplicate record
search cancel

Error closing "file" when last return code is a duplicate record

book

Article ID: 4442

calendar_today

Updated On:

Products

Datacom DATACOM - AD

Issue/Introduction

Converting one of our VSAM files to Datacom and we have a program that is attempting to add records to this table using VSAM transparency.

 If the last record it is trying to add is already on the table it gets a duplicate return code, when it attempts to close the file, the program abends with:

DVU0032T ITEMTRAC TRANSACTION BACKOUT ON FILE ERROR, FEEDBACK CODE 080008

 

Environment

Z/OS, CA Datacom/DB 14.0 with Vsam/T 14.0

Cause

-- From the VSAM/T Message Guide: 

ddname TRANSACTION BACKOUT ON FILE ERROR, FEEDBACK CODE xxxxxx 

Reason: During CLOSE processing for a file defined with TRBOFE=YES in the VSAM Interface Table, the Transparency determined that the previous request ended in a file error. Therefore, all updates were backed out. 

Action: This message indicates normal functioning. See the VSAM documentation for the VSAM feedback code displayed in the message to determine the source of the file error. Correct the error in the application or JCL, then rerun the job. 

 

-- From the VSAM/T User Guide 

Paragraph "Promote Integrity":

... 

Transaction backout and termination of the application, if the application issues a CLOSE immediately after issuing a request which failed with a file error other than EOF or no record found. To activate this feature, code TRBOFE=YES in the DBVUSTR macro of the VSAM Interface Table. 

Resolution

Setting TRBOFE=NO parameter in the VSAM Interface table allow to bypass that problem.

Additional Information

DVU0032T Transaction backout Feedback code 08 00 08... 

This means: 1st '08=logic error', '00= nothing', 2nd '08=duplicate record added'. 

This means: tried to add a duplicate record either via the alternate Index or the master key... 

VSAM COBOL application program should received Status code 22.