From 8431d419cad2291eed507f05a2c6a6ca0996ef5c Mon Sep 17 00:00:00 2001 From: FusionPBX Date: Mon, 8 Aug 2022 16:58:52 -0600 Subject: [PATCH] Reduce round trips to the database server. Add PDO attribute: PDO::PGSQL_ATTR_DISABLE_PREPARES https://prototype.php.net/manual/en/ref.pdo-pgsql.php --- resources/classes/database.php | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/resources/classes/database.php b/resources/classes/database.php index ec62a0d2b9..4182fb884b 100644 --- a/resources/classes/database.php +++ b/resources/classes/database.php @@ -607,7 +607,8 @@ include "root.php"; $sql .= ")\n"; //execute the query, show exceptions - $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION, PDO::PGSQL_ATTR_DISABLE_PREPARES); + try { //$this->sql = $sql; //$this->db->exec($sql); @@ -1129,7 +1130,7 @@ include "root.php"; } //set the error mode - $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION, PDO::PGSQL_ATTR_DISABLE_PREPARES); //execute the query, and return the results try { @@ -1811,7 +1812,7 @@ include "root.php"; $sql .= ");"; $sql = str_replace(", )", ")", $sql); - $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION, PDO::PGSQL_ATTR_DISABLE_PREPARES); try { //$this->db->query(check_sql($sql)); @@ -1898,7 +1899,7 @@ include "root.php"; } $sql .= "WHERE ".$parent_key_name." = '".$parent_key_value."' "; $sql = str_replace(", WHERE", " WHERE", $sql); - $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION, PDO::PGSQL_ATTR_DISABLE_PREPARES); try { $prep_statement = $this->db->prepare($sql); $prep_statement->execute($params); @@ -2059,9 +2060,8 @@ include "root.php"; $sql .= "WHERE ".$parent_key_name." = '".$parent_key_value."' "; $sql .= "AND ".$child_key_name." = '".$child_key_value."' "; $sql = str_replace(", WHERE", " WHERE", $sql); - $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION, PDO::PGSQL_ATTR_DISABLE_PREPARES); //$prep_statement->bindParam(':domain_uuid', $this->domain_uuid ); - try { //$this->db->query(check_sql($sql)); $prep_statement = $this->db->prepare($sql); @@ -2184,7 +2184,7 @@ include "root.php"; } $sql .= ");"; $sql = str_replace(", )", ")", $sql); - $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); + $this->db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION, PDO::PGSQL_ATTR_DISABLE_PREPARES); try { $prep_statement = $this->db->prepare($sql); $prep_statement->execute($params);