Add possibility to configure max_allowed_packet value for all database engines (#1490283)
| | |
| | | =========================== |
| | | |
| | | - Add possibility to print contact information (of a single contact) |
| | | - Add possibility to configure max_allowed_packet value for all database engines (#1490283) |
| | | - Fix refreshing of drafts list when sending a message which was saved in meantime (#1490238) |
| | | - Fix saving/sending emoticon images when assets_dir is set |
| | | - Fix PHP fatal error when visiting Vacation interface and there's no sieve script yet |
| | |
| | | // 'cache_messages' => 'r', |
| | | ); |
| | | |
| | | // It is possible to specify database variable values e.g. some limits here. |
| | | // Use them if your server is not MySQL or for better performance. |
| | | // For example Roundcube uses max_allowed_packet value (in bytes) |
| | | // which limits query size for database cache operations. |
| | | $config['db_max_allowed_packet'] = 23423440; |
| | | |
| | | |
| | | // ---------------------------------- |
| | | // LOGGING/DEBUGGING |
| | |
| | | public function get_variable($varname, $default = null) |
| | | { |
| | | // to be implemented by driver class |
| | | return $default; |
| | | return rcube::get_instance()->config->get('db_' . $varname, $default); |
| | | } |
| | | |
| | | /** |
| | |
| | | return $this->variables[$varname]; |
| | | } |
| | | |
| | | // configured value has higher prio |
| | | $conf_value = rcube::get_instance()->config->get('db_' . $varname); |
| | | if ($conf_value !== null) { |
| | | return $this->variables[$varname] = $conf_value; |
| | | } |
| | | |
| | | $result = $this->query('SHOW VARIABLES LIKE ?', $varname); |
| | | |
| | | while ($row = $this->fetch_array($result)) { |
| | |
| | | // There's a known case when max_allowed_packet is queried |
| | | // PostgreSQL doesn't have such limit, return immediately |
| | | if ($varname == 'max_allowed_packet') { |
| | | return $default; |
| | | return rcube::get_instance()->config->get('db_' . $varname, $default); |
| | | } |
| | | |
| | | $this->variables[$varname] = rcube::get_instance()->config->get('db_' . $varname); |
| | | |
| | | if (!isset($this->variables)) { |
| | | $this->variables = array(); |
| | | |