自動レコード ロック タイムアウト

ファイルを共有するマルチユーザー環境では、プログラムはレコード ロックを使用して個々のレコードへの同時アクセスを制御します。さらに、Fileshare では、トランザクションの中で更新するレコードについてレコード ロックを自動的に取得します。しかし、使用中のレコード ロック数が多いほど、同時にアクセスできるデータが少なくなります。そのため、1 つのプログラムが一度に確保するレコード ロック数を最小限にすることが重要です。

ある Fileshare クライアントがレコードでロックを取得した後で (明示的に指定したため、またはトランザクションの中でレコードを更新したために) 、別の Fileshare クライアントがロックされたレコードを読み込もうとした場合は、 Fileshare サーバーが、レコード ロックを確保している Fileshare クライアントによる最後の Fileshare サーバーへの要求の送信後の経過時間を調べます。この経過時間に応じて、次の処理が行われます。

デフォルトのタイムアウト時間は、60 秒です。Fileshare サーバーの構成ファイルで /t オプションを使用すると、この値を変更することができます。値、0 を指定すると自動レコード ロックのタイムアウトを無効にし、レコード ロックの解除は、アプリケーション プログラムのみで制御します。

タイムアウトしたプログラムは、次の入出力操作時に、エラー 9/125 を受け取ります。このエラーメッセージは、警告メッセージとして扱い、エラーが返された操作を繰り返す必要があります。Fileshare サーバーは、アクティブなトランザクションをロールバックし、タイムアウトしたプログラムで確保されているすべてのレコードロックを解除します。