Bug #52529 [NEW]: PDO+Mysqlnd MYSQL_ATTR_COMPRESS undefined

From: Date: Wed, 04 Aug 2010 01:02:08 +0000
Subject: Bug #52529 [NEW]: PDO+Mysqlnd MYSQL_ATTR_COMPRESS undefined
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-153072@lists.php.net to get a copy of this message
From:             
Operating system: Ubuntu 10.04
PHP version:      5.3SVN-2010-08-04 (snap)
Package:          PDO related
Bug Type:         Bug
Bug description:PDO+Mysqlnd MYSQL_ATTR_COMPRESS undefined

Description:
------------
Client compression support was added to mysqlnd in php 5.3.3. PDO_mysql
should now be able to use it.

However the constant MYSQL_ATTR_COMPRESS is undefined in the PDO class when
compiling using the following (bare minimum) config:

./configure --with-pdo-mysql=mysqlnd --with-mysql=mysqlnd

Due to how recent this addition is, I can find no further information on
php.net/google/anywhere...

There are also some confusing (and useless?) switches in configure for
mysqlnd compression that seem counter-intuitive.

--disable-mysqlnd-compression-support
                            Enable support for the MySQL compressed
protocol in mysqlnd
--with-zlib-dir[=DIR]       mysqlnd: Set the path to libz install prefix

When configure runs, it says that it has disabled mysqlnd compression
support, however phpinfo() (post compile) shows that compression is
available and that pdo_mysql is using mysqlnd. 

--

mysql

MySQL Support => enabled
Active Persistent Links => 0
Active Links => 0
Client API version => mysqlnd 5.0.7-dev - 091210 - $Revision: 300533 

--

mysqlnd

mysqlnd => enabled
Version => mysqlnd 5.0.7-dev - 091210 - $Revision: 300533 $
Compression => supported
SSL => supported
Command buffer size => 4096
Read buffer size => 32768
Read timeout => 31536000
Collecting statistics => Yes
Collecting memory statistics => No

--

PDO

PDO support => enabled
PDO drivers => sqlite, sqlite2, mysql

pdo_mysql

PDO Driver for MySQL => enabled
Client API version => mysqlnd 5.0.7-dev - 091210 - $Revision: 300533 $



Test script:
---------------
<?php
define("DATABASE_TYPE",	       'mysql');
define("DATABASE_USERNAME",    'dbuser');
define("DATABASE_PORT",	       '3306');
define("DATABASE_HOST",	       'db.server');
define("DATABASE_PASSWORD",    'dbpass');
define("DATABASE_DBNAME",      'dbname');

  try {
    	$o_dbh = new PDO(
    	   
DATABASE_TYPE.":host=".DATABASE_HOST.";port=".DATABASE_PORT.";dbname=".DATABASE_DBNAME,

			DATABASE_USERNAME, 
			DATABASE_PASSWORD,
			Array(
                PDO::MYSQL_ATTR_COMPRESS => true
            )
		);
  } catch (PDOException $o_e) {
     print $o_e->getMessage();
  }

Expected result:
----------------
No output, DB connection established, client compression enabled.

Actual result:
--------------
Error as follows:
Fatal error: Undefined class constant 'MYSQL_ATTR_COMPRESS' in test.php on
line 15

-- 
Edit bug report at http://bugs.php.net/bug.php?id=52529&edit=1
-- 
Try a snapshot (PHP 5.2):            http://bugs.php.net/fix.php?id=52529&r=trysnapshot52
Try a snapshot (PHP 5.3):            http://bugs.php.net/fix.php?id=52529&r=trysnapshot53
Try a snapshot (trunk):              http://bugs.php.net/fix.php?id=52529&r=trysnapshottrunk
Fixed in SVN:                        http://bugs.php.net/fix.php?id=52529&r=fixed
Fixed in SVN and need be documented: http://bugs.php.net/fix.php?id=52529&r=needdocs
Fixed in release:                    http://bugs.php.net/fix.php?id=52529&r=alreadyfixed
Need backtrace:                      http://bugs.php.net/fix.php?id=52529&r=needtrace
Need Reproduce Script:               http://bugs.php.net/fix.php?id=52529&r=needscript
Try newer version:                   http://bugs.php.net/fix.php?id=52529&r=oldversion
Not developer issue:                 http://bugs.php.net/fix.php?id=52529&r=support
Expected behavior:                   http://bugs.php.net/fix.php?id=52529&r=notwrong
Not enough info:                     http://bugs.php.net/fix.php?id=52529&r=notenoughinfo
Submitted twice:                     http://bugs.php.net/fix.php?id=52529&r=submittedtwice
register_globals:                    http://bugs.php.net/fix.php?id=52529&r=globals
PHP 4 support discontinued:          http://bugs.php.net/fix.php?id=52529&r=php4
Daylight Savings:                    http://bugs.php.net/fix.php?id=52529&r=dst
IIS Stability:                       http://bugs.php.net/fix.php?id=52529&r=isapi
Install GNU Sed:                     http://bugs.php.net/fix.php?id=52529&r=gnused
Floating point limitations:          http://bugs.php.net/fix.php?id=52529&r=float
No Zend Extensions:                  http://bugs.php.net/fix.php?id=52529&r=nozend
MySQL Configuration Error:           http://bugs.php.net/fix.php?id=52529&r=mysqlcfg



Thread (3 messages)

« previous php.bugs (#153072) next »