isutl -p
Patch an ISAM file to another version
WSupported on Windows
|
USupported on Unix
|
|
NSupported in Synergy .NET
|
isutl -p [rev] [-qfile=patch_option] filename[ ...]
Options
rev
(optional) Revision to patch to. The default is 6 or the value of ISAMC_REV, if set. (See the Discussion for more information.)
patch_option
(optional) One or more of the following options, separated by commas:
convert | noconvert
Force large files to be converted or small files to be patched. (By default, small files will be converted and large files will be patched. A patched file can later be patched back to the original revision, whereas a file that has been converted cannot be patched back.)
fullresilient
Make an existing Revision 6 or higher ISAM file FULLRESILIENT or add FULLRESILIENT during conversion from a lower revision to Revision 6. FULLRESILIENT is the same as RESILIENT, except it also causes the data file channel to automatically flush data on a write (STORE, WRITE, or DELETE).
network_encrypt | nonetwork_encrypt
Set or unset the network encryption flag on the specified file.
resilient
Make an existing Revision 6 or higher ISAM file RESILIENT or add RESILIENT during conversion from a lower revision to Revision 6.
If you are patching to a higher version, you can also specify any of the -qfile options from isutl -r, and isutl will both perform the specified option and patch/convert the file to Revision 6. For example. if your file is Revision 4 and you specified “-p -qfile=compress,” isutl would both add compression and patch/convert the file to Rev 6. |
filename
The name of the ISAM file(s) you want to patch. The default extension is .ism.
Discussion
Isutl -p patches one ISAM file revision to another revision. By default (if rev is not specified), isutl -p patches Revision 2, 3, 4, or 5 files to Revision 6. For example, the following automatically patches all ISAM files with a .ism extension in the current directory to Revision 6:
isutl -p *.ism
If you need to support Synergy versions prior to 10, set ISAMC_REV=4. This will ensure that your ISAM files remain compatible with your pre-v10 Synergy. (When ISAMC_REV=4, isutl -p patches Revision 2 or 3 files to Revision 5, which is a Revision 2 or 3 file structure in a Revision 4 format. Then the file can be used with isutl. Note that a Revision 5 file can only be accessed by Synergy version 7.5 or higher. Revision 2 and 3 files are no longer supported.)
If rev is specified, isutl will attempt to patch the file to that revision.
If -p is specified without the -qfile=convert option, a revision-only patch (to rev or the default revision if rev is not specified) occurs. The following files are implicitly converted to the new revision:
- Files that contain 10,000 or fewer records whose record size is 4K or less.
- Files that contain 1,000 or fewer records whose record size is greater than 4K.
Any files larger than these are patched to an intermediate revision (5r6 for Revision 2, 3, or 5 files and 4r6 for Revision 4 files). An intermediate revision file occupies the same footprint as the original file, but it’s a newer representation whose header contains structural differences for Revision 6. Over time, intermediate revision files are automatically converted to Revision 6 either after being cleared or after being rebuilt using isutl -ro. Alternatively, at a time when it’s convenient, you can issue the isutl -p -qfile=convert command to convert all of the large files to Revision 6.
When -p is specified with the -qfile=network_encrypt option, a revision patch (if rev was specified) occurs first and then the network_encrypt option is applied. If rev is not specified, the file revision is not changed; only the network_encrypt option is applied.
When the -qfile=resilient (or fullresilient) option is specified, re-indexing happens automatically to ensure the file is synchronized. However, if the file is known to be valid, specifying -qfile=resilient,noconvert will suppress automatic re-indexing with the warning “File has not been synchronized; initial state of the file is unknown. Running isutl -s or -r is recommended.” Running ipar on the file will display a similar message until the file is re-indexed or resynchronized. Until then, the file will operate as if it’s fully synchronized, even if it is not.