Using reservepagegap

Commands that use large amounts of space allocate new space by allocating an extent rather than allocating single pages. The reservepagegap keyword causes these commands to leave empty pages so that subsequent page allocations occur close to the page being split or close to the page from which a row is being forwarded.

This table shows when reservepagegap is applied:

Command

Applies to data pages

Applies to index pages

Fast bcp

Yes

Fast bcp is not used if indexes exist

Slow bcp

Only for heap tables, not for tables with a clustered index

Extent allocation not performed

select into

Yes

No indexes exist on the target table

create index or alter table...constraint

Yes, for clustered indexes

Yes

reorg rebuild

Yes

Yes

alter table...lock

(For allpages-locking to data-only locking, or vice versa)

Yes

Yes