Unconfigured Ad Widget

Collapse

Announcement

Collapse
No announcement yet.

CPC2206: Ownership of object QZSHSYSTEM in QTEMP type *USRSPC changed.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • CPC2206: Ownership of object QZSHSYSTEM in QTEMP type *USRSPC changed.

    Hi, We just upgraded to 5.2, and started receiving this messages in Qshell. The message pops up when executing the qshell system command, like in system 'call pgm01' Does anyone have a clue?

  • #2
    CPC2206: Ownership of object QZSHSYSTEM in QTEMP type *USRSPC changed.

    Hi, There are not too many things that come to mind immediately. First though, some details. The system utility uses the user space QTEMP/QZSHSYSTEM as a receiver variable when retrieving messages from the command that you ran. The API that the system utility creates the user space, then uses the "List Job Log Messages (QMHLJOBL)" API to retreive the messages from the job, then deletes it. The utility itself doesn't change authority to that user space. The QMHLJOBL API doesn't document that it changes it. I haven't seen that behavior before so we'll do a couple of questions and debug steps. 1) Does your program do authority related 'things'. Like adopting authority of another user or swapping to a different user profile than the one that issued the system call? 2) Are there any other messages coming out that might indicate what else might have happened? If not, try the -K parameter on the system utility to retain the joblogs and see if there is any second level text or other information that the utility is not showing you. Detailed messages in that joblog which may give you more of an idea what's causing the change. It could be that an iSeries system value or other feature which I'm not familiar with is causing an authority change automatically on that object. For example, WRKSYSVAL QCRTAUT shows a system value which could conceivably be related. 3) Just a piece of information for you. Its redundant to use the system utility and the CALL CL command. You can natively call any program you want with Qshell. Just execute the program directly like this: /qsys.lib/kulack.lib/myprog.pgm Alteratively, create a symbolic link somewhere in your path. You might want to use the /usr/bin directory if others on the system might use this program, otherwise, use your home directory plus "/bin", add it to your PATH, and invoke the program just like any other Qshell utility: ln -s /qsys.lib/kulack.lib/myprog.pgm /home/kulack/bin/myprog export PATH=/home/kulack/bin:$PATH myprog

    Comment

    Working...
    X