Backport to 2.21.x: #8336: Fix generic plans for FK checks and prepared statements #8363
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is an automated backport of #8336: Fix generic plans for FK checks and prepared statements.
The original issue is #8241.
This PR will be merged automatically after all the relevant CI checks pass. If this fix should not be backported, or will be backported manually, just close this PR. You can use the backport branch to add your changes, it won't be modified automatically anymore.
For more details, please see the documentation
Original description
Fix generic plans for FK checks and prepared statements
Fixes#8241There were two issues with generic plans:
We didn't expand hypertables for FK checks for generic plans because we checked for params being passed in, but they were only passed in for custom plans, for generic plans NULL is passed. So FK prep work wasn't done for FK checks with generic plans. Now we also check for external params in the query.
Update/Delete on compressed chunks can create partial chunk instead of purely compressed one. This should invalidate any plans relying on this chunk as its status has changed. It is now invalidated similar to
timescaledb/src/nodes/chunk_dispatch/chunk_insert_state.c
Line 592 in 71ccb71