node-mssql icon indicating copy to clipboard operation
node-mssql copied to clipboard

feat: add ability to set per-request requestTimeout

Open dhensby opened this issue 10 months ago • 0 comments

What this does:

This adds an optional config object that can be passed to Request, Transaction and PreparedStatement objects to provide one-off/per-instance overrides for config settings on the pool. At the moment that is purely for requestTimeout, but does provide the foundation to add other options too.

Things to think about:

  1. Should Transaction classes accept this option given that it is non-trivial in tedious to actually set the timeout on the begin/end/commit transaction queries (because tedious creates their own request without exposing it when starting/commiting transactions)? If we don't we end up with a bit of a mis-matched API and perhaps we should add it, but it is then applied to a transactions requests unless overridden again...

Still to do:

  • [ ] Write tests
  • [ ] Add docs to Readme
  • [ ] Add support for transaction requests (or not?!)
  • [ ] Finish jsdocs
  • [ ] update typings (after merge/release)

Related issues:

Closes #1529

Pre/Post merge checklist:

  • [ ] Update change log

dhensby avatar Aug 16 '23 21:08 dhensby