Java class cache problems
Gateway daemon reports Java™ errors during initialization and, when -Xshareclasses option nonfatal is not specified, fails to start.
Symptom
JVMSHRC022E Error creating shared memory region
JVMSHRC336E Port layer error code = -302 or -308
JVMSHRC337E Platform error message: EDC5111I Permission denied.
JVMSHRC028E Permission Denied
ICH408I USER(userid ) GROUP(group-name ) NAME(user-name)
/tmp/javasharedresources/C240D2A32_semaphore_cicstgvrmgroup-name_Gnn
CL(FSOBJ ) FID(0000000000000000000000D200000000)
INSUFFICIENT AUTHORITY TO OPEN
ACCESS INTENT(RW-) ACCESS ALLOWED(GROUP R--)
EFFECTIVE UID(uid) EFFECTIVE GID(gid)
ICH408I USER(userid ) GROUP(group-name ) NAME(user-name)
/tmp/javasharedresources/C240D2A32_memory_cicstgvrmgroup-name_Gnn
CL(FSOBJ ) FID(0000000000000000000000D300000000)
INSUFFICIENT AUTHORITY TO OPEN
ACCESS INTENT(RW-) ACCESS ALLOWED(GROUP R--)
EFFECTIVE UID(uid) EFFECTIVE GID(gid)
Probable cause
CICS Transaction Gateway uses Java class caching and the user ID starting the Gateway daemon should have the relevant permissions to allow the user ID to create, or use existing, Java shared resources in the /tmp/javasharedresources directory. If the user ID starting the Gateway daemon does not have the relevant permissions some, or all, of the messages above are written to the CICS TG job log. CICS Transaction Gateway specifies the -Xshareclasses option nonfatal, which ensures that failure to access the Java shared class cache resources does not prevent the Gateway daemon from starting. If the -Xshareclasses option nonfatal is removed, the Gateway daemon will fail to initialize if it cannot access the Java shared class cache resources.
This might occur if the Gateway daemon is started by different user IDs that do not have the correct permissions to access the shared class cache resources in the /tmp/javasharedresources directory.
Action
Ensure that all user IDs starting a Gateway daemon have the correct permissions to access the tmp/javasharedresources directory and the Java shared class cache resources. See Configuring Java shared classes for details of how to configure CICS TG with Java class caching.
For more information see your Java documentation.