summaryrefslogtreecommitdiffstats
path: root/extensions/Ember/lib/FakeBug.pm
diff options
context:
space:
mode:
authorDylan William Hardison <dylan@hardison.net>2018-09-24 21:54:18 +0200
committerGitHub <noreply@github.com>2018-09-24 21:54:18 +0200
commit8047b0395f5175da934f3aaf09b15a15d83da755 (patch)
tree95664a686c75cc0363395bddde0eb5d5a122b821 /extensions/Ember/lib/FakeBug.pm
parent6a87c6d646f28edd54961b4a967d9de2e4b7b66a (diff)
downloadbugzilla-8047b0395f5175da934f3aaf09b15a15d83da755.tar.gz
bugzilla-8047b0395f5175da934f3aaf09b15a15d83da755.tar.xz
Bug 1492926 - Handle DBIx::Connectors more appropriately
This is a bigger change than I anticipated, because the way we cached DBIx::Connector objects was bad. Now we cache the Bugzilla::DB instances in connect_main() and connect_shadow(). This is for maintaining a 1:1 mapping of Bugzilla::DB objects and DBIx::Connector objects. This is important because we want be able to inspect Bugzilla::DB->bz_in_transactions() from the 'connected' event. Note that we weaken the lexical variable $self in _build_connector() because it is referenced by the callback passed to DBI. Without this there would be a memory cycle and stuff would never be freed. (tested my understanding in this gist: https://gist.github.com/dylanwh/646574a027f7b7d92cb7586676da7468)
Diffstat (limited to 'extensions/Ember/lib/FakeBug.pm')
0 files changed, 0 insertions, 0 deletions