Table of Contents

Class DatabaseSchemaOutOfDateException

Namespace
MailFathom.Application.Persistence
Assembly
MailFathom.Application.dll

Indicates that the database is missing migrations the running build was compiled against.

public sealed class DatabaseSchemaOutOfDateException : MailFathomException, ISerializable
Inheritance
DatabaseSchemaOutOfDateException
Implements
Inherited Members

Remarks

This is raised rather than returned as a result because no caller above it can decide what a stale schema means. The only correct response is to stop: an instance that served traffic against a schema it does not recognize could write mail data into a shape the deletion and retention paths do not reach, and would do so silently.

The message names migration identifiers only. Those are MailFathom's own build-time names for schema versions and carry no credential, host name, or personal data.

Constructors

DatabaseSchemaOutOfDateException(string, IReadOnlyList<string>)

Initializes a new stale-schema failure for the migrations the database has not applied.

Properties

ErrorCode

Gets the stable code identifying this failure to a boundary that must report it without naming a type.

PendingMigrationIdentifiers

Gets the migrations the build defines that the database does not carry, in the order they would be applied.