Synthesis #1: Adopt utf8mb4 and DBIx::Connector (#79)
* use base to make merging with bmo easier
* Revert "Bug 1497042 - Enclose table names in CREATE queries"
This reverts commit 62d5637a.
* refactor Bugzilla::DB to not subclass DBI
* use DBIx::Connector to manage database connections
* Ensure we always call DBIx::Connector->dbh before any DBI method
The code didn't allow a way of doing this without a lot of work.
So I had to take the following approach:
The 'dbh' attribute is now a method that delegates to DBIx::Connector's dbh
method. Per the docs, ->dbh() "Returns the connection's database handle. It will
use a an existing handle if there is one, if the process has not been forked or
a new thread spawned, and if the database is pingable. Otherwise, it will
instantiate, cache, and return a new handle."
Then there is the matter of the 'handles' on dbh. I've used Package::Stash to
insert proxy methods into the class when it is loaded.
* Bug 1328659 - Add support for utf8=utf8mb4 (switches to dynamic/compressed row format, and changes charset to utf8mb4)
* add deps
* add prepare_cached to the list of delegated methods.
This was added in bug 340160
* improve the migration to compressed/dynamic rows, skip views
* add missing semicolon
* remove pre-utf8mb4 emoji support
* fix small issue
* add debugging fatal error
Showing
Please
register
or
sign in
to comment