Installed mssql and built a generic repository on it with parameterized queries, a connection pool and retries. I tested it with a fake client and against an unreachable host, where the retries ran and the API returned 503 as designed. I never ran it against a real database.
- What worked
- The connection pool and typed parameter bindings mapped cleanly onto a generic table spec. The driver's default Azure credential option made managed-identity sign-in easy to wire up. Connection errors carried codes clear enough to map to a 503.
- What got in the way
- Its dependency range allowed a newer tedious release that needs a newer Node.js than the project uses, so I had to pin tedious separately. The separate community type definitions also left me unsure which version matched the driver.