@effect/sql-mssql 4.0.0-beta.7 → 4.0.0-beta.70
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.
- package/dist/MssqlClient.d.ts +62 -15
- package/dist/MssqlClient.d.ts.map +1 -1
- package/dist/MssqlClient.js +155 -37
- package/dist/MssqlClient.js.map +1 -1
- package/dist/MssqlMigrator.d.ts +30 -5
- package/dist/MssqlMigrator.d.ts.map +1 -1
- package/dist/MssqlMigrator.js +8 -4
- package/dist/MssqlMigrator.js.map +1 -1
- package/dist/Parameter.d.ts +14 -6
- package/dist/Parameter.d.ts.map +1 -1
- package/dist/Parameter.js +28 -4
- package/dist/Parameter.js.map +1 -1
- package/dist/Procedure.d.ts +41 -16
- package/dist/Procedure.d.ts.map +1 -1
- package/dist/Procedure.js +37 -8
- package/dist/Procedure.js.map +1 -1
- package/dist/index.d.ts +90 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +90 -6
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
- package/src/MssqlClient.ts +222 -36
- package/src/MssqlMigrator.ts +30 -5
- package/src/Parameter.ts +35 -7
- package/src/Procedure.ts +60 -18
- package/src/index.ts +90 -6
package/dist/MssqlClient.d.ts
CHANGED
|
@@ -1,13 +1,39 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Microsoft SQL Server client implementation for Effect SQL, backed by the
|
|
3
|
+
* `tedious` driver.
|
|
4
|
+
*
|
|
5
|
+
* This module provides the `MssqlClient` service and layers that also satisfy
|
|
6
|
+
* the generic `SqlClient` service. It is intended for server applications,
|
|
7
|
+
* background workers, migrations, and tests that need SQL Server query
|
|
8
|
+
* compilation, Tedious parameter typing, scoped connection management,
|
|
9
|
+
* transactions, and typed stored procedure calls.
|
|
10
|
+
*
|
|
11
|
+
* Clients own a scoped pool of Tedious connections and validate startup with
|
|
12
|
+
* `SELECT 1`. Regular queries borrow a pooled connection per operation, while
|
|
13
|
+
* transactions keep one pooled connection for their lifetime and use SQL Server
|
|
14
|
+
* savepoints for nested transactions. Long-running transactions therefore
|
|
15
|
+
* reduce available pool capacity; size `maxConnections`, `connectionTTL`, and
|
|
16
|
+
* `connectTimeout` accordingly.
|
|
17
|
+
*
|
|
18
|
+
* Tedious permits one active request per connection. This client compiles
|
|
19
|
+
* statements with named `@1`-style parameters, maps Effect SQL primitive values
|
|
20
|
+
* to Tedious `DataType`s unless `param` is used, and does not implement
|
|
21
|
+
* streaming queries. Be deliberate about TLS options: `encrypt` defaults to
|
|
22
|
+
* `false` and `trustServerCertificate` defaults to `true` unless overridden.
|
|
23
|
+
* Stored procedure calls go through `callProcedure`; define input and output
|
|
24
|
+
* parameters with the `Procedure` and `Parameter` helpers so Tedious receives
|
|
25
|
+
* the correct data types and output values can be collected from `returnValue`
|
|
26
|
+
* events.
|
|
27
|
+
*
|
|
28
|
+
* @since 4.0.0
|
|
3
29
|
*/
|
|
4
30
|
import * as Config from "effect/Config";
|
|
31
|
+
import * as Context from "effect/Context";
|
|
5
32
|
import * as Duration from "effect/Duration";
|
|
6
33
|
import * as Effect from "effect/Effect";
|
|
7
34
|
import * as Layer from "effect/Layer";
|
|
8
35
|
import * as Redacted from "effect/Redacted";
|
|
9
36
|
import * as Scope from "effect/Scope";
|
|
10
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
11
37
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity";
|
|
12
38
|
import * as Client from "effect/unstable/sql/SqlClient";
|
|
13
39
|
import { SqlError } from "effect/unstable/sql/SqlError";
|
|
@@ -17,18 +43,24 @@ import type { ParameterOptions } from "tedious/lib/request.ts";
|
|
|
17
43
|
import type { Parameter } from "./Parameter.ts";
|
|
18
44
|
import type * as Procedure from "./Procedure.ts";
|
|
19
45
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
46
|
+
* Runtime type identifier used to mark `MssqlClient` values.
|
|
47
|
+
*
|
|
48
|
+
* @category type IDs
|
|
49
|
+
* @since 4.0.0
|
|
22
50
|
*/
|
|
23
51
|
export declare const TypeId: unique symbol;
|
|
24
52
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
53
|
+
* Type-level identifier used to mark `MssqlClient` values.
|
|
54
|
+
*
|
|
55
|
+
* @category type IDs
|
|
56
|
+
* @since 4.0.0
|
|
27
57
|
*/
|
|
28
58
|
export type TypeId = typeof TypeId;
|
|
29
59
|
/**
|
|
60
|
+
* Microsoft SQL Server client service, extending `SqlClient` with typed parameter fragments and stored procedure calls.
|
|
61
|
+
*
|
|
30
62
|
* @category models
|
|
31
|
-
* @since
|
|
63
|
+
* @since 4.0.0
|
|
32
64
|
*/
|
|
33
65
|
export interface MssqlClient extends Client.SqlClient {
|
|
34
66
|
readonly [TypeId]: TypeId;
|
|
@@ -37,13 +69,17 @@ export interface MssqlClient extends Client.SqlClient {
|
|
|
37
69
|
readonly call: <I extends Record<string, Parameter<any>>, O extends Record<string, Parameter<any>>, A extends object>(procedure: Procedure.ProcedureWithValues<I, O, A>) => Effect.Effect<Procedure.Procedure.Result<O, A>, SqlError>;
|
|
38
70
|
}
|
|
39
71
|
/**
|
|
72
|
+
* Context tag used to access the `MssqlClient` service.
|
|
73
|
+
*
|
|
40
74
|
* @category tags
|
|
41
|
-
* @since
|
|
75
|
+
* @since 4.0.0
|
|
42
76
|
*/
|
|
43
|
-
export declare const MssqlClient:
|
|
77
|
+
export declare const MssqlClient: Context.Service<MssqlClient, MssqlClient>;
|
|
44
78
|
/**
|
|
79
|
+
* Configuration for a Microsoft SQL Server client, including connection, authentication, pool, parameter type, span attribute, and query/result name transform options.
|
|
80
|
+
*
|
|
45
81
|
* @category models
|
|
46
|
-
* @since
|
|
82
|
+
* @since 4.0.0
|
|
47
83
|
*/
|
|
48
84
|
export interface MssqlClientConfig {
|
|
49
85
|
readonly domain?: string | undefined;
|
|
@@ -66,27 +102,38 @@ export interface MssqlClientConfig {
|
|
|
66
102
|
readonly transformQueryNames?: ((str: string) => string) | undefined;
|
|
67
103
|
}
|
|
68
104
|
/**
|
|
105
|
+
* Creates a scoped Microsoft SQL Server client backed by a connection pool, with transaction and stored procedure support. Streaming queries are not implemented.
|
|
106
|
+
*
|
|
69
107
|
* @category constructors
|
|
70
|
-
* @since
|
|
108
|
+
* @since 4.0.0
|
|
71
109
|
*/
|
|
72
110
|
export declare const make: (options: MssqlClientConfig) => Effect.Effect<MssqlClient, SqlError, Scope.Scope | Reactivity.Reactivity>;
|
|
73
111
|
/**
|
|
112
|
+
* Creates a layer from a `Config`-wrapped SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
113
|
+
*
|
|
74
114
|
* @category layers
|
|
75
|
-
* @since
|
|
115
|
+
* @since 4.0.0
|
|
76
116
|
*/
|
|
77
117
|
export declare const layerConfig: (config: Config.Wrap<MssqlClientConfig>) => Layer.Layer<Client.SqlClient | MssqlClient, Config.ConfigError | SqlError>;
|
|
78
118
|
/**
|
|
119
|
+
* Creates a layer from a concrete SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
120
|
+
*
|
|
79
121
|
* @category layers
|
|
80
|
-
* @since
|
|
122
|
+
* @since 4.0.0
|
|
81
123
|
*/
|
|
82
124
|
export declare const layer: (config: MssqlClientConfig) => Layer.Layer<Client.SqlClient | MssqlClient, never | SqlError>;
|
|
83
125
|
/**
|
|
126
|
+
* Creates the SQL Server statement compiler, using `@1`-style placeholders, bracket-escaped identifiers, and SQL Server `OUTPUT INSERTED` returning clauses.
|
|
127
|
+
*
|
|
84
128
|
* @category compiler
|
|
85
|
-
* @since
|
|
129
|
+
* @since 4.0.0
|
|
86
130
|
*/
|
|
87
131
|
export declare const makeCompiler: (transform?: (_: string) => string) => Statement.Compiler;
|
|
88
132
|
/**
|
|
89
|
-
*
|
|
133
|
+
* Default mapping from Effect SQL primitive value kinds to Tedious SQL Server parameter data types.
|
|
134
|
+
*
|
|
135
|
+
* @category configuration
|
|
136
|
+
* @since 4.0.0
|
|
90
137
|
*/
|
|
91
138
|
export declare const defaultParameterTypes: Record<Statement.PrimitiveKind, DataType>;
|
|
92
139
|
//# sourceMappingURL=MssqlClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MssqlClient.d.ts","sourceRoot":"","sources":["../src/MssqlClient.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"MssqlClient.d.ts","sourceRoot":"","sources":["../src/MssqlClient.ts"],"names":[],"mappings":"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"}
|
package/dist/MssqlClient.js
CHANGED
|
@@ -1,7 +1,34 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Microsoft SQL Server client implementation for Effect SQL, backed by the
|
|
3
|
+
* `tedious` driver.
|
|
4
|
+
*
|
|
5
|
+
* This module provides the `MssqlClient` service and layers that also satisfy
|
|
6
|
+
* the generic `SqlClient` service. It is intended for server applications,
|
|
7
|
+
* background workers, migrations, and tests that need SQL Server query
|
|
8
|
+
* compilation, Tedious parameter typing, scoped connection management,
|
|
9
|
+
* transactions, and typed stored procedure calls.
|
|
10
|
+
*
|
|
11
|
+
* Clients own a scoped pool of Tedious connections and validate startup with
|
|
12
|
+
* `SELECT 1`. Regular queries borrow a pooled connection per operation, while
|
|
13
|
+
* transactions keep one pooled connection for their lifetime and use SQL Server
|
|
14
|
+
* savepoints for nested transactions. Long-running transactions therefore
|
|
15
|
+
* reduce available pool capacity; size `maxConnections`, `connectionTTL`, and
|
|
16
|
+
* `connectTimeout` accordingly.
|
|
17
|
+
*
|
|
18
|
+
* Tedious permits one active request per connection. This client compiles
|
|
19
|
+
* statements with named `@1`-style parameters, maps Effect SQL primitive values
|
|
20
|
+
* to Tedious `DataType`s unless `param` is used, and does not implement
|
|
21
|
+
* streaming queries. Be deliberate about TLS options: `encrypt` defaults to
|
|
22
|
+
* `false` and `trustServerCertificate` defaults to `true` unless overridden.
|
|
23
|
+
* Stored procedure calls go through `callProcedure`; define input and output
|
|
24
|
+
* parameters with the `Procedure` and `Parameter` helpers so Tedious receives
|
|
25
|
+
* the correct data types and output values can be collected from `returnValue`
|
|
26
|
+
* events.
|
|
27
|
+
*
|
|
28
|
+
* @since 4.0.0
|
|
3
29
|
*/
|
|
4
30
|
import * as Config from "effect/Config";
|
|
31
|
+
import * as Context from "effect/Context";
|
|
5
32
|
import * as Duration from "effect/Duration";
|
|
6
33
|
import * as Effect from "effect/Effect";
|
|
7
34
|
import { identity } from "effect/Function";
|
|
@@ -9,31 +36,118 @@ import * as Layer from "effect/Layer";
|
|
|
9
36
|
import * as Pool from "effect/Pool";
|
|
10
37
|
import * as Redacted from "effect/Redacted";
|
|
11
38
|
import * as Scope from "effect/Scope";
|
|
12
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
13
39
|
import * as Stream from "effect/Stream";
|
|
14
40
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity";
|
|
15
41
|
import * as Client from "effect/unstable/sql/SqlClient";
|
|
16
|
-
import { SqlError } from "effect/unstable/sql/SqlError";
|
|
42
|
+
import { AuthenticationError, AuthorizationError, ConnectionError, ConstraintError, DeadlockError, LockTimeoutError, SerializationError, SqlError, SqlSyntaxError, UniqueViolation, UnknownError } from "effect/unstable/sql/SqlError";
|
|
17
43
|
import * as Statement from "effect/unstable/sql/Statement";
|
|
18
44
|
import * as Tedious from "tedious";
|
|
19
45
|
const ATTR_DB_SYSTEM_NAME = "db.system.name";
|
|
20
46
|
const ATTR_DB_NAMESPACE = "db.namespace";
|
|
21
47
|
const ATTR_SERVER_ADDRESS = "server.address";
|
|
22
48
|
const ATTR_SERVER_PORT = "server.port";
|
|
49
|
+
const mssqlNumberFromCause = cause => {
|
|
50
|
+
if (typeof cause !== "object" || cause === null || !("number" in cause)) {
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
const number = cause.number;
|
|
54
|
+
return typeof number === "number" ? number : undefined;
|
|
55
|
+
};
|
|
56
|
+
const mssqlConnectionErrorCodes = /*#__PURE__*/new Set([233, 10054]);
|
|
57
|
+
const mssqlAuthenticationErrorCodes = /*#__PURE__*/new Set([4060, 18452, 18456]);
|
|
58
|
+
const mssqlAuthorizationErrorCodes = /*#__PURE__*/new Set([229, 230, 262, 297, 300]);
|
|
59
|
+
const mssqlSyntaxErrorCodes = /*#__PURE__*/new Set([102, 207, 208, 2714]);
|
|
60
|
+
const mssqlConstraintErrorCodes = /*#__PURE__*/new Set([515, 547]);
|
|
61
|
+
const UNKNOWN_CONSTRAINT = "unknown";
|
|
62
|
+
const normalizeConstraintIdentifier = identifier => {
|
|
63
|
+
if (typeof identifier !== "string") {
|
|
64
|
+
return UNKNOWN_CONSTRAINT;
|
|
65
|
+
}
|
|
66
|
+
const trimmed = identifier.trim();
|
|
67
|
+
return trimmed.length === 0 ? UNKNOWN_CONSTRAINT : trimmed;
|
|
68
|
+
};
|
|
69
|
+
const mssqlCauseProperty = (cause, property) => {
|
|
70
|
+
if (typeof cause !== "object" || cause === null || !(property in cause)) {
|
|
71
|
+
return undefined;
|
|
72
|
+
}
|
|
73
|
+
return cause[property];
|
|
74
|
+
};
|
|
75
|
+
const mssqlUniqueViolationConstraintFromMessage = (number, message) => {
|
|
76
|
+
if (typeof message !== "string") {
|
|
77
|
+
return UNKNOWN_CONSTRAINT;
|
|
78
|
+
}
|
|
79
|
+
const match = number === 2627 ? /\bconstraint\s+'([^']*)'/i.exec(message) : /\bunique index\s+'([^']*)'/i.exec(message);
|
|
80
|
+
return match === null ? UNKNOWN_CONSTRAINT : normalizeConstraintIdentifier(match[1]);
|
|
81
|
+
};
|
|
82
|
+
const mssqlUniqueViolationConstraintFromCause = (number, cause) => {
|
|
83
|
+
const constraint = normalizeConstraintIdentifier(mssqlCauseProperty(cause, "constraint"));
|
|
84
|
+
if (constraint !== UNKNOWN_CONSTRAINT) {
|
|
85
|
+
return constraint;
|
|
86
|
+
}
|
|
87
|
+
return mssqlUniqueViolationConstraintFromMessage(number, mssqlCauseProperty(cause, "message"));
|
|
88
|
+
};
|
|
89
|
+
const classifyError = (cause, message, operation, fallback = "unknown") => {
|
|
90
|
+
const props = {
|
|
91
|
+
cause,
|
|
92
|
+
message,
|
|
93
|
+
operation
|
|
94
|
+
};
|
|
95
|
+
const number = mssqlNumberFromCause(cause);
|
|
96
|
+
if (number !== undefined) {
|
|
97
|
+
if (mssqlConnectionErrorCodes.has(number)) {
|
|
98
|
+
return new ConnectionError(props);
|
|
99
|
+
}
|
|
100
|
+
if (mssqlAuthenticationErrorCodes.has(number)) {
|
|
101
|
+
return new AuthenticationError(props);
|
|
102
|
+
}
|
|
103
|
+
if (mssqlAuthorizationErrorCodes.has(number)) {
|
|
104
|
+
return new AuthorizationError(props);
|
|
105
|
+
}
|
|
106
|
+
if (mssqlSyntaxErrorCodes.has(number)) {
|
|
107
|
+
return new SqlSyntaxError(props);
|
|
108
|
+
}
|
|
109
|
+
if (number === 2601 || number === 2627) {
|
|
110
|
+
return new UniqueViolation({
|
|
111
|
+
...props,
|
|
112
|
+
constraint: mssqlUniqueViolationConstraintFromCause(number, cause)
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
if (mssqlConstraintErrorCodes.has(number)) {
|
|
116
|
+
return new ConstraintError(props);
|
|
117
|
+
}
|
|
118
|
+
if (number === 1205) {
|
|
119
|
+
return new DeadlockError(props);
|
|
120
|
+
}
|
|
121
|
+
if (number === 3960) {
|
|
122
|
+
return new SerializationError(props);
|
|
123
|
+
}
|
|
124
|
+
if (number === 1222) {
|
|
125
|
+
return new LockTimeoutError(props);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return fallback === "connection" ? new ConnectionError(props) : new UnknownError(props);
|
|
129
|
+
};
|
|
23
130
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
131
|
+
* Runtime type identifier used to mark `MssqlClient` values.
|
|
132
|
+
*
|
|
133
|
+
* @category type IDs
|
|
134
|
+
* @since 4.0.0
|
|
26
135
|
*/
|
|
27
136
|
export const TypeId = /*#__PURE__*/Symbol.for("@effect/sql-mssql/MssqlClient");
|
|
28
137
|
/**
|
|
138
|
+
* Context tag used to access the `MssqlClient` service.
|
|
139
|
+
*
|
|
29
140
|
* @category tags
|
|
30
|
-
* @since
|
|
141
|
+
* @since 4.0.0
|
|
31
142
|
*/
|
|
32
|
-
export const MssqlClient = /*#__PURE__*/
|
|
143
|
+
export const MssqlClient = /*#__PURE__*/Context.Service("@effect/sql-mssql/MssqlClient");
|
|
33
144
|
const TransactionConnection = Client.TransactionConnection;
|
|
145
|
+
let clientIdCounter = 0;
|
|
34
146
|
/**
|
|
147
|
+
* Creates a scoped Microsoft SQL Server client backed by a connection pool, with transaction and stored procedure support. Streaming queries are not implemented.
|
|
148
|
+
*
|
|
35
149
|
* @category constructors
|
|
36
|
-
* @since
|
|
150
|
+
* @since 4.0.0
|
|
37
151
|
*/
|
|
38
152
|
export const make = options => Effect.gen(function* () {
|
|
39
153
|
const parameterTypes = options.parameterTypes ?? defaultParameterTypes;
|
|
@@ -68,8 +182,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
68
182
|
conn.connect(cause => {
|
|
69
183
|
if (cause) {
|
|
70
184
|
resume(Effect.fail(new SqlError({
|
|
71
|
-
cause,
|
|
72
|
-
message: "Failed to connect"
|
|
185
|
+
reason: classifyError(cause, "Failed to connect", "connect", "connection")
|
|
73
186
|
})));
|
|
74
187
|
} else {
|
|
75
188
|
resume(Effect.void);
|
|
@@ -80,8 +193,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
80
193
|
const req = new Tedious.Request(sql, (cause, _rowCount, result) => {
|
|
81
194
|
if (cause) {
|
|
82
195
|
resume(Effect.fail(new SqlError({
|
|
83
|
-
cause,
|
|
84
|
-
message: "Failed to execute statement"
|
|
196
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
85
197
|
})));
|
|
86
198
|
return;
|
|
87
199
|
}
|
|
@@ -113,8 +225,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
113
225
|
const req = new Tedious.Request(escape(procedure.name), (cause, _, rows) => {
|
|
114
226
|
if (cause) {
|
|
115
227
|
resume(Effect.fail(new SqlError({
|
|
116
|
-
cause,
|
|
117
|
-
message: "Failed to execute statement"
|
|
228
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
118
229
|
})));
|
|
119
230
|
} else {
|
|
120
231
|
rows = rowsToObjects(rows);
|
|
@@ -165,8 +276,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
165
276
|
conn.beginTransaction(cause => {
|
|
166
277
|
if (cause) {
|
|
167
278
|
resume(Effect.fail(new SqlError({
|
|
168
|
-
cause,
|
|
169
|
-
message: "Failed to begin transaction"
|
|
279
|
+
reason: classifyError(cause, "Failed to begin transaction", "beginTransaction")
|
|
170
280
|
})));
|
|
171
281
|
} else {
|
|
172
282
|
resume(Effect.void);
|
|
@@ -177,8 +287,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
177
287
|
conn.commitTransaction(cause => {
|
|
178
288
|
if (cause) {
|
|
179
289
|
resume(Effect.fail(new SqlError({
|
|
180
|
-
cause,
|
|
181
|
-
message: "Failed to commit transaction"
|
|
290
|
+
reason: classifyError(cause, "Failed to commit transaction", "commitTransaction")
|
|
182
291
|
})));
|
|
183
292
|
} else {
|
|
184
293
|
resume(Effect.void);
|
|
@@ -189,8 +298,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
189
298
|
conn.saveTransaction(cause => {
|
|
190
299
|
if (cause) {
|
|
191
300
|
resume(Effect.fail(new SqlError({
|
|
192
|
-
cause,
|
|
193
|
-
message: "Failed to create savepoint"
|
|
301
|
+
reason: classifyError(cause, "Failed to create savepoint", "createSavepoint")
|
|
194
302
|
})));
|
|
195
303
|
} else {
|
|
196
304
|
resume(Effect.void);
|
|
@@ -201,8 +309,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
201
309
|
conn.rollbackTransaction(cause => {
|
|
202
310
|
if (cause) {
|
|
203
311
|
resume(Effect.fail(new SqlError({
|
|
204
|
-
cause,
|
|
205
|
-
message: "Failed to rollback transaction"
|
|
312
|
+
reason: classifyError(cause, "Failed to rollback transaction", "rollbackTransaction")
|
|
206
313
|
})));
|
|
207
314
|
} else {
|
|
208
315
|
resume(Effect.void);
|
|
@@ -222,20 +329,21 @@ export const make = options => Effect.gen(function* () {
|
|
|
222
329
|
timeToLive: options.connectionTTL ?? Duration.minutes(45),
|
|
223
330
|
timeToLiveStrategy: "creation"
|
|
224
331
|
});
|
|
225
|
-
yield* Pool.get(pool).pipe(Effect.tap(connection => connection.executeUnprepared("SELECT 1", [], undefined)), Effect.mapError(({
|
|
226
|
-
cause
|
|
227
|
-
}) => new SqlError({
|
|
228
|
-
cause,
|
|
229
|
-
message: "MssqlClient: Failed to connect"
|
|
332
|
+
yield* Pool.get(pool).pipe(Effect.tap(connection => connection.executeUnprepared("SELECT 1", [], undefined)), Effect.mapError(cause => new SqlError({
|
|
333
|
+
reason: classifyError(cause, "MssqlClient: Failed to connect", "connect", "connection")
|
|
230
334
|
})), Effect.scoped, Effect.timeoutOrElse({
|
|
231
335
|
duration: options.connectTimeout ?? Duration.seconds(5),
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
336
|
+
orElse: () => Effect.fail(new SqlError({
|
|
337
|
+
reason: new ConnectionError({
|
|
338
|
+
message: "MssqlClient: Connection timeout",
|
|
339
|
+
cause: new Error("connection timeout"),
|
|
340
|
+
operation: "connect"
|
|
341
|
+
})
|
|
235
342
|
}))
|
|
236
343
|
}));
|
|
344
|
+
const transactionService = TransactionConnection(clientIdCounter++);
|
|
237
345
|
const withTransaction = Client.makeWithTransaction({
|
|
238
|
-
transactionService
|
|
346
|
+
transactionService,
|
|
239
347
|
spanAttributes,
|
|
240
348
|
acquireConnection: Effect.gen(function* () {
|
|
241
349
|
const scope = Scope.makeUnsafe();
|
|
@@ -251,6 +359,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
251
359
|
return identity(Object.assign(yield* Client.make({
|
|
252
360
|
acquirer: Pool.get(pool),
|
|
253
361
|
compiler,
|
|
362
|
+
transactionService: transactionService,
|
|
254
363
|
spanAttributes,
|
|
255
364
|
transformRows
|
|
256
365
|
}), {
|
|
@@ -271,18 +380,24 @@ export const make = options => Effect.gen(function* () {
|
|
|
271
380
|
}));
|
|
272
381
|
});
|
|
273
382
|
/**
|
|
383
|
+
* Creates a layer from a `Config`-wrapped SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
384
|
+
*
|
|
274
385
|
* @category layers
|
|
275
|
-
* @since
|
|
386
|
+
* @since 4.0.0
|
|
276
387
|
*/
|
|
277
|
-
export const layerConfig = config => Layer.
|
|
388
|
+
export const layerConfig = config => Layer.effectContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(MssqlClient, client).pipe(Context.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
|
|
278
389
|
/**
|
|
390
|
+
* Creates a layer from a concrete SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
391
|
+
*
|
|
279
392
|
* @category layers
|
|
280
|
-
* @since
|
|
393
|
+
* @since 4.0.0
|
|
281
394
|
*/
|
|
282
|
-
export const layer = config => Layer.
|
|
395
|
+
export const layer = config => Layer.effectContext(Effect.map(make(config), client => Context.make(MssqlClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
|
|
283
396
|
/**
|
|
397
|
+
* Creates the SQL Server statement compiler, using `@1`-style placeholders, bracket-escaped identifiers, and SQL Server `OUTPUT INSERTED` returning clauses.
|
|
398
|
+
*
|
|
284
399
|
* @category compiler
|
|
285
|
-
* @since
|
|
400
|
+
* @since 4.0.0
|
|
286
401
|
*/
|
|
287
402
|
export const makeCompiler = transform => Statement.makeCompiler({
|
|
288
403
|
dialect: "mssql",
|
|
@@ -315,7 +430,10 @@ function numberToParamName(n) {
|
|
|
315
430
|
return `${Math.ceil(n + 1)}`;
|
|
316
431
|
}
|
|
317
432
|
/**
|
|
318
|
-
*
|
|
433
|
+
* Default mapping from Effect SQL primitive value kinds to Tedious SQL Server parameter data types.
|
|
434
|
+
*
|
|
435
|
+
* @category configuration
|
|
436
|
+
* @since 4.0.0
|
|
319
437
|
*/
|
|
320
438
|
export const defaultParameterTypes = {
|
|
321
439
|
string: Tedious.TYPES.VarChar,
|
package/dist/MssqlClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MssqlClient.js","names":["Config","Duration","Effect","identity","Layer","Pool","Redacted","Scope","ServiceMap","Stream","Reactivity","Client","SqlError","Statement","Tedious","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","Symbol","for","MssqlClient","Service","TransactionConnection","make","options","gen","parameterTypes","defaultParameterTypes","compiler","makeCompiler","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","undefined","spanAttributes","Object","entries","database","server","port","pool","makeConnection","conn","Connection","trustServerCertificate","trustServer","connectTimeout","toMillis","fromInputUnsafe","rowCollectionOnRequestCompletion","useColumnNames","instanceName","encrypt","authentication","type","authType","userName","username","password","value","addFinalizer","sync","close","callback","resume","connect","cause","fail","message","void","run","sql","values","rowsAsArray","req","Request","_rowCount","result","map","row","_","rowsToObjects","succeed","i","len","length","name","numberToParamName","isMssqlParam","addParameter","paramA","paramB","paramC","kind","primitiveKind","cancel","execSql","runProcedure","procedure","escape","rows","params","param","outputParams","addOutputParameter","on","callProcedure","connection","execute","executeRaw","executeValues","executeUnprepared","executeStream","die","call","begin","beginTransaction","commit","commitTransaction","savepoint","saveTransaction","rollback","rollbackTransaction","pipe","catch","invalidate","interruptible","forkScoped","makeWithTTL","acquire","min","minConnections","max","maxConnections","timeToLive","connectionTTL","minutes","timeToLiveStrategy","get","tap","mapError","scoped","timeoutOrElse","duration","seconds","onTimeout","Error","withTransaction","makeWithTransaction","transactionService","acquireConnection","scope","makeUnsafe","provide","id","rollbackSavepoint","assign","acquirer","config","fragment","mssqlParam","flatMap","withoutTransforms","statement","withoutTransform","client","safe","layerConfig","effectServices","unwrap","asEffect","add","SqlClient","layer","transform","dialect","placeholder","onIdentifier","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","returningSql","concat","flat","onCustom","onInsert","columns","join","str","replace","n","Math","ceil","string","TYPES","VarChar","number","Int","bigint","BigInt","boolean","Bit","Date","DateTime","Uint8Array","VarBinary","Int8Array","null","custom","isCustom","newRows","Array","newRow","j","columnLen","column","metadata","colName"],"sources":["../src/MssqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"MssqlClient.js","names":["Config","Context","Duration","Effect","identity","Layer","Pool","Redacted","Scope","Stream","Reactivity","Client","AuthenticationError","AuthorizationError","ConnectionError","ConstraintError","DeadlockError","LockTimeoutError","SerializationError","SqlError","SqlSyntaxError","UniqueViolation","UnknownError","Statement","Tedious","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","mssqlNumberFromCause","cause","undefined","number","mssqlConnectionErrorCodes","Set","mssqlAuthenticationErrorCodes","mssqlAuthorizationErrorCodes","mssqlSyntaxErrorCodes","mssqlConstraintErrorCodes","UNKNOWN_CONSTRAINT","normalizeConstraintIdentifier","identifier","trimmed","trim","length","mssqlCauseProperty","property","mssqlUniqueViolationConstraintFromMessage","message","match","exec","mssqlUniqueViolationConstraintFromCause","constraint","classifyError","operation","fallback","props","has","TypeId","Symbol","for","MssqlClient","Service","TransactionConnection","clientIdCounter","make","options","gen","parameterTypes","defaultParameterTypes","compiler","makeCompiler","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","spanAttributes","Object","entries","database","server","port","pool","makeConnection","conn","Connection","trustServerCertificate","trustServer","connectTimeout","toMillis","fromInputUnsafe","rowCollectionOnRequestCompletion","useColumnNames","instanceName","encrypt","authentication","type","authType","userName","username","password","value","addFinalizer","sync","close","callback","resume","connect","fail","reason","void","run","sql","values","rowsAsArray","req","Request","_rowCount","result","map","row","_","rowsToObjects","succeed","i","len","name","numberToParamName","isMssqlParam","addParameter","paramA","paramB","paramC","kind","primitiveKind","cancel","execSql","runProcedure","procedure","escape","rows","params","param","outputParams","addOutputParameter","on","callProcedure","connection","execute","executeRaw","executeValues","executeUnprepared","executeStream","die","call","begin","beginTransaction","commit","commitTransaction","savepoint","saveTransaction","rollback","rollbackTransaction","pipe","catch","invalidate","interruptible","forkScoped","makeWithTTL","acquire","min","minConnections","max","maxConnections","timeToLive","connectionTTL","minutes","timeToLiveStrategy","get","tap","mapError","scoped","timeoutOrElse","duration","seconds","orElse","Error","transactionService","withTransaction","makeWithTransaction","acquireConnection","scope","makeUnsafe","provide","id","rollbackSavepoint","assign","acquirer","config","fragment","mssqlParam","flatMap","withoutTransforms","statement","withoutTransform","client","safe","layerConfig","effectContext","unwrap","add","SqlClient","layer","transform","dialect","placeholder","onIdentifier","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","returningSql","concat","flat","onCustom","onInsert","columns","join","str","replace","n","Math","ceil","string","TYPES","VarChar","Int","bigint","BigInt","boolean","Bit","Date","DateTime","Uint8Array","VarBinary","Int8Array","null","custom","isCustom","newRows","Array","newRow","j","columnLen","column","metadata","colName"],"sources":["../src/MssqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/MssqlMigrator.d.ts
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Utilities for applying Effect SQL migrations to Microsoft SQL Server.
|
|
3
|
+
*
|
|
4
|
+
* This module re-exports the shared `Migrator` loaders and error types, then
|
|
5
|
+
* provides `run` and `layer` helpers for applying ordered migrations through
|
|
6
|
+
* the current SQL Server `SqlClient`. It is typically used at application
|
|
7
|
+
* startup, during deployment, in integration tests that provision temporary SQL
|
|
8
|
+
* Server databases, or in layer graphs that need the database schema to be
|
|
9
|
+
* current before dependent services are acquired.
|
|
10
|
+
*
|
|
11
|
+
* Applied migrations are stored in `effect_sql_migrations` by default and use
|
|
12
|
+
* the shared `<id>_<name>` loader convention. Only migrations with ids greater
|
|
13
|
+
* than the latest recorded id are run, so avoid inserting older migration ids
|
|
14
|
+
* after a later migration has reached production. SQL Server migrations run
|
|
15
|
+
* inside the shared migrator transaction and this adapter does not add a
|
|
16
|
+
* dialect-specific table lock, so coordinate concurrent startup runners and
|
|
17
|
+
* write T-SQL that is valid inside an explicit transaction. Remember that `GO`
|
|
18
|
+
* is a client-side batch separator rather than a T-SQL statement, and split
|
|
19
|
+
* migrations when SQL Server requires an object definition such as `CREATE
|
|
20
|
+
* VIEW`, `CREATE PROCEDURE`, or `CREATE TRIGGER` to start its own batch. This
|
|
21
|
+
* adapter also does not emit SQL Server schema dumps for `schemaDirectory`.
|
|
22
|
+
*
|
|
23
|
+
* @since 4.0.0
|
|
3
24
|
*/
|
|
4
25
|
import type * as Effect from "effect/Effect";
|
|
5
26
|
import * as Layer from "effect/Layer";
|
|
@@ -7,17 +28,21 @@ import * as Migrator from "effect/unstable/sql/Migrator";
|
|
|
7
28
|
import type * as Client from "effect/unstable/sql/SqlClient";
|
|
8
29
|
import type { SqlError } from "effect/unstable/sql/SqlError";
|
|
9
30
|
/**
|
|
10
|
-
* @since
|
|
31
|
+
* @since 4.0.0
|
|
11
32
|
*/
|
|
12
33
|
export * from "effect/unstable/sql/Migrator";
|
|
13
34
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
35
|
+
* Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
|
|
36
|
+
*
|
|
37
|
+
* @category constructors
|
|
38
|
+
* @since 4.0.0
|
|
16
39
|
*/
|
|
17
40
|
export declare const run: <R>(options: Migrator.MigratorOptions<R>) => Effect.Effect<ReadonlyArray<readonly [id: number, name: string]>, SqlError | Migrator.MigrationError, Client.SqlClient | R>;
|
|
18
41
|
/**
|
|
42
|
+
* Creates a layer that runs the configured SQL migrations during layer construction.
|
|
43
|
+
*
|
|
19
44
|
* @category layers
|
|
20
|
-
* @since
|
|
45
|
+
* @since 4.0.0
|
|
21
46
|
*/
|
|
22
47
|
export declare const layer: <R>(options: Migrator.MigratorOptions<R>) => Layer.Layer<never, SqlError | Migrator.MigrationError, Client.SqlClient | R>;
|
|
23
48
|
//# sourceMappingURL=MssqlMigrator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MssqlMigrator.d.ts","sourceRoot":"","sources":["../src/MssqlMigrator.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"MssqlMigrator.d.ts","sourceRoot":"","sources":["../src/MssqlMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAE5D;;GAEG;AACH,cAAc,8BAA8B,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,CAAC,EAClB,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACjC,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAClD,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAClC,MAAM,CAAC,SAAS,GAAG,CAAC,CACD,CAAA;AAErB;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EACrB,SAAS,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACnC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,GAAG,CAAC,CAAsC,CAAA"}
|
package/dist/MssqlMigrator.js
CHANGED
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import * as Layer from "effect/Layer";
|
|
2
2
|
import * as Migrator from "effect/unstable/sql/Migrator";
|
|
3
3
|
/**
|
|
4
|
-
* @since
|
|
4
|
+
* @since 4.0.0
|
|
5
5
|
*/
|
|
6
6
|
export * from "effect/unstable/sql/Migrator";
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
|
|
9
|
+
*
|
|
10
|
+
* @category constructors
|
|
11
|
+
* @since 4.0.0
|
|
10
12
|
*/
|
|
11
13
|
export const run = /*#__PURE__*/Migrator.make({});
|
|
12
14
|
/**
|
|
15
|
+
* Creates a layer that runs the configured SQL migrations during layer construction.
|
|
16
|
+
*
|
|
13
17
|
* @category layers
|
|
14
|
-
* @since
|
|
18
|
+
* @since 4.0.0
|
|
15
19
|
*/
|
|
16
20
|
export const layer = options => Layer.effectDiscard(run(options));
|
|
17
21
|
//# sourceMappingURL=MssqlMigrator.js.map
|