1.1

Table Of Contents
You must provide all of the directories in the disk store. If no oplog max size is specied, SQLFire uses the
system default.
Ofine compaction can take a lot of memory. If you get a java.lang.OutOfMemory error while running
this, you made need to increase your heap size. See the sqlf command help for instructions on how to do this.
Performance Benefits of Manual Compaction
You can improve performance during busy times if you disable automatic compaction and run your own manual
compaction during lighter system load or during downtimes. You could run the API call after your application
performs a large set of data operations. You could run sqlf compact-all-disk-stores every night
when system use is very low.
To follow a strategy like this, you need to set aside enough disk space to accommodate all non-compacted disk
data. You might need to increase system monitoring to make sure you do not overrun your disk space. You may
be able to run only ofine compaction. If so, you can set ALLOWFORCECOMPACTION to false and avoid storing
the information required for manual online compaction.
Directory Size Limits
If you reach the disk directory size limits during compaction:
For automatic compaction, the system logs a warning, but does not stop.
For manual compaction, the operation stops and returns a DiskAccessException to the calling process,
reporting that the system has run out of disk space.
Example Compaction Run
In this example ofine compaction run listing, the disk store compaction had nothing to do in the *_3.* les,
so they were left alone. The *_4.* les had garbage records, so the oplog from them was compacted into the
new *_5.* les.
bash-2.05$ ls -ltra backupDirectory
total 28
-rw-rw-r-- 1 jpearson users 3 Apr 7 14:56 BACKUPds1_3.drf
-rw-rw-r-- 1 jpearson users 25 Apr 7 14:56 BACKUPds1_3.crf
drwxrwxr-x 3 jpearson users 1024 Apr 7 15:02 ..
-rw-rw-r-- 1 jpearson users 7085 Apr 7 15:06 BACKUPds1.if
-rw-rw-r-- 1 jpearson users 18 Apr 7 15:07 BACKUPds1_4.drf
-rw-rw-r-- 1 jpearson users 1070 Apr 7 15:07 BACKUPds1_4.crf
drwxrwxr-x 2 jpearson users 512 Apr 7 15:07 .
bash-2.05$ sqlf validate-disk-store ds1 backupDirectory
/root: entryCount=6
/partitioned_region entryCount=1 bucketCount=10
Disk store contains 12 compactable records.
Total number of region entries in this disk store is: 7
bash-2.05$ sqlf compact-disk-store ds1 backupDirectory
Offline compaction removed 12 records.
Total number of region entries in this disk store is: 7
bash-2.05$ ls -ltra backupDirectory
total 16
-rw-rw-r-- 1 jpearson users 3 Apr 7 14:56 BACKUPds1_3.drf
-rw-rw-r-- 1 jpearson users 25 Apr 7 14:56 BACKUPds1_3.crf
drwxrwxr-x 3 jpearson users 1024 Apr 7 15:02 ..
-rw-rw-r-- 1 jpearson users 0 Apr 7 15:08 BACKUPds1_5.drf
-rw-rw-r-- 1 jpearson users 638 Apr 7 15:08 BACKUPds1_5.crf
-rw-rw-r-- 1 jpearson users 2788 Apr 7 15:08 BACKUPds1.if
91
Using Disk Stores to Persist Data