Table of Contents

Class NcLuggageMeta

Namespace
Hi.SqliteUtils
Assembly
HiNc.dll

Internal Use Only. The Meta rows of a luggage archive (luggage.db, the NC play result recording's P6) as SqliteNcLuggageReader reads them when it opens the file: what the archive wrote when it began (the schema version, the app version, the time, the result file it belongs to by that file's creation time, the step range, the page size) and, once the copy committed, its counts and Finalized (the counts taken again by each amend that wrote, Amend(string, string, DateTime, IReadOnlyList<(int Begin, int End)>, CancellationToken, NcLuggageArchiveOptions)). A file whose copy never completed (the process died in it) has Finalized false and the counts null: a review does not read it. The times are UTC.

public sealed record NcLuggageMeta : IEquatable<NcLuggageMeta>
Inheritance
NcLuggageMeta
Implements
Inherited Members
Extension Methods

Constructors

NcLuggageMeta(int, string, DateTime, DateTime?, int, int, int, bool, DateTime?, long?, long?, long?, long?, long?, DateTime?)

Internal Use Only. The Meta rows of a luggage archive (luggage.db, the NC play result recording's P6) as SqliteNcLuggageReader reads them when it opens the file: what the archive wrote when it began (the schema version, the app version, the time, the result file it belongs to by that file's creation time, the step range, the page size) and, once the copy committed, its counts and Finalized (the counts taken again by each amend that wrote, Amend(string, string, DateTime, IReadOnlyList<(int Begin, int End)>, CancellationToken, NcLuggageArchiveOptions)). A file whose copy never completed (the process died in it) has Finalized false and the counts null: a review does not read it. The times are UTC.

public NcLuggageMeta(int SchemaVersion, string AppVersion, DateTime CreatedUtc, DateTime? ResultCreatedUtc, int FirstStepIndex, int LastStepIndex, int PageSize, bool Finalized, DateTime? FinalizedUtc, long? RowCount, long? ForceRows, long? HeaderOnlyForceRows, long? EngagementRows, long? SourceBytes, DateTime? LuggageAmendedUtc)

Parameters

SchemaVersion int

The archive's schema version, the Meta copy of its user_version.

AppVersion string

The HiNc assembly version that wrote it.

CreatedUtc DateTime

When the archive began, in UTC.

ResultCreatedUtc DateTime?

The CreatedUtc of the result file the archive belongs to (its Meta), in UTC: a review compares it with the result it opened; null when the row is missing or unreadable.

FirstStepIndex int

The first step index of the copied range.

LastStepIndex int

The last step index of the copied range (inclusive).

PageSize int

The page size the file was created with.

Finalized bool

Whether the copy committed and the counts were written: the one member to key on.

FinalizedUtc DateTime?

When the copy committed, in UTC; null for a copy that never completed.

RowCount long?

The rows in the archive (copied, then counted again by an amend that wrote); null for a copy that never completed.

ForceRows long?

The rows whose force column is not NULL; null for a copy that never completed.

HeaderOnlyForceRows long?

The force rows stored as the 8-byte no-cut header; null for a copy that never completed.

EngagementRows long?

The rows whose engagement column is not NULL; null for a copy that never completed.

SourceBytes long?

The two columns' bytes over the archive's rows; null for a copy that never completed.

LuggageAmendedUtc DateTime?

When the last amend that rewrote force rows from the step cache began (Amend(string, string, DateTime, IReadOnlyList<(int Begin, int End)>, CancellationToken, NcLuggageArchiveOptions), the step-physics recompute's), in UTC; null when none did.

Properties

AppVersion

The HiNc assembly version that wrote it.

public string AppVersion { get; init; }

Property Value

string

CreatedUtc

When the archive began, in UTC.

public DateTime CreatedUtc { get; init; }

Property Value

DateTime

EngagementRows

The rows whose engagement column is not NULL; null for a copy that never completed.

public long? EngagementRows { get; init; }

Property Value

long?

Finalized

Whether the copy committed and the counts were written: the one member to key on.

public bool Finalized { get; init; }

Property Value

bool

FinalizedUtc

When the copy committed, in UTC; null for a copy that never completed.

public DateTime? FinalizedUtc { get; init; }

Property Value

DateTime?

FirstStepIndex

The first step index of the copied range.

public int FirstStepIndex { get; init; }

Property Value

int

ForceRows

The rows whose force column is not NULL; null for a copy that never completed.

public long? ForceRows { get; init; }

Property Value

long?

HeaderOnlyForceRows

The force rows stored as the 8-byte no-cut header; null for a copy that never completed.

public long? HeaderOnlyForceRows { get; init; }

Property Value

long?

LastStepIndex

The last step index of the copied range (inclusive).

public int LastStepIndex { get; init; }

Property Value

int

LuggageAmendedUtc

When the last amend that rewrote force rows from the step cache began (Amend(string, string, DateTime, IReadOnlyList<(int Begin, int End)>, CancellationToken, NcLuggageArchiveOptions), the step-physics recompute's), in UTC; null when none did.

public DateTime? LuggageAmendedUtc { get; init; }

Property Value

DateTime?

PageSize

The page size the file was created with.

public int PageSize { get; init; }

Property Value

int

ResultCreatedUtc

The CreatedUtc of the result file the archive belongs to (its Meta), in UTC: a review compares it with the result it opened; null when the row is missing or unreadable.

public DateTime? ResultCreatedUtc { get; init; }

Property Value

DateTime?

RowCount

The rows in the archive (copied, then counted again by an amend that wrote); null for a copy that never completed.

public long? RowCount { get; init; }

Property Value

long?

SchemaVersion

The archive's schema version, the Meta copy of its user_version.

public int SchemaVersion { get; init; }

Property Value

int

SourceBytes

The two columns' bytes over the archive's rows; null for a copy that never completed.

public long? SourceBytes { get; init; }

Property Value

long?