Monitoring and managing tables that use expected row size

After setting an expected row size for a table, use optdiag or queries on systabstats to determine the number of forwarded rows being generated by your applications. Run reorg forwarded_rows the number of forwarded rows is high enough to affect application performance. reorg forwarded_rows uses short transactions and is nonintrusive, so you can run it while applications are active.

See Chapter 9 “Using the reorg Command,” in the System Administration Guide: Volume 2.

You can monitor forwarded rows on a per-partition basis, and run reorg forwarded rows on those partitions that have a large number of forwarded rows. See the Reference Manual: Commands.

If the application continues to generate a large number of forwarded rows, consider using sp_chgattribute to increase the expected row size for the table.

You may want to allow a certain percentage of forwarded rows. If running reorg to clear forwarded rows does not cause concurrency problems for your applications, or if you can run reorg at nonpeak times, allowing a small percentage of forwarded rows does not cause a serious performance problem.

Setting the expected row size for a table increases the amount of storage space and the number of I/Os required to read a set of rows. If the increase in the number of I/Os due to increased storage space is high, allowing rows to be forwarded and occasionally running reorg may have less overall performance impact.