Skip to content

Fix server crash during concurrent DROP+CREATE+EXEC with track_functions=all#4859

Open
RuchaSK1 wants to merge 2 commits into
babelfish-for-postgresql:BABEL_6_X_DEVfrom
amazon-aurora:jira-babel-6405
Open

Fix server crash during concurrent DROP+CREATE+EXEC with track_functions=all#4859
RuchaSK1 wants to merge 2 commits into
babelfish-for-postgresql:BABEL_6_X_DEVfrom
amazon-aurora:jira-babel-6405

Conversation

@RuchaSK1

Copy link
Copy Markdown
Contributor

Description

Registering pgstat_function_wrapper_hook to call pgstat_init_function_usage_no_drop for Babelfish, bypassing the engine's pgstat_init_function_usage. This eliminates the pgstat_drop_entry call that causes a double-drop crash when multiple sessions concurrently DROP, CREATE, and EXEC the same procedure.

Engine PR: babelfish-for-postgresql/postgresql_modified_for_babelfish#772

Issues Resolved

Task: BABEL-6405

Authored-by: Rucha Kulkarni ruchask@amazon.com
Signed-off-by: Rucha Kulkarni ruchask@amazon.com

Test Scenarios Covered

  • Use case based -

  • Boundary conditions -

  • Arbitrary inputs -

  • Negative test cases -

  • Minor version upgrade tests -

  • Major version upgrade tests -

  • Performance tests -

  • Tooling impact -

  • Client tests -

Check List

  • Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is under the terms of the Apache 2.0 and PostgreSQL licenses, and grant any person obtaining a copy of the contribution permission to relicense all or a portion of my contribution to the PostgreSQL License solely to contribute all or a portion of my contribution to the PostgreSQL open source project.

For more information on following Developer Certificate of Origin and signing off your commits, please check here.

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