@powersync/service-module-mssql 0.0.1 → 0.1.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.
Files changed (58) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/api/MSSQLRouteAPIAdapter.js +16 -51
  3. package/dist/api/MSSQLRouteAPIAdapter.js.map +1 -1
  4. package/dist/common/LSN.js +2 -2
  5. package/dist/common/LSN.js.map +1 -1
  6. package/dist/common/MSSQLSourceTable.js +4 -4
  7. package/dist/common/MSSQLSourceTable.js.map +1 -1
  8. package/dist/common/mssqls-to-sqlite.js +4 -4
  9. package/dist/common/mssqls-to-sqlite.js.map +1 -1
  10. package/dist/module/MSSQLModule.js +1 -1
  11. package/dist/module/MSSQLModule.js.map +1 -1
  12. package/dist/replication/CDCPoller.d.ts +2 -2
  13. package/dist/replication/CDCPoller.js +12 -8
  14. package/dist/replication/CDCPoller.js.map +1 -1
  15. package/dist/replication/CDCReplicationJob.d.ts +2 -2
  16. package/dist/replication/CDCReplicationJob.js +1 -1
  17. package/dist/replication/CDCReplicationJob.js.map +1 -1
  18. package/dist/replication/CDCReplicator.d.ts +2 -2
  19. package/dist/replication/CDCReplicator.js +1 -1
  20. package/dist/replication/CDCReplicator.js.map +1 -1
  21. package/dist/replication/CDCStream.d.ts +2 -2
  22. package/dist/replication/CDCStream.js +32 -37
  23. package/dist/replication/CDCStream.js.map +1 -1
  24. package/dist/replication/MSSQLConnectionManager.js +1 -1
  25. package/dist/replication/MSSQLConnectionManager.js.map +1 -1
  26. package/dist/replication/MSSQLSnapshotQuery.d.ts +0 -17
  27. package/dist/replication/MSSQLSnapshotQuery.js +0 -47
  28. package/dist/replication/MSSQLSnapshotQuery.js.map +1 -1
  29. package/dist/types/types.d.ts +80 -23
  30. package/dist/types/types.js +24 -24
  31. package/dist/types/types.js.map +1 -1
  32. package/dist/utils/mssql.js +28 -14
  33. package/dist/utils/mssql.js.map +1 -1
  34. package/dist/utils/schema.js +31 -15
  35. package/dist/utils/schema.js.map +1 -1
  36. package/package.json +10 -10
  37. package/src/api/MSSQLRouteAPIAdapter.ts +16 -51
  38. package/src/common/LSN.ts +2 -2
  39. package/src/common/MSSQLSourceTable.ts +4 -4
  40. package/src/common/mssqls-to-sqlite.ts +11 -4
  41. package/src/module/MSSQLModule.ts +1 -1
  42. package/src/replication/CDCPoller.ts +15 -10
  43. package/src/replication/CDCReplicationJob.ts +3 -3
  44. package/src/replication/CDCReplicator.ts +3 -3
  45. package/src/replication/CDCStream.ts +36 -49
  46. package/src/replication/MSSQLConnectionManager.ts +1 -1
  47. package/src/replication/MSSQLSnapshotQuery.ts +0 -54
  48. package/src/types/types.ts +41 -45
  49. package/src/utils/mssql.ts +29 -16
  50. package/src/utils/schema.ts +31 -17
  51. package/test/src/CDCStream.test.ts +9 -17
  52. package/test/src/CDCStreamTestContext.ts +5 -5
  53. package/test/src/CDCStream_resumable_snapshot.test.ts +15 -9
  54. package/test/src/mssql-to-sqlite.test.ts +28 -27
  55. package/test/src/util.ts +27 -14
  56. package/tsconfig.tsbuildinfo +1 -1
  57. package/ci/init-mssql.sql +0 -50
  58. package/test/tsconfig.tsbuildinfo +0 -1
package/ci/init-mssql.sql DELETED
@@ -1,50 +0,0 @@
1
- -- Create database (idempotent)
2
- IF DB_ID('$(DATABASE)') IS NULL
3
- BEGIN
4
- CREATE DATABASE [$(DATABASE)];
5
- END
6
- GO
7
-
8
- -- Enable CDC at the database level (idempotent)
9
- USE [$(DATABASE)];
10
- IF (SELECT is_cdc_enabled FROM sys.databases WHERE name = '$(DATABASE)') = 0
11
- BEGIN
12
- EXEC sys.sp_cdc_enable_db;
13
- END
14
- GO
15
-
16
- -- Create PowerSync checkpoints table
17
- -- Powersync requires this table to ensure regular checkpoints appear in CDC
18
- IF OBJECT_ID('dbo._powersync_checkpoints', 'U') IS NULL
19
- BEGIN
20
- CREATE TABLE dbo._powersync_checkpoints (
21
- id INT IDENTITY PRIMARY KEY,
22
- last_updated DATETIME NOT NULL DEFAULT (GETDATE())
23
- );
24
- END
25
-
26
- GRANT INSERT, UPDATE ON dbo._powersync_checkpoints TO [$(DB_USER)];
27
- GO
28
-
29
- -- Enable CDC for the powersync checkpoints table
30
- IF NOT EXISTS (SELECT 1 FROM cdc.change_tables WHERE source_object_id = OBJECT_ID(N'dbo._powersync_checkpoints'))
31
- BEGIN
32
- EXEC sys.sp_cdc_enable_table
33
- @source_schema = N'dbo',
34
- @source_name = N'_powersync_checkpoints',
35
- @role_name = N'cdc_reader',
36
- @supports_net_changes = 0;
37
- END
38
- GO
39
-
40
- -- Wait until capture job exists - usually takes a few seconds after enabling CDC on a table for the first time
41
- DECLARE @tries int = 10;
42
- WHILE @tries > 0 AND NOT EXISTS (SELECT 1 FROM msdb.dbo.cdc_jobs WHERE job_type = N'capture')
43
- BEGIN
44
- WAITFOR DELAY '00:00:01';
45
- SET @tries -= 1;
46
- END;
47
-
48
- -- Set the CDC capture job polling interval to 1 second (default is 5 seconds)
49
- EXEC sys.sp_cdc_change_job @job_type = N'capture', @pollinginterval = 1;
50
- GO