Under Repeatable Read (RR), all page and row locks are held as the cursor moves through the rows. Locks are held even for non-qualifying rows, and are not released until the next commit point. This effectively locks out all other application processes from accessing those pages or rows.
If RR is specified and at bind time the optimizer does not find a usable index for a matching index scan and LOCKMAX of 0 is specified when the tablespace is created, the optimizer chooses a table or tablespace lock and issues +806 SQLCODE and message DSNX103I. This lets you know that a table or tablespace lock will be used to avoid accumulating a lock on every page or row for a tablespace scan or non-matching index scan at run time.
DB2 takes lock on all the pages and releases only when transaction is committed.
This isolation level is the default.
This provides more integrity and less concurrency.