| Previous | Next |
| ERROR_LOG_BLOCK_INVALID | ERROR_LOG_NO_RESTART |
ERROR_LOG_READ_MODE_INVALID
The CLFS read sequence was started with an unsupported traversal mode
ReadLogRecord supports three mutually exclusive context modes: previous-record chaining, undo-next chaining, and forward LSN order. The selected mode determines how ReadNextLogRecord advances from the current record. A value outside the defined CLFS_CONTEXT_MODE choices, or a corrupted/incorrectly marshalled value passed across an API boundary, cannot define a valid read sequence.
Log the exact eContextMode value at the ReadLogRecord call site and trace how it was produced. Do not infer a mode from application record flags or CLFS_RECORD_TYPE; those describe different concepts. Also examine interop declarations, structure packing, and enum width when the API is called through a language binding. Once a read context has been created, its traversal mode is part of that sequence; if the application needs another traversal order, terminate the context and start a new ReadLogRecord call with a valid mode.
What to inspect
- Accept only ClfsContextPrevious, ClfsContextUndoNext, or ClfsContextForward at the API boundary.
- Check native interop enum declarations and integer conversion before the call.
- Create a new read context when changing traversal strategy instead of mutating saved context state.
References
- Microsoft: ReadLogRecord and CLFS read context modes
- Microsoft: clfsw32 API reference
- Microsoft: Common Log File System functions and operation groups
Looking for a different code? Search another status or error code.
