Created On:  25 October 2010

Problem:

Net Express 5.1 is installed on a 64-bit Windows system. If I develop my applications as 64-bit does this allow for larger indexed file sizes?

Resolution:

Net Express 5.1 supports the development of both 32-bit and 64-bit systems.

The 32-bit components are always installed.
The 64-bit components are only installed if the installer detects that a 64-bit OS is running.

In the case that a 64-bit system is found then the folder:
C:\\Program Files (x86)\\Micro Focus\\Net Express 5.1\\Base\\Bin\\WIN64
will be created which contains the 64-bit components and

C:\\Program Files (x86)\\Micro Focus\\Net Express 5.1\\Base\\Lib\\WIN64
will be created which contains the 64-bit version of the import libraries for linking.

In addition a 64-bit Net Express command prompt will be available and a 64-bit check box will be available on project->properties.
---------------------------------------

File handling limitations have absolutely nothing to do with 32-bit or 64-bit applications.
The same limitations apply to 64-bit as they do under 32-bit.

The file handler configuration options must be used to change the type of file to IDXFORMAT=8 if you wish to use indexed files > 32 bit limits.
The FILEMAXSIZE=8 option must also be used.


The following chart applies to both 32-bit and 64-bit applications:

Indexed File Size Limits

The following file size limits affect indexed files:

  • On Windows, the default (where IDXFORMAT=0) is IDXFORMAT 3.
  • On UNIX, the default is IDXFORMAT 1 (C-ISAM) for fixed record length files and IDXFORMAT 3 for variable record length files.

To create files of a different format, use the IDXFORMAT extfh.cfg or compiler directive setting. To convert existing files to other formats, use the Rebuild utility.

IDXFORMAT Exclusive (#) Exclusive with duplicate key compression on Shared with default locking FILEMAXSIZE set to
1 4 Gb 2 Gb 1 Gb 4 or 8
2 4 Gb 2 Gb 1 Gb 4 or 8
3 4 Gb 2 Gb 1 Gb 4 or 8
4 4 Gb 2 Gb 1 Gb 4 or 8
8 4 Gb 2 Gb 1 Gb 4
8 256 Tb 128 Tb 256 Tb 8

where:

  • (#) = either accessing files exclusively or accessing shared files with the extfh.cfg or compiler directive setting of LOCKTYPE 1 or 2. That is, file size is not affected when using LOCKTYPE 1 or 2.
  • FILEMAXSIZE is an extfh.cfg setting that defaults to 4
  • For IDXFORMAT 8 files only, if you increase the extfh.cfg setting FILEPOINTERSIZE to 8, you increase file size limits to:
    IDXFORMAT Exclusive (#) Exclusive with duplicate key compression on Shared with default locking FILEMAXSIZE set to
    8 16 Eb 8 Eb 4 Eb 8