Redirect ODBC to a separate subsystem

We had ODBC connections that we wanted to isolate to its own subsystem to increase performance. You may have the same need. We are going to create a new subsystem, isolate the ODBC connections from the other ODBC traffic and create a filter on OpsNav to handle that routing.

In our case we had ODBC connections that we wanted to isolate to its own subsystem to increase performance. You may have the same need. We are going to create a new subsystem, isolate the ODBC connections from the other ODBC traffic and create a filter on OpsNav to handle that routing.

I am taking what Bryan Dietz submitted and adding to it so that you don't run into problems.

Substitute (your_lib) with the library you want to contain the subsystem i.e. QGPL.

I am going to explain this next step and why it is important. You will need to end the host server for *DATABASE on the system until you reach the end of these instructions. If you do not the New Subsystem will start to pick up any ODBC traffic coming end and all your hard work will be for not until you IPL or stop all ODBC connection and restart them. I learned this the hard way.


ENDHOSTSVR *DATABASE
WRKSHRPOOL and setup a shared pool with appropriate amount of memory and
activity levels use the shrpool name in the steps below.
 Create Subsystem Description:
CRTSBSD SBSD(your_lib/ODBC) POOLS((1 *SHRPOOLx))
        TEXT('Subsystem for ODBC jobs')

Duplicate the Default ODBC class:
CRTDUPOBJ OBJ(QPWFSERVER) FROMLIB(QSYS)
      OBJTYPE(*CLS) TOLIB(QSYS)  NEWOBJ(QPWFODBC)

Change its attributes:
CHGCLS CLS(QSYS/QPWFODBC ) RUNPTY(35)     
**Or whatever RUNPTY you need**

Add a routing entry:
ADDRTGE SBSD(your_lib/ODBC) SEQNBR(1) CMPVAL(*ANY)
      PGM(QCMD) CLS(QSYS/QPWFODBC) POOLID(1)

Add a pre start Job Entry:
ADDPJE SBSD(your_lib/ODBC) PGM(QZDASOINIT) INLJOBS(21)
       THRESHOLD(20) ADLJOBS(5) CLS(QSYS/QPWFODBC)
**Use numbers specific to your installation**

Start the subsystem:
STRSBS SBSD(your_lib/ODBC)

You will need to add the starting of this subsystem
to the system start up program.
=======================

The next steps are done in iSeries Navigator:

Navigate 
 
  
   
    
     

Right Click on DataBase and select [Properties]
Click on the [Subsystems] tab
Click [Specific Clients] and click [Add]
    
   
  
 

In the Add Client screen: fill in the details Either single IP address or a range of addresses Select the subsystem you just created and setup

NOTE: IBM Support recommended that you use 255.255.255.255 for the subnet. Even if you think you know the subnet you may want to use what they have recommended. It converts the IP to HEX and they have found that using 255.255.255.255 for the subnet leads to less complications later. You may want to try it both ways if you have time.

Click OK on each of the screens to save your changes and exit iSeries Navigator.

STRHOSTSVR *DATABASE
NOTE: At this point the as-data job will start filtering the traffic and send the ODBC traffic you specified to the right subsystem. You can check using NETSTAT and by looking at the active jobs in the new subsystem.
To back-out changes:
From iSeries Navigator
Remove the selection from above, then end the ODBC subsystem.
The jobs will then run the default QUSRWRK subsystem.
You can use the same logic for any of the iSeries Access Servers Central, Data Queue, File, Net Print, Remote Command, Sign on and Server Mapper.

This was first published in February 2007

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

-ADS BY GOOGLE

SearchEnterpriseLinux

SearchDataCenter

Close