Troubleshooting
Problem
This document contains FAQs concerning documents and folders in multiple QDOC* libraries.
Resolving The Problem
Question 1: How does the QDOC library (or multiple QDOC* libraries) work with the QDLS file system to store folders and documents?
Answer 1: The IBM System i system provides the capability to store documents and folders in a hierarchy (documents within a folder within another folder). Document library objects (DLOs) are documents and folders.
To simplify storage management, the server stores all DLOs in one or more libraries. The name of the library in the system ASP is QDOC. Each user ASP that contains DLOs has a document library called QDOCnnnn, where nnnn is the number that is assigned to the ASP. From a user perspective, DLOs are not in libraries; the server stores them in folders. You manipulate DLOs by using DLO commands and menus.
Within the Integrated File System, the QDLS (Document Library Services) file system provides DLO support.
Additional information on how the server stores and uses document library objects can be found in the IBM i InfoCenter at:
http://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/index.jsp?topic=/rzaiu/rzaiurzaiu170.htm
Question 2: I already have multiple ASPs on my iSeries. How do I know whether I have multiple QDOC* libraries? How can I view a list of the QDOC* libraries on my system?
Answer 2: On the operating system command line, type the following:
WRKOBJ OBJ(*ALL/QDOC*) OBJTYPE(*LIB)
Press the Enter key to return a list of objects similar to the following list:
Opt Object Type Library Attribute Text
QDOC *LIB QSYS PROD Document library
QDOC0002 *LIB QSYS PROD Document library
QDOC0003 *LIB QSYS PROD Document library
Question 3: How can I tell which ASP each QDOC* library is in?
Answer 3: Select Option 8=Display Description from the WRKOBJ screen (see previous question). Page down two times to view the Object ASP number and the Object ASP device. In the following display, QDOC0002 is in ASP 2 in *SYSBAS.
Display Object Description - Full Library 1 of 1 Object . . . . . . . : QDOC0002 Attribute . . . . . : PROD Library . . . . . : QSYS Owner . . . . . . . : QDOC Library ASP device . : *SYSBAS Primary group . . . : *NONE Type . . . . . . . . : *LIB Storage information: Size . . . . . . . . . . . . . . . : 53248 Offline size . . . . . . . . . . . : 0 Freed . . . . . . . . . . . . . . : NO Compressed . . . . . . . . . . . . : INELIGIBLE Object ASP number . . . . . . . . : 2 Object overflowed . . . . . . . : NO Object ASP device . . . . . . . . : *SYSBAS Journaling information: Currently journaled . . . . . . . : NO |
Question 4: How can I tell which documents and folders are in any of the QDOC* libraries?
Answer 4: Complete the following steps (the QDOC0002 library is used in the example below). This QDOC0002 library contains only 5 objects, 3 folders, and 2 documents. Your results may include many more objects.
Step 1: On the operating system command line, type the following:
DSPLIB LIB(QDOC0002)
Press the Enter key to return the following screen. The object name in the list is the system object name that are always 10-character names made up of a nonsensical sequence of letters and numbers:
Display Library Library . . . . . . : QDOC0002 Number of objects . : 5 Type . . . . . . . . : PROD Library ASP number . : 2 Create authority . . : *SYSVAL Library ASP device . : *SYSBAS Type options, press Enter. 5=Display full attributes 8=Display service attributes Opt Object Type Attribute Size Text QKPV085532 *DOC 8192 QKPV134184 *DOC 8192 PNYM575311 *FLR 4096 QKPT243941 *FLR 4096 RBJN202745 *FLR 4096 |
Step 2: On the operating system command line, type the following:
DSPDLONAM DLO(*SYSOBJNAM) FLR(*NONE) SYSOBJNAM(QKPT243941) OBJCLS(*FLR)
Press the Enter key to return the following screen. The Document library object contains the name of the folder:
Display DLO Name System: RCHASSLH Document library object . . : DENFLD34 Folder . . . . . . . . . . : *NONE Document identifier . . . . : 2003081215243941RCHASSLH LADN timestamp . . . . . . . : 07D3080C0F182729 System object name . . . . . : QKPT243941 Object class . . . . . . . . : *FLR Auxiliary storage pool ID . : 2 Object overflowed . . . . : N |
Step 3: On the operating system command line, type the following:
WRKFLR
Press the Enter key to return a list of all folder names on your system. This list will include all of the folders in QDOC and all of the folders in QDOC0002.
Notes:
1 | There is nothing on the WRKFLR screen that indicates which QDOC* library the folder is in. |
2 | All folder names on the system must be unique. For example, if QDOC contains a folder named DENFLD34, QDOC0002 cannot also contain a folder named DENFLD34. If an attempt is made to create a second folder by this same name (even if it is in a different ASP), the following message is issued: CPF8A85 - Name already exists for folder DENFLD34 or document *N in folder path *NONE. |
Question 5: According to iSeries documentation, the maximum number of documents and folders (DLOs) allowed in a user ASP is 349,000, and the maximum number of documents allowed in a folder is 65,510. I am approaching those limits. I have multiple user ASPs on my iSeries system, but only ASP 1 contains a QDOC* library. How can I create a QDOC* library in ASP2?
Answer 5: This subject is discussed in Chapter 19, Working with Auxiliary Storage Pools of the V5R4 iSeries Backup and Recovery manual located online at:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/books/sc415304.pdf
The manual states that when the first folder is created in an ASP, the system automatically creates the corresponding QDOCnnnn library if it does not already exist. Never create a QDOC library yourself (using the CRTLIB command) because the results are not predictable.
Note: Information on the operating system Maximum Limits can be found in the IBM i Availability Maximum Capacities PDFs for each currently supported OS version.
V7R1 http://pic.dhe.ibm.com/infocenter/iseries/v7r1m0/topic/rzamp/rzamp.pdf
V6R1 http://pic.dhe.ibm.com/infocenter/iseries/v6r1m0/topic/rzamp/rzamp.pdf
V5R4 http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/rzamp/rzamp.pdf
Search for file systems.
Example: I have three ASPs on my iSeries system; however, only two of them contain QDOC* libraries. Why was a QDOC library created in ASP 2 but not in ASP 3? How can I create a QDOC* library in ASP 3?
This subject is discussed in Chapter 19, Working with Auxiliary Storage Pools of the V5R4 iSeries Backup and Recovery manual located online at:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/books/sc415304.pdf
The manual states that when the first folder is created in an ASP, the system automatically creates the corresponding QDOCnnnn library if it does not already exist. Never create a QDOC library yourself (using the CRTLIB command) because the results are not predictable.
The most likely reason there is a QDOC* library in ASP 2 and none in ASP 3 is that the CRTFLR ASP(2) may have been run, a folder was created using the WRKFLR options and specified ASP 2, or restored a batch of DLOs to ASP 2.
Take one of the steps above (CRTFLR ASP(3), WRKFLR Option 1 to Create a new folder and specify Auxiliary storage pool ID 3, or restore DLOs from QDOC (in ASP 1) or QDOC002 (in ASP 2) to ASP 3). Any of these steps will create a QDOC* library in ASP 3.
Question 6: I have a QDOC* library in each user ASP on my system, and they are all approaching the maximum number of documents and folders. What steps must be taken to create a new user ASP?
Answer 6: This subject is discussed in Chapter 19, Working with Auxiliary Storage Pools of the V5R4 iSeries Backup and Recovery manual located online at:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/books/sc415304.pdf
Chapter 19, Working with Auxiliary Storage Pools, is a good overview of the subject. Follow different steps, depending on if the disks to be put into the user ASP are currently non-configured or if they must be moved from an existing user ASP to the new user ASP.
If the disks are currently non-configured, follow the steps in the section titled How to Add Disk Units to an Auxiliary Storage Pool. Then specify the desired user ASP number.
If disks must be moved from an existing user ASP to the new user ASP, follow the steps in the section titled How to Move a Disk Unit to a Different Auxiliary Storage Pool.
Question 7: I have documents and folders in two QDOC* libraries (QDOC and QDOC0002), and I would like to combine them all back into a single QDOC library. What steps need to be taken to move all of the documents and folders in QDOC0002 back into QDOC so that QDOC0002 can be delete removed from the system?:
Answer 7: A good overview of this subject is found in the section titled, Transferring Objects between Auxiliary Storage Pools in the V5R4 iSeries Backup and Recovery manual located online at:
http://publib.boulder.ibm.com/infocenter/iseries/v5r4/topic/books/sc415304.pdf
The Backup and Recovery discusses doing a folder at a time. If there happen to be a lot of folders in QDOC0002, it may be more useful to SAVDLO DLO(*ALL) FLR(*ANY) ASP(2) in place of Step 2. That will pick up everything in the ASP in one command. Carefully verify that the objects are really saved. Then, DLTDLO DLO(*SEARCH) FLR(*ANY) OWNER(*ALL) ASP(2) in place of Step 3. Step 6 becomes RSTDLO DLO(*ALL) SAVFLR(*ANY) RSTASP(1).
Notes:
1. When restoring document library objects (DLOs) from more than one auxiliary storage pool (ASP), a beginning and ending sequence number must be specified.
2. It would probably be best to first create a new folder in ASP(2) to put some documents and folders in that folder and to experiment with this smaller test structure before doing the steps described above.
3. If you understand what data you are dealing with (in ASP2), you may not care about restoring it anyway (or could at least delete any unwanted documents and folders (that you do not want to retain when you move the data to QDOC) prior to doing the SAVDLO DLO(*ALL) FLR(*ANY) ASP(2).
Historical Number
335384382
Was this topic helpful?
Document Information
Modified date:
18 December 2019
UID
nas8N1016135