Closed wenchaozhang-123 closed 18 hours ago
Given this is a cherry-pick from PostgreSQL this is cleary ready is soon as tests passes (which very likely to be).
After merging this test failed in main branch:
drop table foo_p;
+DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
+ERROR: Error on receive from seg0 172.18.0.2:7002 pid=41173: server closed the connection unexpectedly
+HINT: In a moment you should be able to reconnect to the database and repeat your command.
+WARNING: terminating connection because of crash of another server process
+ This probably means the server terminated abnormally
+ before or while processing the request.
Seems an unrelated flap.
We should have done it this way all along, but we accidentally got away with using the wrong BIO field up until OpenSSL 3.2. There, the library's BIO routines that we rely on use the "data" field for their own purposes, and our conflicting use causes assorted weird behaviors up to and including core dumps when SSL connections are attempted. Switch to using the approved field for the purpose, i.e. app_data.
While at it, remove our configure probes for BIO_getdata as well as the fallback implementation. BIO{get,set}_app_data have been there since long before any OpenSSL version that we still support, even in the back branches.
Also, update src/test/ssl/t/001_ssltests.pl to allow for a minor change in an error message spelling that evidently came in with 3.2.
Tristan Partin and Bo Andreson. Back-patch to all supported branches.
Discussion: https://postgr.es/m/CAN55FZ1eDDYsYaL7mv+oSLUij2h_u6hvD4Qmv-7PK7jkji0uyQ@mail.gmail.com
fix #ISSUE_Number
Change logs
Describe your change clearly, including what problem is being solved or what feature is being added.
If it has some breaking backward or forward compatibility, please clary.
Why are the changes needed?
Describe why the changes are necessary.
Does this PR introduce any user-facing change?
If yes, please clarify the previous behavior and the change this PR proposes.
How was this patch tested?
Please detail how the changes were tested, including manual tests and any relevant unit or integration tests.
Contributor's Checklist
Here are some reminders and checklists before/when submitting your pull request, please check them:
make installcheck
make -C src/test installcheck-cbdb-parallel
cloudberrydb/dev
team for review and approval when your PR is ready🥳