トランザクションに関する情報とイベント

TransactionsManagementInfo MBean は、サーバーのデータベースで実行されたトランザクションに関する情報を提供します。

これらの MBean は com.denodo.vdb.management.mbeans > TransactionsManagementInfo > データベース名 にあります。

データベースごとに、このタイプの MBean が存在し、以下の属性があります。

  • DatabaseName: Virtual DataPort データベースの名前。

  • MaxTransactions: この MBean で同時にエクスポートされたトランザクションの最大数。各トランザクションは、 Transaction<i> という形式の属性として表示されます。

  • TotalTransactions: サーバーの起動以降に実行されたトランザクションの合計数。

  • ActiveTransactions: 現在アクティブなトランザクションの数。

  • Transaction <i>: トランザクション #i に関する情報が含まれます。以下のサブプロパティが存在します。

    • Autostarted: トランザクションがユーザーによって明示的に作成されたかどうかを示します。Virtual DataPort カタログを変更するすべてのステートメントは、トランザクション内で実行する必要があります。したがって、ユーザーがトランザクションを作成しなかった場合は、Virtual DataPort 自体がトランザクションを作成します。その場合、このプロパティの値は false になります。

    • DatabaseName: トランザクションが実行される Virtual DataPort データベースの名前。

    • EndTime: トランザクションが終了した日時。

    • Identifier: トランザクション ID。

    • SessionID: トランザクションが開始されたセッションの ID。

    • StartTime: トランザクションが開始された日時。

    • State: トランザクションの終了ステータスを示します。想定される値は ROLLBACK または COMMIT です。

    • UserName: トランザクションを実行したユーザーの ID。

TransactionsManagementInfo MBean のイベントをサブスクライブすることができます。その場合、指定したデータベースでトランザクションが開始または終了するたびに、以下のデータを含む通知を受け取ります。

  • Timestamp: JMX サーバーで通知が生成された日時。

  • Type: この通知タイプは、通知がトランザクションの開始または終了のどちらを示しているかに応じて、タイプインジケーターとして文字列 startTransaction または endTransaction を取ります。

  • UserData: 複合エレメント。そのサブプロパティは、前述の Transaction<i> プロパティのサブプロパティと同じです。

  • SeqNum: この通知の ID。

  • Message: 通知がトランザクションの開始を示す場合、値は「Started the transaction」です。トランザクションの終了を示す場合、値は「Finished the transaction」です。

  • Event: 次のような値になります。

    javax.management.Notification[source=com.denodo.vdb.management.mbeans:type=TransactionsManagementInfo,databaseName=<dbname>][type=<type>][message=<msg>]
    

    <dbName> はサーバーのデータベースの名前、 <type> は通知のタイプ (startTransaction または endTransaction)、 <msg> は通知メッセージ (Started the transaction または Started the transaction) です。

  • Source: MBean 名。