TXFS_QUERY_RM_INFORMATION 構造体 (winioctl.h)
[Microsoft では、開発者がアプリケーションのニーズを達成するために代替手段を利用することを強くお勧めします。 TxF が開発された多くのシナリオは、よりシンプルで利用しやすい手法で実現できます。 また、将来のバージョンの Microsoft Windows では TxF を使用できない場合があります。 詳細、および TxF の代替手段については、「トランザクション NTFS の使用の代替手段」を参照してください。]
リソース マネージャー (RM) に関する情報を格納します。
構文
typedef struct _TXFS_QUERY_RM_INFORMATION {
DWORD BytesRequired;
DWORDLONG TailLsn;
DWORDLONG CurrentLsn;
DWORDLONG ArchiveTailLsn;
DWORDLONG LogContainerSize;
LARGE_INTEGER HighestVirtualClock;
DWORD LogContainerCount;
DWORD LogContainerCountMax;
DWORD LogContainerCountMin;
DWORD LogGrowthIncrement;
DWORD LogAutoShrinkPercentage;
DWORD Flags;
WORD LoggingMode;
WORD Reserved;
DWORD RmState;
DWORDLONG LogCapacity;
DWORDLONG LogFree;
DWORDLONG TopsSize;
DWORDLONG TopsUsed;
DWORDLONG TransactionCount;
DWORDLONG OnePCCount;
DWORDLONG TwoPCCount;
DWORDLONG NumberLogFileFull;
DWORDLONG OldestTransactionAge;
GUID RMName;
DWORD TmLogPathOffset;
} TXFS_QUERY_RM_INFORMATION, *PTXFS_QUERY_RM_INFORMATION;
メンバー
BytesRequired
FSCTL_TXFS_QUERY_RM_INFORMATIONがERROR_BUFFER_TOO_SMALLを返す場合、このメンバーは、NULL 終端文字を含め、要求された情報を返すために必要な最小バイト数を指定します。
TailLsn
RM で現在使用されている最も古いログ シーケンス番号 (LSN)。
CurrentLsn
ログ内の RM によって最後に使用された LSN。
ArchiveTailLsn
ログのアーカイブ末尾の LSN。
LogContainerSize
ログ コンテナーの実際のサイズ (バイト単位)。
HighestVirtualClock
ログ レコードに関連付けられている最も高いタイムスタンプ。
LogContainerCount
ログ コンテナーの数。
LogContainerCountMax
ログ コンテナーの最大数。
LogContainerCountMin
ログで許可されるコンテナーの最小数。
LogGrowthIncrement
ログが増加する量。これは、コンテナーの数またはログ サイズの割合です。使用される拡張の種類は、 Flags メンバーに設定されているフラグによって指定されます。
LogAutoShrinkPercentage
自動圧縮ポリシーがアクティブな場合、このメンバーはログ内の空き領域の最大許容量を指定します。 このメンバーが 0 の場合、自動圧縮ポリシーはアクティブではありません。
Flags
このメンバーには、次の値の 1 つ以上を指定できます。
値 | 意味 |
---|---|
|
フラグが設定されている場合、RM のログは可能な限り縮小できます。 このフラグは、 TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MAXと相互に排他的です。 |
|
LogGrowthIncrement の値の種類を示します。 このフラグが設定されている場合、 LogGrowthIncrement は多数のコンテナーです。 このフラグは、 TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_PERCENTと相互に排他的です。 |
|
LogGrowthIncrement の値の種類を示します。 このフラグが設定されている場合、 LogGrowthIncrement はパーセンテージです。 このフラグは、 TXFS_RM_FLAG_LOG_GROWTH_INCREMENT_NUM_CONTAINERSと相互に排他的です。 |
|
RM のログが境界なしで拡張できることを示します。 このフラグは、 TXFS_RM_FLAG_LOG_NO_CONTAINER_COUNT_MINと相互に排他的です。 |
|
RM リセット フラグの現在の状態を示します。 この設定を行うと、RM は次回起動時にリセットされます。 このフラグは、セカンダリ VM ではなく、既定の VM でのみ有効です。 このフラグは、 TXFS_RM_FLAG_DO_NOT_RESET_RM_AT_NEXT_STARTと相互に排他的です。 |
|
RM リセット フラグの現在の状態を示します。 この設定を行うと、RM は次回開始されるときにそれ自体をリセットしません。 このフラグは、セカンダリ VM ではなく、既定の VM でのみ有効です。 このフラグは、 TXFS_RM_FLAG_RESET_RM_AT_NEXT_STARTと相互に排他的です。 |
|
RM がシステムの可用性よりもトランザクションの一貫性を優先することを示します。 このフラグは 、TXFS_RM_FLAG_PREFER_AVAILABILITY と相互に排他的であり、システム・ボリューム上のデフォルト RM ではサポートされていません。 |
|
RM がトランザクションの一貫性よりもシステムの可用性を優先することを示します。 このフラグは 、TXFS_RM_FLAG_PREFER_CONSISTENCY と相互に排他的であり、システム・ボリューム上のデフォルト RM によって強制されます。 |
LoggingMode
現在のログ モード。
値 | 意味 |
---|---|
|
単純なログ記録が使用されます。 |
|
完全なログ記録が使用されます |
Reserved
予約済み。
RmState
RM の状態。 有効な値は次のとおりです。
値 | 意味 |
---|---|
|
RM はまだ開始されていません。 |
|
RM が開始中です。 |
|
RM はアクティブであり、トランザクションを受け入れる準備ができています。 |
|
RM がシャットダウンしています。 |
LogCapacity
ログの合計容量 (バイト単位)。
LogFree
ログの空きバイト数。
TopsSize
$Tops ファイルのサイズ (バイト単位)。
TopsUsed
使用中の$Tops ファイルの量 (バイト単位)。
TransactionCount
クエリが発行された時点のアクティブなトランザクションの数。
OnePCCount
この RM で発生した単一フェーズのコミット操作の数。
TwoPCCount
この RM で発生した 2 フェーズ・コミット操作の数。
NumberLogFileFull
この RM のログがいっぱいになった回数。
OldestTransactionAge
最も古いアクティブなトランザクションの長さ (ミリ秒単位)。
RMName
この RM の名前を示す GUID 。
TmLogPathOffset
この構造体の先頭から、TM のログへのパスを含む NULL で終わる Unicode 文字列へのオフセット。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
Header | winioctl.h (Windows.h を含む) |