4D-jp 4D Japan Technical Support Team

DELAY PROCESSが発行するネットワークリクエスト

2026-07-01

クライアント/サーバー版のランゲージコンテキストは,即座に状態の変化を相手に通知せず,影響にあるコマンドが実行されるまで送信を遅延するよう,最適化が図られています。たとえば,START TRANSACTIONコマンドを実行した場合,データベースにアクセスするまではネットワークリクエストが発生しません。

DELAY PROCESSコマンドで60ティック(1秒)以上プロセスを遅延した場合,クライアントはその機会を利用してクライアント側で保留されている状態の変化や進行中のオペレーションをサーバーに伝達します。これには,サーバー管理画面に表示されるクライアント側のプロセス情報が含まれます。遅延コマンドを実行したのが新規プロセスであれば,ランゲージコンテキストを実行するためのツインプロセス(クライアントデータベースプロセス)がサーバー側に作成されます。

60ティック(1秒)よりも短時間のDELAY PROCESSコマンドでは,保留されているオペレーションの伝達が発生しません。これは仕様です。

クライアントデータベースプロセスは,一定のアイドル期間が過ぎると,リソースを節約するために消滅させられます。デフォルトのタイムアウトは20秒(Idle connections timeout)です。このタイムアウトが適用されるのはQUICレイヤーあるいはServerNetである点に留意してください。旧式ネットワークレイヤーでは,クライアント側プロセスが動作している限り,クライアントデータベースプロセスもサーバー側からなくなりません。


リンク