Error: 'Profile document enumeration pool is full' when using GetProfileDocCollection
When performing a GetProfileDocCollection method (of the NotesDatabase Class) to get a collection of profile documents, the following error displays:
"Profile document enumeration pool is full."
The number of documents needed to generate the error varies depending on the amount of information in the documents and the version of Notes, but is often between 6000 and 6100 single field documents.
This problem was reported to Quality Engineering and determined to be a software limitation.
The size available for the profile document collection is limited to approximately 6000 documents as a performance constraint. If an application is designed to contain more than 6000 profile documents, the application should be re-designed to not use profile documents. The same result can be obtained by creating a form to contain the information and limiting access to the form using readers fields. Place all documents created with this form in a single view and then you can get a collection of all documents in the view.
Use the GetProfileDocument method where applicable.
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim i As Integer
For i = 1 To 6000
Set db = new NotesDatabase("<server name>", "<database name>")
Set doc = db.GetProfileDocument("ProfileDoc", Cstr(i))
The repetitive use of the GetProfileDocument method can cause memory leak issues. The memory usage is reduced by deleting the object handle to the profile document, but if you delete the object handle to the NotesDatabase object, then the memory usage is greatly reduced. For more information on this issue, refer to "GetProfileDocument Method Appears to Leak Memory; Error "...LookupHandle: Handle Not Allocated"" (#1090756).
|Messaging Applications||IBM Domino Designer||Windows|
|Messaging Applications||IBM Notes||Windows|