× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.





The programs under running under the MAPICS system which runs under the
DFTACTGRP.  I just changed all my programs to run under QILE and everything
is now running fine.  Did this possibly happen because of that activation
group might have been conflicting with *CALLER?

*CALLER isn't an activation group, it means "use whatever activation group my caller was using" Say you have ProgramA built with ACTGRP(QILE) and ProgramB built with ACTGRP(*CALLER). If ProgramA calls ProgramB, then ProgramB will run in QILE as well.

On the other hand, if ProgramC is compiled with DFTACTGRP(*YES) and calls ProgramB, ProgramB will run in the default activation group, since this time it's called is ProgramC, and that's what ProgramC used.

(Using this method, it's possible to have many copies of ProgramB all in memory at once, if it's called from a different activation group each time!)

In your case, I'm guessing you had an ILE service program built with ACTGRP(*CALLER) that's called from the default activation group. The problem with that is that the RCLRSC command doesn't understand service programs, and doesn't expect them to be in the default activation group, so when it cleans up everything in that actgrp, it closes the open files, unloads the *PGM objects, but doesn't unload the service program or reset it's attributes because RCLRSC is designed for OPM programs and knows nothing about service programs. So the service program remains in memory, and it remembers where the other programs and files were in memory and tries to access them next time it's called, but fails because they were unloaded.

On the other hand, you said that there wasn't a RCLRSC anywhere in the job, so maybe it's something else. I'm sure there are other ways to create this error, but they're not coming to mind at the moment.

I've always found that this sort of thing confuses the heck out of people -- and if you're one of these people, I recommend the following very simple solution: Never run ILE programs in the default activation group.


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.