Installing and configuring Db2 Text Search

Content Manager Enterprise Edition supports Db2® Text Search (DB2TS). DB2TS replaces Db2 Net Search Extender, which was deprecated in Db2 V10.1. Db2 V11.5 and later does not support Net Search Extender; before upgrading to Db2 11.5, you must migrate all text indexes to Db2 Text Search.

If you have been using Db2 Net Search Extender, see Migrating from Db2 Net Search Extender to Db2 Text Search.

To index the documents that are stored in Content Manager Enterprise Edition, these components need to work together:

  • Content Manager Enterprise Edition with Document Constructor. This retrieves a document from the Resource Manager, and then provides the document to the indexing services.
  • Db2 with Db2 Text Search that supports the integrated installation of a text search server, and packaging of the Db2 Accessories Suite.

Adding Db2 Text Search to Content Manager Enterprise Edition

  1. Install Db2 Text Search on the Db2 instance.

    For more information, see Installing and configuring Db2 Text Search.

    • Before enabling the database for text, you must run this command:
      db2iupdt DB2 -u userid,password -j TEXT_SEARCH

      If you do not do this, this error message might occur:

      CIE00330 Invalid value " " for parameter "serverport"
    • The installation files, configuration files, and log files are in the following locations:
      Windows
      The installation files are in <Db2 HOME>\SQLLIB\db2tss
      For example: C:\Program Files\IBM\SQLLIB\db2tss
      The configuration files and log files are in <Db2INSTPROF>\DB2\db2tss
      For example: C:\ProgramData\IBM\DB2\DB2COPY1\DB2\db2tss
      UNIX
      The installation files, configuration files, and log files are in <Db2 INSTANCE HOME>/sqllib/db2tss
      For example: /home/db2inst1/sqllib/db2tss
    • To print the configuration data, use this command:
      configTool printAll -configPath C:\ProgramData\IBM\DB2\DB2COPY1\DB2\db2tss\config
    • To display the status of the text search index, use this command:
      adminTool status -configPath C:\ProgramData\IBM\DB2\DB2COPY1\DB2\db2tss\config
  2. Stop Db2 Text Search. Use this command:
    db2ts STOP FOR TEXT
  3. Download the Db2 Accessories Suite for Db2 Text Search, and then install it. For more information, see:

    Installing Db2 Accessories Suite for Db2 Text Search

    Enabling Db2 Text Search for rich text document support

  4. If you have configured the library server database, but you have not enabled Db2 Text Search, run the following commands:
    1. Enable the database for text search:
      CALL SYSPROC.SYSTS_ENABLE('language_code', ?)

      Replace language_code with the language code that you want to use, for example: en_US

      Tip: If the command produces a message like this: <CIE99>CIE0212W Incomplete enablement of the Text Search server. Reason code = "01", follow the steps in Updating Db2 Text Search server information to complete the Db2 Text Search enablement.
    2. Check that SYSTSDEFAULTS table contains an entry for DATAPREP:ICMDCTOR:
      SELECT * FROM SYSIBMTS.SYSTSDEFAULTS
    3. If there is no entry for DATAPREP:ICMDCTOR, run the following command in the Db2 command line processor:
      INSERT INTO SYSIBMTS.SYSTSDEFAULTS VALUES('DATAPREP:ICMDCTOR', '', 1)
  5. Start Db2 Text Search. Run the following command:
    db2ts START FOR TEXT
  6. Deploy the Content Manager Document Constructor, and then make sure that it works.

    For more information, see IBM Content Manager DB2 Text Search - Error occurs when creating text indexes due to improper document constructor deployment.

  7. In the Library Server configuration, activate the Db2 Text Search engine for the Db2 database.

    For more information, see Selecting and activating text search engines.

  8. Create the index by using the System Administration client. For document indexing using rich text support, set the Format field to "INSO".

    For information about other options, see Defining Db2 Text Search options for Content Manager Enterprise Edition.

Using a stand-alone text search server

You can use Db2 Text Search on a different computer from the library server.

  1. Install and configure Db2 Text Search on the stand-alone search server: see Installing a stand-alone Db2 Text Search server.
  2. Deploy the Content Manager Document Constructor on the stand-alone search server. To do this, run the Content Manager installation program and the Configuration Manger on the stand-alone search server.

Checking the text search feature

To check that the text search functionality is working, do the following:
  1. Turn on the traces. Run these commands:
    select udftracelevel, udftracefilename from icmstsyscontrol
    update icmstsyscontrol set udftracelevel=7

    Make a note of the file identified by udftracefilename; you will need it later.

  2. Find out the name of the text search event log view. Run this command:
    select INDSCHEMA, INDNAME, EVENTVIEWSCHEMA, EVENTVIEWNAME from sysibmts.tsindexes
  3. Create an item in the itemtype that has text searched turned on, and create an item with content.
  4. Force the text index to update immediately. Run this command:
    db2ts update index indschema.indname for text connect to icmnlsdb user icmadmin using password
  5. To find the name of the text index, look in the UDFTRACEFILENAME file that was identified in step 1.
  6. Look at the event table to see if the update index completed successfully. Run this command:
    select * from eventviewschema.eventviewname

    Replace eventsviewchema and eventviewname with the values that were identified in step 2.

    The rows that are returned should indicate the update index was successful.

If any of these steps return an error, check the log files to see if you can correct the error. If you cannot correct it, contact IBM support.

Location of log files

Component Location
UDF Run this command:
select udftracefilename from cimstsyscontrol
Library server Run this command:
select tracefilename from icmsyscontrol
Constructor

The log file is called cmdctor.log.

Windows
The default location is:
C:\ProgramData\IBM\DB2DB2COPY1\Db2\db2tss\log\
UNIX
The default location is:
<Db2INSTANCE HOME>/sqllib/db2tss/log/
For example: /home/db2inst1/sqllib/db2tss/log/cmdctor.log

For a stand-alone text search server, the constructor log file is on the text search server; it is not on the Db2 server. Its path is relative to ECMTS_HOME.

Db2 Text Search
Windows
The default location is:
C:\ProgramData\IBM\DB2DB2COPY1\Db2\db2tss\log
UNIX
The default location is:
<Db2INSTANCE HOME>/sqllib/db2tss/log
For example: /home/db2inst1/sqllib/db2tss/log

For a stand-alone text search server, the Db2 Text Search log file is on the text search server; it is not on the Db2 server. Its path is relative to ECMTS_HOME.

Event table Run this command:
select eventviewschema, eventviewname from sysibmts.tsindexes

Error messages

  • ICMSERVER.log shows 'IQQR0007E The DB2_ICMNLSDB_TS393219_0000 collection cannot be' and trace0.log of Db2 Text Search shows 'The constructor [ICMDCTOR] was not found'

    See Error occurs when creating text indexes due to improper document constructor deployment.

  • The event table contains 'IQQP9021E The version of the document parser (unknown) is earlier than the expected parser version (8.3.7)'

    Install the latest redistributable package.

  • ICMSERVER.log contains 'CIE00756 Connect failed on host named "localhost" and port "50104". SQLSTATE=38H14'

    Make sure that the latest Db2 Fix Pack is installed.

See also

An example migration from Net Search Extender to Db2 Text Search