Considerations for using a library list

When you set up a library list and use it, consider this information.

  • The libraries in a library list must exist on the system. The system values QSYSLIBL and QUSRLIBL are accessed when the IBM i operating system is started. If a library in either of these values does not exist on the system, a message is sent to the system operator's message queue (QSYSOPR), the library is ignored, and the IBM i operating system is started without the library. After IBM i operating system is started, no libraries in the library list of any active job can be deleted. You cannot delete a library in your job's library list. For another job, you cannot delete a library in the library list if the QLIBLCKLVL system value is set to lock libraries in the library search list. If any library in the library list specified in the job description or in a Batch Job (BCHJOB) or Submit Job (SBMJOB) command does not exist or is not available, the job is not started.
  • The libraries in a library list must be authorized to all users who need to use them. To initialize a library list (for example, in a SBMJOB, Job (JOB), or Create Job Description (CRTJOBD) command), a user must have object operational authority for the libraries or the job is not started. A user must also have *USE authority to libraries added to the library list using the Add Library List Entry (ADDLIBLE) or Change Library List (CHGLIBL) command.
  • When a program running under an adopted user profile adds a library to the library list that the current user is not authorized to and does not remove the library from the library list before ending the program, the user keeps (*USE authority) access to the library after the program exits. This only occurs when *LIBL is specified to access the objects.
  • System performance is better when the library list is kept as short as possible.