diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2021-07-21 11:18:01 -0400 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2021-07-21 13:57:22 -0400 |
| commit | a34a4af8a80f4edd12b022753b69065025818e20 (patch) | |
| tree | 379a4060304439f46a6515b9b8c6cd74553c477e /test/sql | |
| parent | e7119aea7870f0322e78d3a2cb28337b1640f0c2 (diff) | |
| download | sqlalchemy-a34a4af8a80f4edd12b022753b69065025818e20.tar.gz | |
implement cache key for return_defaults token
Fixed critical caching issue where the ORM's persistence feature using
INSERT..RETURNING would cache an incorrect query when mixing the "bulk
save" and standard "flush" forms of INSERT.
Fixes: #6793
Change-Id: Ifeb61c1226d3fa6d5e1c2e29b6f5ff77a27d6a2d
Diffstat (limited to 'test/sql')
| -rw-r--r-- | test/sql/test_compare.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/test/sql/test_compare.py b/test/sql/test_compare.py index 188d9337e..371e68a8a 100644 --- a/test/sql/test_compare.py +++ b/test/sql/test_compare.py @@ -534,6 +534,9 @@ class CoreFixtures(object): ), lambda: ( table_a.insert(), + table_a.insert().return_defaults(), + table_a.insert().return_defaults(table_a.c.a), + table_a.insert().return_defaults(table_a.c.b), table_a.insert().values({})._annotate({"nocache": True}), table_b.insert(), table_b.insert().with_dialect_options(sqlite_foo="some value"), @@ -570,6 +573,9 @@ class CoreFixtures(object): ), lambda: ( table_b.update(), + table_b.update().return_defaults(), + table_b.update().return_defaults(table_b.c.a), + table_b.update().return_defaults(table_b.c.b), table_b.update().where(table_b.c.a == 5), table_b.update().where(table_b.c.b == 5), table_b.update() |
