Interface: ServiceConnectOptions
Defined in: packages/core/src/services/service.ts:8
Extends
Omit<FirebirdConnectionOptions,"database">.Omit<LegacyOptionAliases,never>
Properties
| Property | Type | Description | Inherited from | Defined in |
|---|---|---|---|---|
authPlugin? | "Srp" | "Srp256" | "Legacy_Auth" | "auto" | - | PoolOptions.authPlugin | packages/core/src/api/options.ts:116 |
autoUpgradeReadOnly? | boolean | Default for TransactionOptions.autoUpgradeReadOnly: transparently upgrade a read-only transaction to read-write (commit + reopen + replay the failing statement once) when a write is attempted in it. Default false. See TransactionOptions.autoUpgradeReadOnly for the semantics. | PoolOptions.autoUpgradeReadOnly | packages/core/src/api/options.ts:156 |
blobAsText? | boolean | - | PoolOptions.blobAsText | packages/core/src/api/options.ts:118 |
blobChunkSize? | number | - | PoolOptions.blobChunkSize | packages/core/src/api/options.ts:220 |
blobReadAhead? | BlobReadAheadOption | Default lazy-blob read-ahead for queryStream (see BlobReadAheadOption). | PoolOptions.blobReadAhead | packages/core/src/api/options.ts:132 |
blobReadChunkSize? | number | - | PoolOptions.blobReadChunkSize | packages/core/src/api/options.ts:146 |
blobs? | BlobsOption | Default blob handling. - 'eager' (default): materialize during decode — text blobs (memos) arrive as strings, binary blobs as Buffers. - 'lazy': every blob column becomes a Blob handle. - 'lazy-binary': binary blobs lazy, text blobs (memos) eager — the file-export sweet spot. - 'lazy-text': text blobs lazy, binary blobs eager. - { default?, eager?: [cols], lazy?: [cols] }: per-column overrides on top of a base mode (see BlobColumnModes). | PoolOptions.blobs | packages/core/src/api/options.ts:130 |
blobWriteChunkSize? | number | - | PoolOptions.blobWriteChunkSize | packages/core/src/api/options.ts:145 |
charset? | string | Connection charset (lc_ctype). Default UTF8. | PoolOptions.charset | packages/core/src/api/options.ts:102 |
charsetNoneEncoding? | string | - | PoolOptions.charsetNoneEncoding | packages/core/src/api/options.ts:186 |
charsetOverrides? | Record<string, string> | - | PoolOptions.charsetOverrides | packages/core/src/api/options.ts:188 |
connectTimeout? | number | - | PoolOptions.connectTimeout | packages/core/src/api/options.ts:221 |
connectTimeoutMs? | number | - | PoolOptions.connectTimeoutMs | packages/core/src/api/options.ts:109 |
database? | string | - | - | packages/core/src/services/service.ts:11 |
defaultTransaction? | TransactionOptions | Baseline TransactionOptions for EVERY transaction this connection starts — explicit (startTransaction/transaction) and implicit (query/run/execute/executeBatch/queryStream/prepare/ executeScript) alike. Per-call options override individual fields; unset fields fall back to these defaults. Default {}, i.e. Firebird's classic snapshot / read-write / wait-with-no-timeout. High-concurrency example (read committed, bounded lock waits, reads stay GC-friendly, one-shot writes auto-upgrade and replay): defaultTransaction: { isolation: 'readCommitted', readOnly: true, wait: 5, autoUpgradeReadOnly: true } Exception: executeBatch always opens its implicit transaction read-write (it is DML by contract), overriding a readOnly: true default. | PoolOptions.defaultTransaction | packages/core/src/api/options.ts:174 |
encoding? | string | Compatibility alias for charset. | PoolOptions.encoding | packages/core/src/api/options.ts:104 |
fetchSize? | number | Rows requested per fetch round trip. | PoolOptions.fetchSize | packages/core/src/api/options.ts:148 |
host? | string | - | PoolOptions.host | packages/core/src/api/options.ts:81 |
lowercase_keys? | boolean | - | PoolOptions.lowercase_keys | packages/core/src/api/options.ts:218 |
lowercaseKeys? | boolean | - | PoolOptions.lowercaseKeys | packages/core/src/api/options.ts:106 |
maxBlobCacheSize? | number | Byte budget for received-but-unread inline blobs per connection (mirrors fbclient's blob cache). Overflow is silently dropped — those blobs read via the normal path. Default 10 MiB. | PoolOptions.maxBlobCacheSize | packages/core/src/api/options.ts:144 |
maxInlineBlobSize? | number | FB 5.0.2+ (protocol ≥ 19): blobs up to this size (bytes) ride INLINE with the row data — zero extra round trips for small blobs/memos. Clamped to 0–65535; 0 disables. Ignored by older servers. Default 65535. | PoolOptions.maxInlineBlobSize | packages/core/src/api/options.ts:138 |
owner? | string | null | FB6+: owner of a newly created database (createDatabase only; the attaching user must have the privilege to create databases for others, e.g. SYSDBA). Ignored on plain connect. | PoolOptions.owner | packages/core/src/api/options.ts:100 |
pageSize? | number | - | PoolOptions.pageSize | packages/core/src/api/options.ts:107 |
password? | string | - | PoolOptions.password | packages/core/src/api/options.ts:85 |
pluginName? | string | - | PoolOptions.pluginName | packages/core/src/api/options.ts:222 |
port? | number | - | PoolOptions.port | packages/core/src/api/options.ts:82 |
retryConnectionInterval? | number | - | PoolOptions.retryConnectionInterval | packages/core/src/api/options.ts:219 |
role? | string | null | - | PoolOptions.role | packages/core/src/api/options.ts:87 |
searchPath? | string | string[] | null | FB6+: initial schema search path for the session (unqualified-name resolution). Array or comma-separated string; FB6's default is PUBLIC, SYSTEM (SYSTEM is appended automatically if omitted). Pre-FB6 servers silently ignore it. | PoolOptions.searchPath | packages/core/src/api/options.ts:94 |
statementCacheSize? | number | Prepared statements kept per connection, keyed by SQL text (LRU). A cache hit makes repeat queries a single round trip. 0 disables. Default 64. | PoolOptions.statementCacheSize | packages/core/src/api/options.ts:210 |
timeZones? | "instant" | "zoned" | How TIMESTAMP/TIME WITH TIME ZONE columns decode: - 'instant' (default): JS Date — the exact UTC instant; the stored zone id is dropped. - 'zoned': ZonedDate { date, zone } — same instant plus the zone ('Europe/Lisbon' or '+02:30'), round-trippable as a parameter. Connection-level only (column readers are cached per statement). | PoolOptions.timeZones | packages/core/src/api/options.ts:184 |
transcodeAdapter? | FirebirdTranscodeAdapter | - | PoolOptions.transcodeAdapter | packages/core/src/api/options.ts:187 |
transliterations? | CharsetPage[] | Transliteration pages: pluggable charset codecs matched by name against declared column charsets, charsetNoneEncoding, and charsetOverrides values. A user page here overrides the driver's built-in codec for the same name (including Buffer-native paths); names nothing claims fall back to the built-in pages and then iconv-lite. Build single-byte pages from a 256-character table with defineSingleBytePage (exported from @fast-firebird/core/charsets). import { defineSingleBytePage } from '@fast-firebird/core/charsets'; connect({ ..., transliterations: [defineSingleBytePage('MYPAGE', table256)] }) | PoolOptions.transliterations | packages/core/src/api/options.ts:203 |
user? | string | - | PoolOptions.user | packages/core/src/api/options.ts:84 |
wireCompression? | boolean | zlib wire compression (server needs WireCompression=true). Default off. | PoolOptions.wireCompression | packages/core/src/api/options.ts:113 |
wireCrypt? | WireCryptOption | - | PoolOptions.wireCrypt | packages/core/src/api/options.ts:111 |
wireCryptPlugin? | "Arc4" | "ChaCha" | "ChaCha64" | Wire-crypt cipher: 'Arc4' (default), 'ChaCha' or 'ChaCha64' (FB4+). | PoolOptions.wireCryptPlugin | packages/core/src/api/options.ts:115 |