Class: DatabaseValidationError
Class: DatabaseValidationError
Deliberate validation failure raised by a database mutation hook. Generated
routes answer 422 and echo only the issues naming a public column; every
other failure raised inside a hook stays an opaque server error.
Extends
Constructors
Constructor
new DatabaseValidationError(message: string, issues: readonly DatabaseValidationIssue[]): DatabaseValidationError;Parameters
| Parameter | Type | Default value |
|---|---|---|
message | string | undefined |
issues | readonly DatabaseValidationIssue[] | [] |
Returns
DatabaseValidationError
Overrides
Properties
_clientMessage?
protected readonly optional _clientMessage: string;Client-safe error message. When set, callers serializing the error to
a client (SSE, HTTP body) MUST prefer clientMessage over message
— message may contain raw upstream / SDK text including statement
fragments, internal object names, and correlation IDs.
Subclasses can set this in their constructor for a fixed sanitized
string. When unset, clientMessage defaults to a generic per-code
string (see the getter), and the raw message is kept server-side
only.
Inherited from
cause?
readonly optional cause: Error;Optional cause of the error
Inherited from
code
readonly code: "DATABASE_VALIDATION_ERROR" = "DATABASE_VALIDATION_ERROR";Error code for programmatic error handling
Overrides
context?
readonly optional context: Record<string, unknown>;Additional context for the error
Inherited from
isRetryable
readonly isRetryable: false = false;Whether this error type is generally safe to retry
Overrides
issues
readonly issues: readonly DatabaseValidationIssue[];statusCode
readonly statusCode: 422 = 422;HTTP status code suggestion (can be overridden)
Overrides
Accessors
clientMessage
Get Signature
get clientMessage(): string;Sanitized message safe to forward to clients. Override in subclasses if a more specific default is appropriate.
Returns
string
Inherited from
Methods
toJSON()
toJSON(): Record<string, unknown>;Convert error to JSON for logging/serialization. Sensitive values in context are automatically redacted.
Returns
Record<string, unknown>
Inherited from
toString()
toString(): string;Create a human-readable string representation
Returns
string