Problem:
Customer saw references to both extsm and extsmlfs in the Knowledge Base and wanted to know what the difference was between them.
Resolution:
extsm is the 'default' module; extsmlfs module was first introduced with Object COBOL Developer System. With that product Micro Focus did not make large file support the default, and so we provided a second version of the external sort module which supported large files. See the extract from the Programmer's Guide to File Handling from OCDS 4.2:
"10.1.3.1 Large Indexed Files
By default, the file handler can handle files that are up to a maximum of 2 Gigabytes in size. However, if you need to create larger indexed files, you can use the IDXFORMAT Compiler directive to create IDXFORMAT"8" files. These files comprise a single file (as opposed to the usual .idx and .dat files).
Even with IDXFORMAT"8" files, however, the COBOL run-time system currently imposes a limit on file size of 2 Gigabytes. To enable you to create large files despite this limit, a striping option is provided which, used in conjunction with IDXFORMAT"8" files allows logical files of up to 256 Gigabytes in size. These large logical files comprise up to 256 physical files (the base file and the "stripes"). (See the section File Striping in this chapter for more information.)
You can use all of the following standard file handling features of this COBOL system with IDXFORMAT"8" files:
a.. Fileshare
b.. Rebuild
c.. Callable SORT Module
d.. Mfsort command line utility
e.. Data and key compression
f.. User-defined compression routines
g.. The File Handler API (including calls from 'C' and your own file handler)
Callable Sort Module
With IDXFORMAT"8" files, you can only use the Callable SORT Module with indexed files. To use the Callable SORT module with IDXFORMAT"8" files, you need to compile your program using the Compiler directive CALLSORT"EXTSMLFS". Your program also needs to access the module:
a.. EXTSMLFS.o if you want to link your program. This module can be found
in the directory $COBDIR/src/extsm.
b.. EXTSMLFS.gnt or EXTSMLFS.int if you want you program to be dynamically
loaded. These modules can be found in the directory $COBDIR."
The default (and only) filehandler within SX supports large files, so there is no need for different versions of the filehandler/sort modules.
#AcuCobol
#ServerExpress
#COBOL
#netexpress
#RMCOBOL