@crvouga/mockingbird-service-postgres 3.6.0 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -100,6 +100,8 @@ export declare class TableData {
100
100
  schema: string;
101
101
  columns: ColumnMeta[];
102
102
  rows: Datum[][];
103
+ rowXmins: WeakMap<Datum[], number>;
104
+ slabXmins: number[] | null;
103
105
  /** Frozen columnar storage after snapshot hydrate; `rows` stays empty until materialized. */
104
106
  slab: ColumnarSlab | null;
105
107
  constraints: ConstraintMeta[];
@@ -189,6 +191,7 @@ export interface DomainData {
189
191
  shareCount?: number;
190
192
  }
191
193
  export interface FunctionData {
194
+ settings?: Record<string, string>;
192
195
  name: string;
193
196
  schema: string;
194
197
  argNames: (string | null)[];
@@ -262,6 +265,10 @@ export declare class DatabaseState {
262
265
  clock: Clock;
263
266
  changes: number;
264
267
  private oidCounter;
268
+ /** Local monotonic xid allocator; 2 denotes a row from a legacy snapshot without metadata. */
269
+ xidCounter: number;
270
+ transactionXid: number | null;
271
+ allocateXid(): number;
265
272
  inTransaction: boolean;
266
273
  /** Transaction-only events: included in rollback clones, never in exported snapshots. */
267
274
  pendingTriggers: Array<{
@@ -19,5 +19,10 @@ export declare function parseNamespaceInput(text: string): {
19
19
  } | {
20
20
  name: string;
21
21
  };
22
+ export declare function parseRelationInput(text: string): {
23
+ oid: number;
24
+ } | {
25
+ parts: string[];
26
+ };
22
27
  /** regnamespaceout: `-` for zero, the quoted schema name, or the bare number when no schema has that oid. */
23
28
  export declare function namespaceText(oid: number, name: string | null | undefined): string;
@@ -82,6 +82,7 @@ export declare function moneyText(cents: bigint): string;
82
82
  export interface OutputCtx {
83
83
  /** unquoted schema name for an oid, or null when no schema has it */
84
84
  namespaceName?(oid: number): string | null;
85
+ relationName?(oid: number): string | null;
85
86
  /** offset seconds east of UTC for rendering timestamptz at given UTC micros */
86
87
  zoneOffsetAt(utcMicros: bigint): number;
87
88
  }
@@ -93,6 +94,7 @@ export declare function datumText(t: TypeId, v: Datum, ctx: OutputCtx): string;
93
94
  export interface InputCtx {
94
95
  /** oid of the schema with exactly this name; raises 3F000 when there is none */
95
96
  namespaceOid?(name: string): number;
97
+ relationOid?(parts: string[]): number;
96
98
  /** session zone offset lookup for naive timestamptz input */
97
99
  zoneOffsetForNaive(naiveMicros: bigint): number;
98
100
  /** enum label validation: returns true when label is valid for the enum type */