Configure the FILLFACTOR value

Procedure

  1. Check if FILLFACTOR is already configured for the attribute.
    Before updating the attribute schema definition, run the following command to verify that the IBMAttributetypes definition includes the FILLFACTOR keyword:
    idsldapsearch -h <hostname> -p <port> -D <admin_user> -w <password> -b cn=schema -s base objectclass=* IBMAttributetypes | grep -i fillfactor

    If the attribute already has a configured FILLFACTOR value, proceed to Step 3 to modify the existing configuration. Otherwise, continue with Step 2.

  2. Configure and add the FILLFACTOR keyword to the IBMAttributetypes definition in the schema file.
    Syntax
    IBMAttributetypes=( <OID> DBNAME( 'dbname1 ' 'dbname2' ) [other-keywords] FILLFACTOR <value> ) 
     
    Example
    IBMAttributetypes=( mobileoid DBNAME( 'mobile' 'mobile' ) ACCESS-CLASS normal LENGTH 32 FILLFACTOR 10 )

    Run the following command to apply the schema update:

    1. Create an LDIF file named schema_update.ldif to update the IBMAttributetypes definition.
      Example LDIF file
      dn: cn=schema
      changetype: modify
      replace: attributetypes
      attributetypes: ( mobileoid NAME ( 'mobile' 'mobileTelephoneNumber' ) DESC 'Identifies the entrys mobile or cellular phone number.' SYNTAX 1.3.6.1.4.1.1466.115.121.1.50 USAGE userApplications )
      -
      replace: IBMAttributetypes
      IBMAttributetypes: ( mobileoid DBNAME( 'mobile' 'mobileTelephoneNumber' ) ACCESS-CLASS normal LENGTH 32 FILLFACTOR 10 )
    2. Run the following command to apply the schema update.
      idsldapmodify -h <hostname> -p <port> -D <adminDN> -w <password> -i schema_update.ldif
  3. To modify an existing FILLFACTOR value, repeat the schema update procedure with the new value in the LDIF file and reapply the change by using idsldapmodify.

    FILLFACTOR affects only pages written after the configuration change. Run VACUUM FULL or REINDEX on the affected table or index so that existing data can benefit from the new setting.

  4. Run the following command to verify the configured FILLFACTOR value for the attribute table:
    psql -c "SELECT relname, reloptions FROM pg_class WHERE relname = 'mobile';"
    Example output
    
          relname | reloptions
    --------------+-------------------
           mobile | {fillfactor=10}
           (1 row)
    Note: The FILLFACTOR value must be 10 or greater.