Symfoware Serverでインデックスのないテーブルに対する排他待ちについて

インデックスのないテーブルに対してINSERTを行うと、後続のSELECTが待たされてしまいます。これは正常な動作ですか?
インデックスのないテーブルに対するSELECTは全件検索になります。そのため、別のトランザクションがINSERT処理を行っていると、後続のSELECTは排他待ちになります。
ただし、独立性水準がREAD UNCOMMITTEDに設定されている場合や、SELECT文の占有モードにNO LOCKが指定されている場合は、SELECT文が資源の占有を行わないため、排他待ちは発生しません。そのかわり、コミットされていない更新データが参照できるという現象が起きます。

資源の競合が起きた場合の排他制御については、以下のマニュアルを参照してください。

  Symfoware Server V10.1.0 アプリケーション開発ガイド (共通編)
    第1章 アプリケーションの設計に必要な概念
      1.1 トランザクションと排他制御
        1.1.8 資源の競合が起きた場合の制御

なお、上記以外の製品バージョン/レベルについては、該当するマニュアル箇所を参照してください。

製品・サービス区分 Symfoware
製品・サービス情報
対象製品 Symfoware Server (Native Interface)
プラットフォーム Windows, Solaris, Linux
アンサー種別 技術サポート
このページの先頭へ