Doubt about run Java into IMS and scheduling steps



IBM's hierarchical database management system with a Database Manager (IMS DB) and a Transaction Manager(IMS DC)

Doubt about run Java into IMS and scheduling steps

Postby jcdm » Wed Nov 22, 2023 6:32 pm

Hello team,

I am new into this IMs world, so I am facing some issues in my workflow.

I am trying to run 3 trx defined in this way:

APPLCTN GPSB=JAVATRX1,
LANG=JAVA,
PGMTYPE=TP,
SCHDTYP=PARALLEL
*
TRANSACT CODE=JAVATRX1,
PRTY=(8,8,65535),
MSGTYPE=(MULTSEG,NONRESPONSE,100),
SEGNO=000,
MODE=SNGL,
EDIT=ULC,
SERIAL=NO,
PARLIM=0,
MAXRGN=100,
PROCLIM=(100,3)

JMP is defined as:

//IMSJ100A EXEC PROC=DFSJMP,
// TIME=(1440),
// RGN=0M, REGION SIZE FOR EXECUTION
// OPT=W, WAIT FOR CNTRL PRGRM TO START
// PCB=040, DEP RGN INTERREGN COM AREA SIZE
// CL1=600,CL2=000,CL3=000,CL4=000, TRANSACTION CLASS
// NBA=5, FP DB BUFFER NUMBER
// OBA=5, FP PAGE-FIXED BUFFER NUMBER
// IMSID=IVP1, IMSID OF IMS CONTROL REGION
// ENVIRON=DFSJVMEV, JVM ENVIRONMENT SETTINGS
// JVMOPMAS=DFSJVMMS, MASTER/STANDALONE JVM OPTIONS
// PWFI=Y, PSEUDO=WFI
// SSM=ESAF

With 3 trxs stopped, I insert 500, etc messages into the first trx, then, I start the 3 trx and find that despite having the PROCLIM at 100, IMS does not unschedule the first trx and it continues processing the rest of the messages up to 500, once these 500 messages have been processed, IMS apparently still doesnt unschedule the first transaction, so the second transaction does not begin processing.

If we manually stop the first transaction, the messages are processed, but the same thing happens with the 3rd transaction.

I performed same test with COBOL trx, and see that when a trx finishes processing the messages, it is unschedule and the next one start to process. I tried with one and more JMPs started.

Do you think that I need to parameterize anything else in the trx or in the JAVA region?

Any help is appreciated.
jcdm
 
Posts: 20
Joined: Fri Dec 10, 2021 4:39 pm
Has thanked: 1 time
Been thanked: 3 times

Re: Doubt about run Java into IMS and scheduling steps

Postby sergeyken » Wed Nov 22, 2023 8:24 pm

Help #1:
Please, use the Code button when posting:

jcdm wrote:Hello team,

I am new into this IMs world, so I am facing some issues in my workflow.

I am trying to run 3 trx defined in this way:

      APPLCTN GPSB=JAVATRX1,                          
                LANG=JAVA,                            
                PGMTYPE=TP,                            
                SCHDTYP=PARALLEL                      
 *                                                    
      TRANSACT CODE=JAVATRX1,                          
                PRTY=(8,8,65535),                      
                MSGTYPE=(MULTSEG,NONRESPONSE,100),    
                SEGNO=000,                            
                MODE=SNGL,                            
                EDIT=ULC,                              
                SERIAL=NO,                            
                PARLIM=0,                              
                MAXRGN=100,                            
                PROCLIM=(100,3)  


JMP is defined as:

//IMSJ100A EXEC PROC=DFSJMP,                                            
//         TIME=(1440),                                                
//         RGN=0M,                       REGION SIZE FOR EXECUTION      
//         OPT=W,                        WAIT FOR CNTRL PRGRM TO START  
//         PCB=040,                      DEP RGN INTERREGN COM AREA SIZE
//         CL1=600,CL2=000,CL3=000,CL4=000,  TRANSACTION CLASS          
//         NBA=5,                        FP DB BUFFER NUMBER            
//         OBA=5,                        FP PAGE-FIXED BUFFER NUMBER    
//         IMSID=IVP1,              IMSID OF IMS CONTROL REGION        
//         ENVIRON=DFSJVMEV,             JVM ENVIRONMENT SETTINGS      
//         JVMOPMAS=DFSJVMMS,            MASTER/STANDALONE JVM OPTIONS  
//         PWFI=Y,                PSEUDO=WFI                            
//         SSM=ESAF    


With 3 trxs stopped, I insert 500, etc messages into the first trx, then, I start the 3 trx and find that despite having the PROCLIM at 100, IMS does not unschedule the first trx and it continues processing the rest of the messages up to 500, once these 500 messages have been processed, IMS apparently still doesnt unschedule the first transaction, so the second transaction does not begin processing.

If we manually stop the first transaction, the messages are processed, but the same thing happens with the 3rd transaction.

I performed same test with COBOL trx, and see that when a trx finishes processing the messages, it is unschedule and the next one start to process. I tried with one and more JMPs started.

Do you think that I need to parameterize anything else in the trx or in the JAVA region?

Any help is appreciated.
Javas and Pythons come and go, but JCL and SORT stay forever.
User avatar
sergeyken
 
Posts: 438
Joined: Wed Jul 24, 2019 10:12 pm
Has thanked: 7 times
Been thanked: 40 times


Return to IMS DB/DC

 


  • Related topics
    Replies
    Views
    Last post