From a1661af17c9054a6c399dd9d5220f8d6a5091fa2 Mon Sep 17 00:00:00 2001 From: Jeremy Benoist Date: Tue, 12 Dec 2017 12:14:40 +0100 Subject: Add custom driver & schema manager for PostgreSQL 10 --- .../DBAL/Driver/CustomPostgreSQLDriver.php | 25 ++++++++++++++ .../DBAL/Schema/CustomPostgreSqlSchemaManager.php | 38 ++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 src/Wallabag/CoreBundle/Doctrine/DBAL/Driver/CustomPostgreSQLDriver.php create mode 100644 src/Wallabag/CoreBundle/Doctrine/DBAL/Schema/CustomPostgreSqlSchemaManager.php (limited to 'src/Wallabag') diff --git a/src/Wallabag/CoreBundle/Doctrine/DBAL/Driver/CustomPostgreSQLDriver.php b/src/Wallabag/CoreBundle/Doctrine/DBAL/Driver/CustomPostgreSQLDriver.php new file mode 100644 index 00000000..eb5b203f --- /dev/null +++ b/src/Wallabag/CoreBundle/Doctrine/DBAL/Driver/CustomPostgreSQLDriver.php @@ -0,0 +1,25 @@ +_platform->quoteIdentifier($sequenceName); + + // patch for PostgreSql >= 10 + if ((float) ($this->_conn->getWrappedConnection()->getServerVersion()) >= 10) { + $query = "SELECT min_value, increment_by FROM pg_sequences WHERE schemaname = 'public' AND sequencename = " . $this->_conn->quote($sequenceName); + } + + $data = $this->_conn->fetchAll($query); + + return new Sequence($sequenceName, $data[0]['increment_by'], $data[0]['min_value']); + } +} -- cgit v1.2.3