graphql-engine/server
Samir Talwar 15ac52ded4 server: Fix the Analyze feature for SQL Server.
The "Analyze" feature for SQL Server only partially worked. It would show the SQL generated, but not the execution plan. This is because SQL Server doesn't support generating a plan for prepared statements with parameters.

To work around this, we restructure the query as one without parameters. Instead, we replace each parameter with a variable. We declare the variables but don't set values. We then plan _that_, which works.

We run all this in a single query because local variables only last for a single transaction/batch.

This feature does not work for stored procedures.

[NDAT-582]: https://hasurahq.atlassian.net/browse/NDAT-582?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/10125
GitOrigin-RevId: a4b45b9b207456ff4fbd1b69b008e93f87346342
2023-08-17 12:51:57 +00:00
..
benchmarks Fix #9447 bad memory usage 2023-07-25 11:24:57 +00:00
documentation chore(server): delete MySQL native backend 2023-05-05 10:32:56 +00:00
forks/hedis chore(tooling): import ekg-prometheus into the monorepo 2023-06-27 18:37:11 +00:00
lib server: Fix the Analyze feature for SQL Server. 2023-08-17 12:51:57 +00:00
src-emit-metadata-openapi harmonize network manager handling 2023-02-22 15:55:54 +00:00
src-exec server: Avoid partial fields wherever possible. 2023-07-28 10:54:24 +00:00
src-lib server: Fix the Analyze feature for SQL Server. 2023-08-17 12:51:57 +00:00
src-rsr ci: tag release v2.32.0 2023-08-17 10:06:58 +00:00
src-test Data Connectors Native Queries Support 2023-08-17 02:05:14 +00:00
test-manual server/test-manual: A way to start PostgreSQL with a read replica. 2023-03-28 09:20:51 +00:00
test-mssql server: Avoid partial fields wherever possible. 2023-07-28 10:54:24 +00:00
test-postgres server: change log level to error for triggers in Cloud 2023-08-10 10:04:05 +00:00
tests-py server: configuration to specify which Header to pick for JWT Authentication 2023-08-04 10:37:40 +00:00
.dockerignore update packages (#251) 2018-08-08 13:10:13 +05:30
.gitignore server: Clean up Cabal project files 2022-04-07 07:16:12 +00:00
.ormolu Upgrade Ormolu to v0.5. 2022-11-02 20:55:13 +00:00
commit_diff.txt Rewrite GraphQL schema generation and query parsing (close #2801) (#4111) 2020-08-21 12:27:01 -05:00
COMPILING-ON-MACOS.md Upgrade cabal version used in CI server-build 2023-06-08 08:32:15 +00:00
CONTRIBUTING.md Upgrade cabal version used in CI server-build 2023-06-08 08:32:15 +00:00
graphql-engine.cabal Nested permissions 2023-08-07 04:58:22 +00:00
Makefile ci: misc. cleanup, naming 2022-01-03 06:26:39 +00:00
STYLE.md Nix: Use nixpkgs-fmt to format everything. 2022-06-20 13:02:45 +00:00
testing-guidelines.md Extract the test harness from the Hspec tests 2022-10-04 08:31:26 +00:00
troubleshooting.md Create troubleshooting.md 2022-05-30 09:18:44 +00:00
VERSIONS.json Upgrade the Nix lockfile and fix ghcid on macOS. 2023-08-07 08:59:51 +00:00