List Variable and Display Variable of my custom global list not populated even though global list is


I created a custom global list and it is populated and working correctly in Dev.  In order to get it to work correctly I had to restart the Service Manager service and I am hoping to avoid this when I move it to Prod.  When I initially created the global list in Dev I tried everything I could think of to get it to work without restarting services, but was unsuccessful.  The list is configured with the 'Build List on Startup' set, and the Regen Every set to 1 00:00:00.  I set the expiration date to a date in the past and then Saved.  I ran the *aapm.server.initer, and then I logged out and back in again.  The Value List, Display List, and SM message List fields are all populated correctly, but when I use the RAD Debugger to display my List Variable or Display variable they return NULL and of course the field on my form that references this global list presents an empty drop-down.

Does anyone know of another utility I need to run, or action I need to perform to get my List and Display variables to initialize without restarting the Service Manager service?


  • never faced this.
    You can try to restart lister.
    If this does not work and If you have more than one servlet running (horizontal/vertical scaling) and you can't have any downtime you can just use the restart command with a grace interval set and restart servlet by servlet on a timeline that makes sense for you (I'd start with the inactive timer).
  • Hi Breno,

    Thanks for the suggestion, but I had no success with this.  I tried it in PreProd.  I stop and restarted Lister, but still my $G List and Display variables are not populated with anything.  Any other thoughts that would allow me to introduce this GL without restarting services?  We have a horizontally scaled environment and this involves a coordinated restart of services on all our servers, so I'd really like to avoid having to do this.


  • Hi Jas1,

    I had already repetitively done Task One in that document.  The Display List, Value list, and SM message List have always been correctly populated in the Global list, it is just the variables that are not.  So when I look at the list it all looks correct, but when I use the RAD debugger to display either of the variables it returns NULL.

    >d $
    Value is NULL

    >d $
    Value is NULL

    and the drop-down lists on my forms are obviously empty.  Only after I restart the ServiceManager service on the server do the variables start to present the correct array of values and the drop-downs present the correctly options for selection.


  • I found some old notes. I hope this will do the job so you don't have to restart SM.

    And if you want to regen all the globallist and locallist, you can run following command:

    x $L.names={};$L.filename="globallists";$L.success=rtecall("rinit", $L.success, $L.filevar, $L.filename);$L.success=rtecall("select", $L.success, $L.filevar, "true");$L.hasNext=0;while ($L.success and $L.hasNext=0) do ($L.names=$L.names {name in $L.filevar};$L.success=rtecall("next", $L.hasNext, $L.filevar));$L.void=rtecall("callrad", $L.rc, "apm.server.initer", {"names"}, {$L.names}, true, "true")

  • Jas1,

    Thanks for the reply, but this did not work either.  The variables associated with the Global List are still NULL.


  • I'm running low on ideas. One possibility is that your other global lists are huge and taking up the memory required to built the new custom global variables. You can go thru your global list records and run d recordsize($L.filed) to check the size of those global list record in bytes. Max is 64K to help you judge the size of the gl. Maybe deactivate some of the big ones and see if lack of memory is causing the new global variable from being created.

    Or list all the global variables in rad debugger via globals and use x cleanup(<name of global variable>) to remove some of the global variables. Do the manual gl rebuild and all the known tips and see if your custom global variable now appears. It will help confirm if lack of memory is the cause.

    You could log a case for this and get support to troubleshoot this further. I would have expected logging off and login on to clear the memory and create the new global variables since the display and values list were generated correctly.

  • Hi, have you tried including your new gl list name in the gl named "Startup Lists". I could just remember having the same issues when I was creating new gl list previously.

  • Hi Audrey,

    As workaround you can try:

    1.  Find other initialized Global List, for example "Callback Type";
    2.  Rename its "List Name", "List variable", "Display variable" (simply add "1" to the end of this 3 fields) and then press "Add";
    3.  Find and select this new added GL, next press "Rebuild global list" in Additional menu, then press "Save";
    4.  Be sure you have new initialized GL object - just display in RAD Debagger its "List variable" and "Display variable";
    5. After you can work with your new Global List as usual - rename its Name, List and Display Variables, parameters, Values, etc.

    This works in my SM9.52 environment. Of course, try it in your Dev first.

    Hope this helps.

  • Verified Answer

    I had a similar problem with a new global list. My coworker pointed me to this help article, maybe it will help for your situation as well.

    I copy/pasted the important bit below

    • Prior to version Service Manager 9.41, all global lists with the Build List on Startup option enabled were loaded at user login by applications, which might cause significant login delays. As of version 9.41, this functionality is optimized so that these global lists are not loaded into memory unless they are needed.
    • For a newly added global list, a restart of the Service Manager Server is required unless the name of the list variable starts with "$".

    It only applies to 9.41 but you could try renaming your list to start with "$* and see if that saves you a restart