• The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
Menu
  • The Four Hundred
  • Subscribe
  • Media Kit
  • Contributors
  • About Us
  • Contact
  • Admin Alert: When You Can’t Answer Record Lock Errors

    November 9, 2011 Joe Hertvik

    Recently, a client had a problem with Power i record allocation messages. When a program crashed with an RPG1218 record lock inquiry message, the system didn’t ask for a message reply. Instead, it automatically answered the message with a “D” to dump program data and end the job. The client didn’t want this to happen. He’d rather answer the message himself and retry the allocation. Here’s what happened and how it applies to all i OS shops.

    A Common Problem

    The first thing to understand is that this is a fairly common i OS situation. It isn’t magic or a system bug. By default, the operating system is configured so that in certain situations, all RPGxxxx inquiry messages (message IDs RPG0000-RPG9999) for a job are automatically answered with a D–whether you want that to happen or not.

    This situation involves your machine’s System Reply List (SRL) and the way your user jobs are configured. Here’s what happened in my RGP1218 situation, and how you can stop it from happening in your shop.

    The Basic Problem

    For this situation, the basic problem occurs when a user program crashes on a file record allocation error. This occurs when one program reads and locks a file record that another program wants to update. When this happens, the requesting program crashes and it usually sends the following RPG1218 inquiry message to the QSYSOPR message queue on your system.

    &1 &2 is unable to allocate a record in &5 (R C G S D F).
    

    This is an easy message to answer. RPG1218 typically shows up in your system operator message queue as an Inquiry message and you have the choice of entering one of six responses in reply. The entered response tells the operating system what to do in this situation. Although six valid responses are accepted, the three most common responses for an RGP1218 inquiry message are:

    • R–Retry retrieving the locked record and continue running the program. You usually use “R” after your target record is released by the holding program.
    • C–Stop processing and cancel the program.
    • D–Stop processing and dump all the job information into a spooled file printout attached to the job (what’s happening in the example).

    The drill is simple if you are able to answer an RPG1218 inquiry message. Find the program that is locking your desired record, make sure the program has finished processing the record and that it has released the record, and then reply with an “R” to restart the input operation. If the record is now free, processing will continue.

    The problem is that in our example situation, the system isn’t allowing you to issue a response to this Inquiry message. Instead, it is automatically answering the RPG1218 message with a “D”, so that the program dumps out all its program data.

    Now given that this same situation can happen on almost any iSeries, System i, or Power i partition with any RPGxxxx inquiry message , there are two relevant questions.

    1. Why does this happen?
    2. How can you stop it from happening on your system or on any other system?

    Why = System Reply List

    In this case, the problem lies with the partition’s System Reply List (SRL). The SRL is an i operating system construct that contains predefined responses for common system inquiry messages. You can view and work with your SRL by running the Work with Reply List Entries (WRKRPYLE) command.

    WRKRPYLE
    

    This command will show you a screen that looks something like this:

    The SRL contains a list of i OS message IDs, the system reply to automatically use for that particular message, and some other information that doesn’t matter in this example. If a job is configured to use the system reply list to automatically answer inquiry messages, the operating system will feed the designated reply to the job without ever sending the inquiry message to the QSYSOPR message queue. For more information on the System Reply List, see the stories referenced at the bottom of this article.

    And that’s what was happening with the RPG1218 inquiry message referenced here. By default, the system reply list has an entry for Message ID RPG0000. RPG0000 is a generic RPG system entry value that tells the operating system that if any RPGxxxx message is displayed that needs a reply, the operating system should automatically answer that message with a D, which will stop processing and dump all program information. The RPG0000 SRL entry is shipped with the OS/400, i/OS, and i operating systems.

    So if your user’s jobs are configured to use the SRL to answer their inquiry messages, when an RPG1218 message comes up telling the job the record is locked, the operating system dumps its data and ends the program that’s trying to allocate the record.

    Determining If a Job Is Using the SRL for System Messages

    To see if your user jobs are configured to use the SRL to answer inquiry messages, run the following Display Job (DSPJOB) command on one of the jobs:

    DSPJOB JOB(Job number/User ID/Job name) OPTION(*DFNA)
    

    This will show you the job’s Job Definition Attributes. Page over to the third page of this display and you’ll see a screen that looks something like this:

    If the job is set up to send inquiry messages to the QSYSOPR message, the Inquiry Message Reply parameter will be set to Required (*RQD as shown here). This means that the job is requiring you to enter a message response when an inquiry message such as an RPG1218 occurs.

    In my example, when we looked at the Job Definition Attributes configuration of one the jobs where the system is automatically answering RPG1218 allocation inquiry messages with a D, the Inquire Message Reply parameter looked like this.

    When the Inquire message reply value is set to *SYSRPYL (System Reply List), the operating system will automatically answer error inquiry messages with an appropriate value from the SRL.

    So the morale is this: When user jobs are set up to use the System Reply List to automatically answer inquiry messages, those jobs will automatically dump program data whenever an RPGxxxx inquiry message occurs. The reply comes from the default RPG0000 entry in the SRL.

    Curing the Problem . . . If You Want To

    To convert your users from using the system reply list for answering inquiry messages (*SYSRPYL) to requiring the user to enter a value for inquiry messages (*RQD), you can reconfigure your user jobs to ensure that the Inquiry Message Reply value is set to *RQD, instead of *SYSRPYL after they log on. This can be done by changing the Inquiry Message Reply parameter (INQMSGRPY) of the user’s associated job description or by ensuring this value is set correctly when the user signs on to the system.

    But there is one danger to watch out for when modifying the Inquiry Message Reply value for a user job or changing the System Reply List. There may be a reason that your user jobs are set up to use the SRL, rather than having users enter their own replies when an inquiry message occurs. Some older pieces of software rely on using the SRL to cover their own flaws. Depending on the package, the SRL may be the only thing stopping your users and Help Desk from encountering numerous inquiry messages that are easily avoided when the SRL is being used.

    So if you’re in this situation, do some research and give some thought as to whether you really want to turn off the System Reply List message answering feature. Decide if it’s the right solution for your problem.

    RELATED STORIES

    Basic i/OS Error Monitoring and Response, Part 1

    Basic i/OS Error Monitoring and Response, Part 2



                         Post this story to del.icio.us
                   Post this story to Digg
        Post this story to Slashdot

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Tags:

    Sponsored by
    DRV Tech

    Get More Out of Your IBM i

    With soaring costs, operational data is more critical than ever. IBM shops need faster, easier ways to distribute IBM applications-based data to users more efficiently, no matter where they are.

    The Problem:

    For Users, IBM Data Can Be Difficult to Get To

    IBM Applications generate reports as spooled files, originally designed to be printed. Often those reports are packed together with so much data it makes them difficult to read. Add to that hardcopy is a pain to distribute. User-friendly formats like Excel and PDF are better, offering sorting, searching, and easy portability but getting IBM reports into these formats can be tricky without the right tools.

    The Solution:

    IBM i Reports can easily be converted to easy to read and share formats like Excel and PDF and Delivered by Email

    Converting IBM i, iSeries, and AS400 reports into Excel and PDF is now a lot easier with SpoolFlex software by DRV Tech.  If you or your users are still doing this manually, think how much time is wasted dragging and reformatting to make a report readable. How much time would be saved if they were automatically formatted correctly and delivered to one or multiple recipients.

    SpoolFlex converts spooled files to Excel and PDF, automatically emailing them, and saving copies to network shared folders. SpoolFlex converts complex reports to Excel, removing unwanted headers, splitting large reports out for individual recipients, and delivering to users whether they are at the office or working from home.

    Watch our 2-minute video and see DRV’s powerful SpoolFlex software can solve your file conversion challenges.

    Watch Video

    DRV Tech

    www.drvtech.com

    866.378.3366

    Share this:

    • Reddit
    • Facebook
    • LinkedIn
    • Twitter
    • Email

    Sponsored Links

    Shield Advanced Solutions:  Access IBM i data & objects from Linux & Windows Servers using PHP
    Dan Riehl Presents:  Fall Training Sale – Discounts up to 40%! RPG IV COBOL CL Admin Security
    ProData Computer Services:  Learn how to access remote data -- RDB Connect On-Demand Webinar

    IT Jungle Store Top Book Picks

    BACK IN STOCK: Easy Steps to Internet Programming for System i: List Price, $49.95

    The iSeries Express Web Implementer's Guide: List Price, $49.95
    The iSeries Pocket Database Guide: List Price, $59
    The iSeries Pocket SQL Guide: List Price, $59
    The iSeries Pocket WebFacing Primer: List Price, $39
    Migrating to WebSphere Express for iSeries: List Price, $49
    Getting Started with WebSphere Express for iSeries: List Price, $49
    The All-Everything Operating System: List Price, $35
    The Best Joomla! Tutorial Ever!: List Price, $19.95

    Kronos Launches New InTouch Time Clock A Radical Idea For IBM i Software Pricing

    Leave a Reply Cancel reply

Volume 11, Number 34 -- November 9, 2011
THIS ISSUE SPONSORED BY:

WorksRight Software
ProData Computer Services
Twin Data Corporation

Table of Contents

  • Add Powerful Generic Processing to Your Applications
  • Meet JSON
  • Admin Alert: When You Can’t Answer Record Lock Errors

Content archive

  • The Four Hundred
  • Four Hundred Stuff
  • Four Hundred Guru

Recent Posts

  • Meet The Next Gen Of IBMers Helping To Build IBM i
  • Looks Like IBM Is Building A Linux-Like PASE For IBM i After All
  • Will Independent IBM i Clouds Survive PowerVS?
  • Now, IBM Is Jacking Up Hardware Maintenance Prices
  • IBM i PTF Guide, Volume 27, Number 24
  • Big Blue Raises IBM i License Transfer Fees, Other Prices
  • Keep The IBM i Youth Movement Going With More Training, Better Tools
  • Remain Begins Migrating DevOps Tools To VS Code
  • IBM Readies LTO-10 Tape Drives And Libraries
  • IBM i PTF Guide, Volume 27, Number 23

Subscribe

To get news from IT Jungle sent to your inbox every week, subscribe to our newsletter.

Pages

  • About Us
  • Contact
  • Contributors
  • Four Hundred Monitor
  • IBM i PTF Guide
  • Media Kit
  • Subscribe

Search

Copyright © 2025 IT Jungle