Implement checkpoint modes with docs/tests and reorganize project file layout
This commit is contained in:
21
README.md
21
README.md
@@ -104,6 +104,27 @@ Operational procedures, diagnostics, and escalation are documented in:
|
||||
- [`docs/runbook.md`](docs/runbook.md)
|
||||
- [`docs/troubleshooting.md`](docs/troubleshooting.md)
|
||||
|
||||
## Checkpoint Modes
|
||||
|
||||
`DocumentDbContext` and `StorageEngine` support explicit checkpoint modes via `CheckpointMode`:
|
||||
|
||||
- `Passive`: non-blocking; skips if checkpoint lock is contended.
|
||||
- `Full`: applies committed WAL pages and appends a checkpoint marker, without truncating WAL.
|
||||
- `Truncate`: applies committed WAL pages and truncates WAL.
|
||||
- `Restart`: truncate + WAL writer restart.
|
||||
|
||||
Example:
|
||||
|
||||
```csharp
|
||||
using ZB.MOM.WW.CBDD.Core.Transactions;
|
||||
|
||||
var result = db.Checkpoint(CheckpointMode.Full);
|
||||
if (!result.Executed)
|
||||
{
|
||||
// passive checkpoint can be skipped under contention
|
||||
}
|
||||
```
|
||||
|
||||
## Security And Compliance Posture
|
||||
|
||||
- CBDD relies on host and process-level access controls.
|
||||
|
||||
Reference in New Issue
Block a user