Add client version check to installer #1099

robocoder opened this Issue Jan 5, 2010 · 2 comments

1 participant



    if mysql.server_version >= 5 and mysql.client_version < 5 then
        warning re: incompatible mysql client libraries

Some users report:

Warning: mysqli_stmt::bind_result() href='function.mysqli-stmt-bind-result'>function.mysqli-stmt-bind-result</a>: Server returned unknown type 246. Probably your client library is incompatible with the server version you use! in /.../public_html/piwik/libs/Zend/Db/Statement/Mysqli.php on line 255

According to the MySQL documentation:

C API Changes:

Incompatible change: Because the MySQL 5.0 server has a new implementation of the DECIMAL data type, a problem may occur if the server is used by older clients that still are linked against MySQL 4.1 client libraries. If a client uses the binary client/server protocol to execute prepared statements that generate result sets containing numeric values, an error will be raised: 'Using unsupported buffer type: 246'

This error occurs because the 4.1 client libraries do not support the new MYSQL_TYPE_NEWDECIMAL type value added in 5.0. There is no way to disable the new DECIMAL data type on the server side. You can avoid the problem by relinking the application with the client libraries from MySQL 5.0.


(In [1783]) fixes #1099 - add MySQL warning if client/server versions are incompatible


(In [2957]) refs #1099 - more precise version number for the compatibility test

This is ok in php 5.3.x's because mysqlnd returns >= 5.0.5 as the client version.

@robocoder robocoder added this to the Piwik 0.5.5 milestone Jul 8, 2014
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment