if mysql.server_version >= 5 and mysql.client_version < 5 then warning re: incompatible mysql client libraries endif
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 ) fixes #1099 - add MySQL warning if client/server versions are incompatible
(In ) 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.