We upgraded to XCOM r12.0 (GEN LEVEL 1407 SP00). When attempting to bring down XCOM after running some transfers, it accepts the termination command and issues the following error messages:
IEC999I IFG0TC0A,IFG0TC0B,XCOMD ,XCOMD ,DEB ADDR=9CA5D8 15.32.35 STC14675 IEC999I IFG0TC0A,IFG0TC0B,XCOMD ,XCOMD ,DEB ADDR=9CA908 15.32.35 STC14675 IEC999I IFG0TC0A,IFG0TC0B,XCOMD ,XCOMD ,DEB ADDR=9D48B0
The termination never completes and the CPU usage by XCOM goes up to 60+%. We then have to cancel it by the asid to force it down. User written EXIT01 is turned on.
The problem was traced to user written EXIT01. Not reassembling the EXIT01 when upgrading to a new release and the lack of serialization in the exit are causing this problem.
XCOM for z/OS r12 no longer directly attaches the EXIT01 modules as before. It now dispatches them as a post-processing phase of the transfer itself. It runs using the XCOM internal subtask that was used to perform the transfer. Any failure of this processing can leave the XCOM subtask in an unusable state. This may also lead to problems terminating the XCOM region.
Before XCOM for z/OS r11.6, XCOM just ATTACHED the EXIT01 code and it ran as its own subtask
At r11.6, it was changed to run as a Transaction Program as part of the transfer - that caused it to be subject to the MAXxxxx and TCPSESS limitations.