On Thu, 7 Feb 2008 02:26:52 -0600, Support, DUNNIT SYSTEMS LTD. <[EMAIL PROTECTED]> wrote:
>OK, let's take this example of DB2 stored procedures. When you >say "controlled by WLM", what does that mean? How does that work? > >I read this DB2 Magazine Q&A article: > >http://www.db2mag.com/qanda/040817.shtml > >At the end of the article, the last paragraph states: > >"When a program calls EAST.MANY_SCHEMA_PROC (for example), DB2 finds >the corresponding row in the SYSROUTINES catalog table. It tells WLM to >execute program SPLDMOD1 in application environment WLMENV1. Because >the load library PRODLIB is in a STEPLIB in the JCL for WLM environment >WLMENV1 (or in a JOBLIB or in the link list), the module SPLDMOD1 is found >and executed. The package from EAST_COLL will be used (as specified in the >CREATE PROCEDURE statement), and so tables qualified by EAST will be >accessed because the qualifier EAST is used to qualify unqualified SQL >statements in the program (also specified in the CREATE PROCEDURE >statement)." > > >My initial questions are: > >1. In this example, what is WLMENV1? Is it a constantly running address space >that gets requests for work to be done via WLM? > It is the name of the application environment. That application environment gets defined in WLM. One of the definition parameters is the procedure name. The proc name may or may not be the same as the application environment name. The standard I set for our shop (after everyone started requesting their own names) was xxxxWnnn where xxxx was the DB2 subsystem name and nnn was anything else (usually numeric). For example, DB2PW001. That allowed me to mask STC WLM rules by subsystem for the various application environments (DB2PWnnn vs DB2TWnnn service class). To answer "is it constantly running": There are other definitions besides the proc name in WLM (see the fine manual for all of them). One those definitions tells WLM how many to start - 1 per system, 1 per sysplex, or WLM controlled (no limit). When work is queued for the application environment, WLM will look to see if there is one active. If not it will start one. For definitions that are controlled by WLM (no limit), WLM will start additional ASIDs (procs, servers, whatever) if it thinks that will help. In cases where there is only 1, I think WLM will stop the application environment after it is idle for 1 hour. If there are multiple ASIDs started idle ones are stopped more aggressively (after 5 or 10 minutes). The last one still must be idle for an hour before it is stopped. I'm not positive on the timings of the above... hopefully a DB2 person will correct me if wrong. >2. Or is WLMENV1 a started task procedure or a JOB JCL member in some >library? > It can be a JCL (PROC) member if the PROC name is defined as the same name as the appl env. See above. >3. How does WLM monitor/manage/control or communicate with this WLMENV1 >application environment if WLMENV1 is something that executes independently >of WLM? > It doesn't execute independently of WLM. That is why it is called a WLM controlled application environment. :-) WLM monitors it the same way WLM monitors everything. Sampling. There is a chapter in the WLM manual on application environments. Read that. There is also a single Redbook that would be good to read. System Programmer's Guide to: Workload Manager http://www.redbooks.ibm.com/abstracts/sg246472.html?Open Mark -- Mark Zelden Sr. Software and Systems Architect - z/OS Team Lead Zurich North America / Farmers Insurance Group - ZFUS G-ITO mailto:[EMAIL PROTECTED] z/OS Systems Programming expert at http://expertanswercenter.techtarget.com/ Mark's MVS Utilities: http://home.flash.net/~mzelden/mvsutil.html ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html

