How should I set the Directory Page Size in the ARDBC LDAP Configuration form?

Version 2
    Share This:

    This document contains official content from the BMC Software Knowledge Base. It is automatically updated when the knowledge article is modified.


    PRODUCT:

    Remedy AR System Server


    APPLIES TO:

    BMC Remedy AR System Server



    QUESTION:

    I would like to know how to properly set the Directory Page Size in the ARDBC LDAP Configuration form.

    I am using a vendor form to pull user data into ARSystem from Active Directories


    ANSWER:

     

    Legacy ID:KA362497

      

    resultse 354 of the 7.6.0.4 Configuration Guide says:  ARDBC-LDAP-Page-Size:   Page size in the pagedResultsControl of the ARDBC LDAP plug-in search request. This specifies the number of entries to return per page from the external directory server to the client when processing a search request containing the pagedResultsControl.
    The maximum value is 100,000. The minimum value is 100. The default value is 10,000.
    See the Integration Guide, “ARDBC LDAP plug-in,” page 136.

      

     

      

    Page 139 of the 7.6.0.4 Integration Guide says:

      

    In the Directory Page Size field, enter the number of entries to return in a single page to the client from the external directory server when a search request is processed.
    TIP: Setting the Directory Page Size to 1000 can help improve your system’s performance while you design and create vendor forms.

      

    This information does not help much with the decision on the correct setting. Often, the best setting is found through trial and error.   A larger page size helps with performance;  Up to a certain point.

      

    Also, the page size setting in Active Directories and the Max Return by GetList setting in ARSystem play a role as well.

      

    In order to help with the decision making, below are the results of a series of tests run internally at BMC.  This test was performed against an Active Directories server with 50053 users.   The AD Page Size was set using Microsoft's NTDSUTIL.

      

    Some observations about ARDBC-LDAP-Page-Size testing based on the test restuls below:

      

    1.       When I changed the value from the ARDBC-LDAP Configuration form, the change did not take effect until I restart ARServer service.  I tried simply applying the change  and I tried killing arplugin.exe.  Neither worked.  I had to restart arserver

      

    2.       The min. page size was 100.  If I set it below 100,  it used 100

      

    3.       If there is a Max-Entries set, then the number of records returned to LDAP is the next multiple of the page-size greater than the Max-Entries.  Though the number of records returned to the client is Max-Entries

      

    4.       If the Max Entries < ARBDC-LDAP-Page-Size, log reports that we are using Max Entries but if AD Page Size is smaller,  we use AD Page Size

      

    5.       If the ARDBC-LDAP-Page-Size is < AD page size (but >=100) then the ARDBC-LDAP-Page-Size is used.  If the ARDBC-LDAP-Page-Size is > AD page size then AD page size is used. Smaller wins

      

    6.       Higher effective Page Sizes are better...up to a point.  1000 is a good place to start

      

     

      

     

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    

    AD Page Size

    ARDBC-LDAP-Page-Size

    Max-Entries for GetList

    Effective Page Size

    Time

    1000

    10000

    3500

    Ldap_search(page size = 3500 max Retrieve = 3500)

    Execute - ldap_search returned 1000 entries

    total number of entries = 4000

     

    1000

    50

    3500

    ldap_search(page size = 100 max Retrieve = 3500)

    Execute - ldap_search returned 100 entries

    total number of entries = 3500

     

    1000

    100

    3500

    ldap_search(page size = 100 max Retrieve = 3500)

    Execute - ldap_search returned 100 entries

    total number of entries = 3500

     

    1000

    150

    3500

    ldap_search(page size = 150 max Retrieve = 3500)

    ldap_search returned 150 entries

    total number of entries = 3600

     

    1000

    345

    3500

    ldap_search(page size = 345 max Retrieve = 3500)

    ldap_search returned 345 entries

    total number of entries = 3795

    11:52:54.4070

    11:52:56.7160

    2 seconds

    1000

    20000

    3500

    ldap_search(page size = 3500 max Retrieve = 3500)

    ldap_search returned 1000 entries

    total number of entries = 4000

     

    1000

    51

    3500

    ldap_search(page size = 100 max Retrieve = 3500)

    ldap_search returned 100 entries

    total number of entries = 3500

     

    1000

    101

    3500

    ldap_search(page size = 101 max Retrieve = 3500)

    ldap_search returned 101 entries

    total number of entries = 3535

    11:58:30.1380

    11:59:23.5540

    57 seconds

    1000

    50

    0

    ldap_search(page size = 100 max Retrieve = 0)

    ldap_search returned 100 entries

    total number of entries = 50053

     

    1000

    100

    0

    ldap_search(page size = 100 max Retrieve = 0)

    ldap_search returned 100 entries

    total number of entries = 50053

     

    1000

    101

    0

    ldap_search(page size = 101 max Retrieve = 0)

    ldap_search returned 101 entries

    total number of entries = 50053

     

    1000

    10000

    0

    ldap_search(page size = 10000 max Retrieve = 0)

    ldap_search returned 1000 entries

    total number of entries = 50053

    12:05:16.2690

    12:05:36.6520

    20 seconds

    1000

    20000

    0

    ldap_search(page size = 20000 max Retrieve = 0)

    ldap_search returned 1000 entries

    total number of entries = 50053

    11:54:19.5050

    11:54:38.4550

    19 seconds

    1000

    1000

    0

    ldap_search(page size = 1000 max Retrieve = 0)

    ldap_search returned 1000 entries

    total number of entries = 50053

    12:03:04.6630

    12:03:22.9130

    18 seconds

    150

    50

    0

    ldap_search(page size = 100 max Retrieve = 0)

    ldap_search returned 100 entries

    Execute - total number of entries = 50053

    14:02:05.4320

    14:03:01.1910

    56 seconds

    150

    100

    0

    ldap_search(page size = 100 max Retrieve = 0)

    ldap_search returned 100 entries

    total number of entries = 50053

    14:04:33.0250

    14:05:30.0680

    57 seconds

    150

    1000

    0

    ldap_search(page size = 1000 max Retrieve = 0)

    ldap_search returned 150 entries

    total number of entries = 50053

    14:09:51.2620

    14:10:40.3680

    49 seconds

    150

    10000

     

    ldap_search(page size = 10000 max Retrieve = 0)

    ldap_search returned 150 entries

    total number of entries = 50053

    14:14:35.2550

    14:15:17.4110

    42 seconds

    150

    100

    3500

    ldap_search(page size = 100 max Retrieve = 3500)

    ldap_search returned 100 entries

    total number of entries = 3500

    14:16:42.6820

    14:16:48.5830

    6 seconds

    150

    345

    3500

    ldap_search(page size = 345 max Retrieve = 3500)

    ldap_search returned 150 entries

    total number of entries = 3600

     

    14:45:42.3270

    14:45:45.8950

    3 seconds

    150

    1000

    3500

    ldap_search(page size = 1000 max Retrieve = 3500)

    ldap_search returned 150 entries

    total number of entries = 3600

    14:47:16.3770

    14:47:19.6990

    3 seconds

    150

    10000

    3500

    ldap_search(page size = 3500 max Retrieve = 3500)

    ldap_search returned 150 entries

    total number of entries = 3600

    14:48:41.4500

    14:48:44.6710

    3 seconds

     

     

     

     

     

      

     

      

     

      

     

      

     

     


    Article Number:

    000031770


    Article Type:

    FAQ/Procedural



      Looking for additional information?    Search BMC Support  or  Browse Knowledge Articles