ODBC Gateway



Requirements

This section contains requirements of the ODBC Gateway.

The DataDirect® Connect for ODBC 5.0 drivers:

 

on the same host as the ODBC Gateway

on the same host as the StyleSet Editor

 

   
  Note   Red Hat Linux Advanced Server V2.1 requires the DataDirect® Connect for ODBC 4.2 drivers
   

 


Notes and Tips

Using the StyleSet Editor with ODBC Gateway

 

You should use the StyleSet Editor with the ODBC Gateway on the Master Administration Server (due to the dependency on Verity Business Console which is installed on the Master Administration Server). If you want to use StyleSet Editor on an Administration Server, you must edit the installDir/appserver/webapps/verity_dashboard/WEB-INF/web.xml file to reference the verity_bconsole parameter on the Master Administration Server.

Change this section:

<context-param>
<param-name>VerityKnowledgeWorkerAppUrl</param-name>
<param-value>/verity_bconsole</param-value>
</context-param>

to:

<context-param>
<param-name>VerityKnowledgeWorkerAppUrl</param-name>
<param-value>http://masteradminhostname:appserverport/verity_bconsole</param-value>
</context-param>

where masteradminhostname:appserverport depends on your installation.

Use System DSNs Rather Than User DSNs

 

By default, K2 services are run as the local system account on Windows. User DSNs are therefore not visible in the StyleSet Editor. You should use System DSNs whenver possible so that they are always visible regardless of what account the K2 services are run as.

Remove any ODBC DSNs Used by the ODBC Gateway Before Uninstalling the Verity ODBC Drivers

 

Before you uninstall the Verity ODBC Drivers, you should remove any DSNs used by the ODBC Gateway.

Creating a User with an Empty Password for the ODBC Gateway

 

To create a credentials file with a super user or anonymous user with an empty password, you must use the Verity savecred command-line tool as follows:

savecred -f cred.dat
-t 0x4
-c user:usr1 -c password:
-c repository:DBMS:mydsn:0x0dbc0000:0x0dbc:0

where the values for usr1 and mydsn will differ depending on your needs. The above command must be issued as a single, continuous command.

Connecting to DB2 Databases with DataDirect’s DB2 Wire Protocol Driver

 

In order to connect to DB2 databases using DataDirect's DB2 Wire Protocol Driver, the Data Source Name (DSN) must be bound. The binding process must be performed once for each database that you connect to, on each host from which you connect.

On Windows: In the Bind tab of the DSN created with DataDirect's DB2 Wire Protocol Driver, click "Create Package".

On UNIX: Type:

installdir/k2/platform/odbc/lib/bind20 <DSN>

If prompted, type a username and password.

Indexing file-by-name Columns

 

If the ODBC Gateway cannot open a file specified in a file-by-name column, you will see a warning. The rest of the row will be indexed normally.


Known Problems

FBN Column Cannot be First Token When Path is Invalid

 

If a file-by-name (FBN) column is the first field token passed to VDK, and the path is invalid, the entire row is skipped as bad and a badkey error is generated. An FBN field can have an invalid path and the rest of the row will be indexed only if the FBN field is not the first one passed to VDK. (99408)

Collection Update Via Event Tables and Triggers Does Not Pick Up Deleted Documents

 

When using event tables or triggers to determine collection updates, collections are updated when documents are inserted or updated, but not when documents are deleted from the database tables. (101743)

VDK Summary Population When Filtering n-text Column Fields

 

To extract VDK summaries for n-text columns using style.zon as a filter in style.dft , you must modify style.dft as follows:

field: myNtext1
/filter="zone -html autocharmap"

or alternatively use the universal filter as follows:

field: myNtext1
/filter=universal

(97418)

Trace Statements in odbc.ini Should All Be Either Enabled or Disabled

 

Problems can occur for K2 Server if trace statements in odbc.ini are not all either enabled or disabled. (100498)

DSNs Do Not Appear in StyleSet Editor if Not Declared in [ODBC Data Sources] Section of odbc.ini

 

When you define a DSN in odbc.ini, you must also add it under the [ODBC Data Sources] section at the top of the odbc.ini file for it to appear in the StyleSet Editor. (101049)

Invalid Column Names in V6.0 Collections Will Generate Errors

 

If you have invalid column names in a collection created with the ODBC Gateway, you should remove them from the style files for the collection to avoid generating errors. (90628)

Limitations of Data Direct Wire Protocol Driver for DB2

 

The Data Direct Wire Protocol Driver for DB2 has the following limitations:

Supports a maximum of 32K for the CLOB data type

Does not support time and timestamp values of 24:00:00 and 9999-12-31-24.00.00.000000

Workaround:

The workaround is to use the IBM DB2 ODBC Driver. (77859, 79112)

