Skip to content

fix: save SET parameter after a regular query inside transaction - #687

Merged
levkk merged 3 commits into
mainfrom
levkk-track-params-after-query
Dec 19, 2025
Merged

fix: save SET parameter after a regular query inside transaction #687
levkk merged 3 commits into
mainfrom
levkk-track-params-after-query

Conversation

@levkk

@levkk levkk commented Dec 19, 2025

Copy link
Copy Markdown
Collaborator

Handle saving/restoring parameters for connections that execute SET after a regular query inside a transaction, e.g.:

BEGIN;
SET LOCAL statement_timeout TO 1234;
SELECT 1;
SET work_mem TO '128MB';
COMMIT;

This would preserve the value of work_mem for that client for all subsequent transactions, as per Postgres spec.

@levkk
levkk marked this pull request as ready for review December 19, 2025 19:26
@codecov

codecov Bot commented Dec 19, 2025

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 94.66667% with 4 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
pgdog/src/frontend/client/test/test_client.rs 87.50% 4 Missing ⚠️

📢 Thoughts on this report? Let us know!

@levkk
levkk merged commit f4f3689 into main Dec 19, 2025
7 of 8 checks passed
@levkk
levkk deleted the levkk-track-params-after-query branch December 19, 2025 19:39
dev-lew pushed a commit to dev-lew/pgdog that referenced this pull request Feb 18, 2026
…ogdev#687)

Handle saving/restoring parameters for connections that execute `SET`
after a regular query inside a transaction, e.g.:

```sql
BEGIN;
SET LOCAL statement_timeout TO 1234;
SELECT 1;
SET work_mem TO '128MB';
COMMIT;
```

This would preserve the value of `work_mem` for that client for all
subsequent transactions, as per Postgres spec.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant