Considerations for the unsuccessful completion of a receive

In general, the application should check for the presence of data received. VTAM® could have already built some buffer list entries prior to completing an APPCCMD due to an error. This situation should occur only for severe errors where no further communications on the conversation are possible. After the CSM information is placed in the application buffer list, VTAM has passed responsibility for that storage to the application. In this situation, the application is responsible for freeing this storage using CSM services. Any processing of the data prior to storage release can be done based on application requirements. The application can determine the length of the buffer list built by examining the RECLEN parameter in the RPL.

The application should check to see if the error occurred because no CSM storage could be obtained. In this case, no data is passed to the application. This status is indicated by the RCPRI,RCSEC value of X'0070',X'0000', TEMPORARY_STORAGE_SHORTAGE_ OR_RESOURCE_SHORTAGE. If that status is present, the application could take one of the following actions:
  • Reissue the APPCCMD several times as a temporary retry recovery action.
  • Issue a non-HPDT receive so that the data can be copied into application private storage.
  • Explicitly deallocate the conversation using APPCCMD services.