Must Specify Event Tables When Running Vspider in Persist Mode

 

When you run vspider in persist mode and you index with the ODBC Gateway, you must include event tables in your starting point configuration. Failure to do so will cause duplicate documents to be indexed. (85646)

Indexing Tables from Remote Oracle Databases

 

In order to index tables from remote Oracle databases, you must specify the following in the sqlnet.ora file:

SQLNET.AUTHENTICATION_SERVICES = (NONE)

The default value is (NTS). (76443)

May Encounter Problems with Oracle Client Libraries V8.1.7.x

 

If you are using Oracle V8.1.7.x client libraries, you may encounter intermittent problems under heavy database client access load. The underlying problem has been fixed with the Oracle9i Release 2 (9.2.0.1.0) client libraries.

 

   
  Note   This issue is with the client libraries. There is no need to upgrade the Oracle database server.
   

 

(75433)

Columns of Type NCHAR and NVARCHAR2 Cannot Be Used as Primary Keys

 

Oracle database columns of type NCHAR and NVARCHAR2 cannot be used as gateway primary keys. (72245)

VdkVgwKey Fields cannot end with valid file extensions

 

When VdkVgwKey fields end with file extensions, you must use the vgwkeyterm option to modify the VdkVgwKey field value.

BLOB, CLOB, Multi and File By Name Fields Do Not Get Indexed

 

If the BLOB, CLOB, Multi or File By Name columns specified in the style.dft file do not have an associated filter in the configuration, the content of those columns will not be indexed.

All variable-width ODBC Gateway fields must use a document filter in order to be indexed. The following ODBC column types have to include the line
/filter="universal" in the style.dft file:

Database column defined as file by name

Database column defined as multi

Database column is defined as STREAM or BLOB in the vgwodbc.cfg file

Database column is a long data type in the database (such as text, ntext, blob, clob, etc)

 

   
  Note   The StyleSet Editor correctly configures these columns. If you are using a styleset in which the style.dft file does not contain the /filter="universal" line, you can open the styleset in StyleSet Editor and the correction will be made for you.
   

 

(75662)

Unable to View Field When a Database Table Column is Mapped to User Defined Field

 

If a database field has the same name as a user defined or standard VDK field, it has to be renamed (using map directive) before it is used in style.dft or vgwodbc.vgw .

 

   
  Note   The StyleSet Editor handles this situation by automatically renaming as necessary.
   

 

(69781)

Cannot Index Table if Column Name Contains a Pound Sign

 

The pound sign (“#”) is a special character in CDB type style files. For any line in these files, everything after the first “#” is ignored (including the “#”). For all column and table names in style.dft , vgwodbc.cfg , or vgwodbc.vgw, double or single quotes should be used to enclose the column and table names that have spaces or special CDB characters. (70197)

Updating Microsoft Data Access Components (MDAC)

 

If you are not using the latest version of Microsoft Data Access Components, you may encounter a Server Connection Failure with error 126 when attempting to create a styleset for a ODBC Gateway collection using the K2 Dashboard.

Workaround:

The workaround is to install the latest components from the following URL:

http://www.microsoft.com/data/download.htm

After installing the components, reboot the machine. Confirm that you are using the latest version of MDAC (V2.6 or later). (74382)

Unable to View Word and Excel Documents in Secure ODBC Collection as view:Direct

 

Trying to view documents in a secure ODBC collection using with view:Direct sample template generates a streaming error for Word and Excel documents.

This is a known bug in Internet Explorer. The problem is the session information on the Web server is lost when viewing Word or Excel documents on the ASP page because these documents are actually streamed twice. The second time the document is streamed, session information is lost (including the valid ticket) and the security check fails for this user. (74413)

If configured database column are named 'action', 'status', or 'stamp', they must be aliased in a case where event tables are used.

 

Event tables are required to have these three columns for gateway's event management and primary keys, which are included in the event table, may not have the same names.

Problem with fetching CLOB data from Oracle databases is a known issue in Oracle 8.1.7.0 and older versions.

 

It is a documented bug (Oracle Bug 1130746) and is fixed in 8.1.7 patches (1 and higher) and Oracle9i. Oracle8i client 8.1.7.0 does not support CLOB data types. In order to stream and index CLOB data, users must patch their Oracle client and server (ideally to 8.1.7.4) or upgrade to Oracle9i. Also, Oracle's native ODBC driver shipped with Oracle 8.1.7 clients hangs on CLOB data. It is recommended to use DataDirect's packaged drivers when possible.

DB2 users accessing databases (with Verity ODBC drivers) need dba privileges to see database objects in schemas other than their own.

 

For example, usr1 can access database objects in usr1.* but not in usr2.*. If usr1 is granted dba privileges, all objects in usr2 schema will become accessible.