Do IBM i files have to be journaled?

Journaling is not required if the client application is using an isolation level of no-commit (NC) or uncommitted read (UR), and if the Db2® for i SQL function determines that the query data can be blocked. In that case, commitment control is not enabled, which makes journaling unnecessary.

The answer to this question is closely related to the question in When will query data be blocked for better performance?.

Examples of methods of changing isolation levels are:

  • The DB2® for Linux, UNIX, and Windows precompiler uses the ISOLATION UR parameter to specify uncommitted read.
  • The DB2 for Linux, UNIX, and Windows command line processor (CLP) uses the command DBM CHANGE SQLISL TO UR to specify uncommitted read.
  • The DB2 for Linux, UNIX, and Windows command line processor (CLP) uses the command DBM CHANGE SQLISL TO NC to specify no-commit.
  • JDBC clients set their connection property isolation level to TRANSACTION_READ_UNCOMMITTED to specify uncommitted read.