Product Documentation

FairCom DB V12 Release Notes

Previous Topic

Next Topic

Superfile member open no longer fails with POPN_ERR

When c-tree Server's file open optimizations were enabled, opening a c-tree file using an "aliased" name (a symbolic or hard link or, on Windows, a network share UNC name) could fail with error 920 (on Windows) or 463 (on Unix). The logic has been enhanced to properly handle this situation: The system now maintains a list of the system file IDs of files it opens. It uses this list to determine if a file is already open (or pending open) under a different alias.

Affected Components: c-tree Server, ctquiet utility

New Configuration Options

To prevent possible errors if two connections open the same physical file using two different aliases at the same time when the c-tree Server's file open optimization enhancement is effective, the c-tree Server now maintains a list of the system file IDs of the files that it opens. This list makes it possible to determine that a file is already open, or pending open, under a different alias. The following keywords control this new system file ID list:

SYSTEM_FILE_ID_LIST YES | NO - Defaults to YES. Enables the system file ID list. Can be turned on or off at runtime when the server is in a quiesced state.

DIAGNOSTICS SYSTEM_FILE_ID_LIST - Enables logging of adds/deletes to the system file ID list to the file SYSIDHASH.FCS in the server's LOCAL_DIRECTORY directory. Can be turned on or off at runtime.

Note: The file open optimizations (OPTIMIZE_FILE_OPEN configuration option) can also be turned off at runtime when the server is in a quiesced state.

To allow an administrator to change server configuration options that can only be changed when the server is in a quiesced state, we added an option to the ctquiet utility. The -m option can be specified one or more times in a call to ctquiet. This option quiesces the server, changes the specified configuration options, and resumes normal server activity. This process avoids additional calls to the Server, which could increase the risk of ending up with an abandoned quiesced server (meaning the process that quiesced the server has failed, leaving the FairCom Server in a quiesced (quiet) state).

See the ctquiet documentation for complete utility options

Example:

C:\> ctquiet -p ADMIN -m "optimize_file_open no" -m "system_file_id_list no"

Note: The system file ID list requires the file open optimization, so if a request is made to turn on the system file ID list, we also turn on the file open optimization, and if a request is made to turn off the file open optimization, we turn off the system file ID list.

TOCIndex