Parameter:
Compact_Max_ThreadsShort description: Number of parallel threads of the
Compact task – noticeably accelerates nightly maintenance runs on multi-core systems.Profile
Parameter | Compact_Max_Threads |
Category | Performance / Memory |
Component | Server |
Available since | 12.0 |
Supported versions | 12.0, 14.0, 14.5, 14.5.1 |
GUI equivalent | notes.ini only (no GUI) |
Possible values | Integer (default 1; typically 2–8 – never > number of available cores) |
Description
The classic
Compact task is single-threaded and, with several thousand NSFs, can occupy entire nights. With Compact_Max_Threads=N, up to N databases are compacted in parallel. On modern servers with plenty of CPU cores, the runtime often halves or drops to a third.Not to be confused with
DBMT_* (Database Maintenance Tool) – the two mechanisms complement each other.Example configuration
Compact_Max_Threads=4
Notes & pitfalls
- Never set higher than the available physical cores – otherwise context-switch overhead.
- On I/O-bound storage (HDD/SAN), parallel compaction brings little benefit.
- Complements
Debug_Compact,DBMT_*, andUpdate_*parameters.
- On memory-constrained systems, scale up cautiously – each Compact instance allocates its own memory.
- The change takes effect with the next
Compactinvocation; a restart is not strictly required.