To use a DB2 database, you must set the parameterizedSelect and useSetBinaryStream properties of the /atg/dynamo/messaging/SqlJmsProvider component to false.

In order for some import scripts to work, you must also set the following in your <ATG9dir>/home/localconfig/GLOBAL.properties file:

handleRangesInMemory=true
localTransactionModeInitialization=false

Create at least three tablespaces and bufferpools: one tablespace/bufferpool with a page size of 4KB, one with a page size of 16KB, and one with a page size of 32KB. See your DB2 documentation for more information. ATG recommends that you create more than one tablespace in each size; the number will vary depending on your data.

The db2_jms_procedures_ddl.sql file contains procedures that set the msgPollBatchSize property of SqlJmsProvider. The dms_topic_flag and dms_queue_flag procedures set a fixed batch size of 5000 (unlike Oracle or MSSQL, DB2 does not compute the batch size, but uses a fixed number).

If you find that the 5000-item configuration is not effective, you can change the setting and recompile the procedures using the following statements:

db2 connect to db2_alias user schema_owner_name using password
db2 -td@ -v -ffilename

For example,

db2 -td@ -v -fdb2_jms_procedures_ddl.sql > db2_jms_procedures_ddl.log

For web-based applications such as ATG, the recommended isolation level READ_COMMITTED. On Oracle and MSSQL, non-modifying transactions are allowed to read data while another transaction commits. DB2’s treatment of this isolation level is different in two ways: first, it calls the isolation level CURSOR STABILITY, and second, it locks exclusively on a table that is being modified, preventing other transactions from reading data from those tables.

To modify DB2 so that it behaves the same way with CURSOR STABILITY that Oracle and MSSQL behave with READ COMMITTED, create the following registry entries for your database:

 
loading table of contents...