[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;
Members
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 つ以上を指定できます。
| 価値 | Meaning |
|---|---|
|
フラグが設定されている場合、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
現在のログ モード。
| 価値 | Meaning |
|---|---|
|
単純なログ記録が使用されます。 |
|
完全なログ記録が使用されます |
Reserved
予約済み。
RmState
RM の状態。 有効な値は次のとおりです。
| 価値 | Meaning |
|---|---|
|
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 文字列へのオフセット。
Requirements
| Requirement | 価値 |
|---|---|
| サポートされる最小クライアント | Windows Vista [デスクトップ アプリのみ] |
| サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリのみ] |
| Header | winioctl.h (Windows.h を含む) |