Skip to content

Conversation

rkleemann
Copy link

Was originally from #132.

rkleemann and others added 19 commits March 19, 2019 12:36
During global destruction phase ChildHandles DBI attribute may be already
released or children can be undefs due to weakrefs.

So instead of relaying on ChildHandles, maintain own double linked list of
all imp_dbh structures with active MYSQL connection. This does not use any
Perl data structures so they are available at any time, including global
destruction phase.

Fixes: jhthorsen/mojo-mysql#47 (comment)
Fixes: 17d5aa0
This simplify implementation of taken_pmysqls.
Sometimes CREATE TABLE statement throws following error:
Deadlock found when trying to get lock; try restarting transaction
Function mariadb_st_execute_iv() did not reset current row, so next
mariadb_st_fetch() function call returned nothing if previously all data
were already fetched.

Now execute() reset current row to first one so fetch function starts
fetching from beginning.

This fixes usage of $dbh->prepare_cached() method, specially in
construction like this: $dbh->selectcol_arrayref($dbh->prepare_cached(...))

Fixes: 4f47a06
skip_all doesn't skip assertions in the END block.
This reverts commit 5f3272e.

MySQL bug #93276 is not fixed in 8.0.15 yet.

Fixes: perl5-dbi#137
See: https://bugs.mysql.com/bug.php?id=93276
@choroba
Copy link
Member

choroba commented Mar 20, 2019

This look like a wrong rebase. The PR should only contain the last two commits.

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.

3 participants