Hello community,
here is the log from the commit of package perl-DBD-mysql for openSUSE:Factory
checked in at Mon Aug 29 14:08:30 CEST 2011.
--------
--- perl-DBD-mysql/perl-DBD-mysql.changes 2011-05-09 23:53:40.000000000 +0200
+++ /mounts/work_src_done/STABLE/perl-DBD-mysql/perl-DBD-mysql.changes 2011-08-29 10:28:49.000000000 +0200
@@ -1,0 +2,17 @@
+Mon Aug 29 08:25:03 UTC 2011 - vcizek@suse.com
+
+- update to 4.020
+* Numerous (!! Thank you!!) fixes for prepared statements: Masahiro Chiba
+ - Chop blanks fixed
+ - UTF8 improvements
+ - fixed memory allocation for BLOBs
+ - auto-reconnect
+* Fix in leak test, which failed sometime due to first assignment $prev_size over
+paging (Masahiro Chiba)
+* Catalog test allows use of schemas other than 'test' (Masahiro Chiba)
+* Documentation fix for auto_reconnect (Karen Etheridge )
+* Win32 and general installation fixes (Alexandr Ciornii, http://chorny.net)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
DBD-mysql-4.019.tar.gz
New:
----
DBD-mysql-4.020.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ perl-DBD-mysql.spec ++++++
--- /var/tmp/diff_new_pack.GLKb5K/_old 2011-08-29 14:05:31.000000000 +0200
+++ /var/tmp/diff_new_pack.GLKb5K/_new 2011-08-29 14:05:31.000000000 +0200
@@ -21,7 +21,7 @@
Name: perl-DBD-mysql
%define cpan_name DBD-mysql
Summary: MySQL driver for the Perl5 Database Interface (DBI)
-Version: 4.019
+Version: 4.020
Release: 1
License: GPL+ or Artistic
Group: Development/Libraries/Perl
++++++ DBD-mysql-4.019.tar.gz -> DBD-mysql-4.020.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/ChangeLog new/DBD-mysql-4.020/ChangeLog
--- old/DBD-mysql-4.019/ChangeLog 2011-05-09 03:15:39.000000000 +0200
+++ new/DBD-mysql-4.020/ChangeLog 2011-08-20 20:39:24.000000000 +0200
@@ -1,25 +1,40 @@
-2011-05-08 Patrick Galbraith Rob Hoelz (4.019)
+2011-08-15 Patrick Galbraith <patg at patg dot net> (4.020)
+* Numerous (!! Thank you!!) fixes for prepared statements: Masahiro Chiba
+ - Chop blanks fixed
+ - UTF8 improvements
+ - fixed memory allocation for BLOBs
+ - auto-reconnect
+* Fix in leak test, which failed sometime due to first assignment $prev_size over
+paging (Masahiro Chiba)
+* Catalog test allows use of schemas other than 'test' (Masahiro Chiba)
+* Documentation fix for auto_reconnect (Karen Etheridge )
+* Win32 and general installation fixes (Alexandr Ciornii, http://chorny.net)
+
+
+2011-05-08 Patrick Galbraith <patg at patg dot net> Rob Hoelz <rhoelz at inoc dot com> (4.019)
* Asynchronous support added by Rob Hoelz - Thanks!
* Amiri Barksdale - Enable environment variables for installation options, add
docs to POD - Thanks!
* Pedro Melo - fix to change sv_undef to PL_sv_undef from 4.018 - Thanks!
-2010-10-11 Patrick Galbraith (4.018)
+2010-10-11 Patrick Galbraith <patg at patg dot net> (4.018)
* Added client and server info patch from Robert M. Jansen
* Added documentation and tests for new features
* More code cleanup
-2010-08-11 Patrick Galbraith (4.017)
+2010-08-11 Patrick Galbraith <patg at patg dot net> (4.017)
* BUG #60085, Andreas Koenig's patch for DBI changes
* Updated documents
-2010-07-10 Patrick Galbraith (4.016)
+2010-07-10 Patrick Galbraith <patg at patg dot net> (4.016)
* Disabled mysql_bind_type_guessing due to one performance issue
querying on a indexed character column unquoted will mean the index
is not used
* Fixed int types that should be bools
-2010-07-09 Patrick Galbraith (4.015)
+2010-07-09 Patrick Galbraith <patg at patg dot net> (4.015)
* BUG #56664 fixed t/40blobs.t skip_all logic (W. Phillip Moore)
* BUG #57253 Fixed iteration past end of string (crash). (Chris Butler)
* Added a new parameter for old behavior- mysql_bind_comment_placeholders which
@@ -27,7 +42,7 @@
want that behavior.
* Fixed bind_type_guessing - always on now
-2010-04-14 Patrick Galbraith (4.014)
+2010-04-14 Patrick Galbraith <patg at patg dot net> (4.014)
* BUG #30033 Fixed handling of comments to allow comments that contain characters
that might otherwise cause placeholder detection to not work properly
* BUG #53844, Fix for memory leak in stats. (Gregory Burmistrov)
@@ -37,7 +52,7 @@
* BUG #41630, Typo in Makefile
* Had to define true and false in dbdimp.h. Didn't work out of the box on Linux
-2009-09-16 Patrick Galbraith (4.013)
+2009-09-16 Patrick Galbraith <patg at patg dot net> (4.013)
* #49484: PATCH add support for MYSQL_INIT_COMMAND - Peter John Edwards
* #48242: 'mysql_bind_type_guessing' doesn't work correctly
@@ -45,7 +60,7 @@
* #45616: t/40blobs.t cannot pass without database access -
ServerError() not declared - Thanks ysth http://ysth.livejournal.com/
-2009-06-18 Patrick Galbraith (4.012)
+2009-06-18 Patrick Galbraith <patg at patg dot net> (4.012)
* Patch to bind_type_guessing from Craigslist,
Thanks to Chris! Happiness is no quoted numbers.
@@ -63,7 +78,7 @@
* Added bind-type-guessing options to Makefile.PL so the entire
test suite can be run with bind_type_guessing set.
-2009-04-13 Patrick Galbraith (4.011)
+2009-04-13 Patrick Galbraith <patg at patg dot net> (4.011)
* Renamed unsafe_bind_type_guessing, fixed some of the logic. This
can be used to deal with bug 43822
(https://rt.cpan.org/Ticket/Display.html?id=43822)
@@ -73,15 +88,15 @@
(https://rt.cpan.org/Ticket/Display.html?id=42723)
* Updated documentation, cruft cleanup (as always)
-2008-10-24 Patrick Galbraith (4.010)
+2008-10-24 Patrick Galbraith <patg at patg dot net> (4.010)
* Fix to dbd_bind_ph() for uninitialized value 'buffer_length'
thanks for bug report and patch from Askniel.com (thanks!)
-2008-10-21 Patrick Galbraith (4.009)
+2008-10-21 Patrick Galbraith <patg at patg dot net> (4.009)
* Fix to re-enable TAKE_IMP_DATA_VERSION. Still have to ensure DBI version 1.607 or higher
* Fix to escaped single quotes throwing off bind param detection. Patch from Zhurs (zhurs@yandex.ru) Spasibo!
-2008-8-15 Patrick Galbraith (4.008)
+2008-8-15 Patrick Galbraith <patg at patg dot net> (4.008)
* Multi statement patch, thanks to Chris Heath!
* Disabled TAKE_IMP_DATA_VERSION because segfault with DBI < 1.607
* #29528: bind_param(..., SQL_FLOAT) ignores exponents - fixed, Thanks to
@@ -90,19 +105,19 @@
http://rodgers.org.uk/ !
* Modified and disabled tests for MySQL version < 4.1 for unsupported features
-2008-5-11 Patrick Galbraith (4.007)
+2008-5-11 Patrick Galbraith <patg at patg dot net> (4.007)
* Took out mysql_server_init call where not needed
* Complete re-write of test suit to use Test::More - tons of cleanups!
* Makefile.PL changes to use current user in 'make test' if not defined
-2007-12-26 Patrick Galbraith (4.006)
+2007-12-26 Patrick Galbraith <patg at patg dot net> (4.006)
* Cleanups on OS X compile
* Fixes to syntax errors on AIX
* Removed test code that was leaving trace files around
-2007-3-22 Patrick Galbraith (4.005)
+2007-3-22 Patrick Galbraith <patg at patg dot net> (4.005)
* Fixed mysql_warning issue < 4.1 (reminers, patches, help from ROAM, (issue 25713)
* makerealclean patch from ROAM (issue #25714)
@@ -120,7 +135,7 @@
-2007-3-22 Patrick Galbraith Jim Winstead (4.004)
+2007-3-22 Patrick Galbraith <patg at patg dot net> Jim Winstead (4.004)
* Work around a bug in old 3.23 servers by specifying NOT NULL for fields used
as a primary key in tests. (Bug #20325, reported by Julian Ladisch)
* Add support for mysql_warning_count statement handle attribute. (Bug #25457,
@@ -135,11 +150,11 @@
* Fixed do_error definition (Scott Hildreth, Tim Bunce)
* Conversion of test suite to Test::More
-2007-3-5 Patrick Galbraith Jim Winstead (4.003)
+2007-3-5 Patrick Galbraith <patg at patg dot net> Jim Winstead (4.003)
* Fix inclusion of non-primary keys in primary_key_info. (Bug #26786,
reported and patch by Dave Rolsky)
-2007-3-1 Patrick Galbraith Jim Winstead (4.002)
+2007-3-1 Patrick Galbraith <patg at patg dot net> Jim Winstead (4.002)
* Fix re-exec of Makefile.PL when forcing $ENV{LANG} to 'C'. (RT #25233,
reported by Slaven Rezic)
* Rewrote table_info method to support all arguments (previously it would
@@ -169,7 +184,7 @@
Dave Rolsky, and final implementation based on Connector/J code)
-2007-1-8 Jim Winstead Patrick Galbraith (4.001)
+2007-1-8 Jim Winstead Patrick Galbraith <patg at patg dot net> (4.001)
* Fix handling of unsigned integer values in result sets when using
server-side prepared statements (they were not retrieved at all).
* Fix handling of signed integer values when using server-side prepared
@@ -209,7 +224,7 @@
* Tested with ALL mysql versions, fixed 40types, 40bind_param tests to work with 4.0, 4.1
* Fixed dbdimp.c to not test for MYSQL_DATA_TRUNCATED unless >= mysql 5.0
-2006-12-22 Patrick Galbraith , Alexey Stroganov (4.00)
+2006-12-22 Patrick Galbraith <patg at patg dot net>, Alexey Stroganov (4.00)
* Added Alexey Stroganov's patch which fixes varying number of columns in
multiple result sets. Added new test cases to 80procs.t based of his
test script (bug #21028) (Thanks Alexey!). Also fixed 80procs.t to allow
@@ -223,11 +238,11 @@
* Turned off prepared statements by default
* Tested this with 5.1, 5.0, 4.1, 4.0. Works with ALL these versions!
-2006-10-10 Patrick Galbraith , Alexey Stroganov (3.0009_1)
+2006-10-10 Patrick Galbraith <patg at patg dot net>, Alexey Stroganov (3.0009_1)
* Added fbind and bind alloc to dbd_st_describe. This was causing a crash
when using with mod_perl
-2006-10-10 Patrick Galbraith (3.0008_1)
+2006-10-10 Patrick Galbraith <patg at patg dot net> (3.0008_1)
* Added patch for SSL Verify Certificate (Thanks Eric Chen!)
* Added multiple fixes to dbd_st_prepare which fixed variable overwrite
and unset increment counter. Also improved loop which checks statements
@@ -238,7 +253,7 @@
(Thanks to Eric Milkie!)
* Fixed casting of num_params to unsigned int in calls to NewZ in mysql.xs
-2006-10-07 Patrick Galbraith , Jim Winstead
+2006-10-07 Patrick Galbraith <patg at patg dot net>, Jim Winstead
(3.0007_2)
* Added UTF8 patch from Dominic Mitchell (Thanks!)
* Fixed declaration of "row" in mysql_st_internal_execute which caused compile
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/INSTALL.html new/DBD-mysql-4.020/INSTALL.html
--- old/DBD-mysql-4.019/INSTALL.html 2011-05-09 03:20:17.000000000 +0200
+++ new/DBD-mysql-4.020/INSTALL.html 2011-08-20 20:40:49.000000000 +0200
@@ -4,15 +4,13 @@
<head>
<title>INSTALL - How to install and configure DBD::mysql</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
-<link rev="made" href="mailto:root@localhost" />
+<link rev="made" href="mailto:_www@b04.apple.com" />
</head>
<body style="background-color: white">
-
-<!-- INDEX BEGIN -->
-<div name="index">
<p><a name="__index__"></a></p>
+<!-- INDEX BEGIN -->
<ul>
@@ -47,11 +45,9 @@
<li><a href="#known_problems">KNOWN PROBLEMS</a></li>
<li><a href="#support">SUPPORT</a></li>
</ul>
-
-<hr name="index" />
-</div>
<!-- INDEX END -->
+<hr />
<p>
</p>
<h1><a name="name">NAME</a></h1>
@@ -92,7 +88,7 @@
<hr />
<h1><a name="prerequisites">PREREQUISITES</a></h1>
<dl>
-<dt><strong><a name="perl" class="item">Perl</a></strong></dt>
+<dt><strong><a name="item_perl">Perl</a></strong>
<dd>
<p>Preferrably a version of Perl, that comes preconfigured with
@@ -100,33 +96,40 @@
come with Perl. For Windows, ActivePerl is recommended, see
<a href="http://www.activestate.com">http://www.activestate.com</a> for details.</p>
</dd>
-<dt><strong><a name="mysql" class="item">MySQL</a></strong></dt>
+</li>
+<dt><strong><a name="item_mysql">MySQL</a></strong>
<dd>
<p>You need not install the actual MySQL database server, the
client files and the devlopment files are sufficient. For
example, Fedora Core 4 Linux distribution comes with RPM files
-(using YUM) <strong>mysql.i386</strong> and <strong>mysql-server.i386</strong> (use "yum search"
+(using YUM) <strong>mysql.i386</strong> and <strong>mysql-server.i386</strong> (use ``yum search''
to find exact package names). These are sufficient, if the MySQL
server is located on a foreign machine. You may also create client
files by compiling from the MySQL source distribution and using</p>
+</dd>
+<dd>
<pre>
configure --without-server</pre>
+</dd>
+<dd>
<p>If you are using Windows and need to compile from sources
(which is only the case if you are not using ActivePerl),
then you must ensure that the header and library files are
-installed. This may require choosing a "Custom installation"
+installed. This may require choosing a ``Custom installation''
and selecting the appropriate option when running the
MySQL setup program.</p>
</dd>
-<dt><strong><a name="dbi" class="item">DBI</a></strong></dt>
+</li>
+<dt><strong><a name="item_dbi">DBI</a></strong>
<dd>
<p>DBD::mysql is a DBI driver, hence you need DBI. It is available
from the same source where you got the DBD::mysql distribution
from.</p>
</dd>
-<dt><strong><a name="c_compiler" class="item">C compiler</a></strong></dt>
+</li>
+<dt><strong><a name="item_c_compiler">C compiler</a></strong>
<dd>
<p>A C compiler is only required, if you install from source. In
@@ -135,17 +138,21 @@
it is the same C compiler that was used for compiling Perl and
MySQL! Otherwise you will almost definitely encounter problems
because of differences in the underlying C runtime libraries.</p>
+</dd>
+<dd>
<p>In the worst case, this might mean to compile Perl and MySQL
yourself. But believe me, experience shows that a lot of problems
are fixed this way.</p>
</dd>
-<dt><strong><a name="gzip_libraries" class="item">Gzip libraries</a></strong></dt>
+</li>
+<dt><strong><a name="item_gzip_libraries">Gzip libraries</a></strong>
<dd>
<p>Late versions of MySQL come with support for compression. Thus
it <strong>may</strong> be required that you have install an RPM package like
libz-devel, libgz-devel or something similar.</p>
</dd>
+</li>
</dl>
<p>
</p>
@@ -246,7 +253,8 @@
(see <a href="#configuration">Configuration</a>) or automatically using the mysql_config binary
which comes with most MySQL distributions. If your MySQL distribution
contains mysql_config the easiest method is to ensure this binary
-is on your path.</p>
+is on your path.
+</p>
<pre>
e.g.</pre>
@@ -294,8 +302,8 @@
perl Makefile.PL
make
make test</pre>
-<p>(On Windows you may need to replace "make" with "nmake" or
-"dmake".) If the tests seem to look fine, you may continue with</p>
+<p>(On Windows you may need to replace ``make'' with ``nmake'' or
+``dmake''.) If the tests seem to look fine, you may continue with</p>
<pre>
make install</pre>
<p>If the compilation (make) or tests fail, you might need to
@@ -308,7 +316,7 @@
<p>
</p>
<h2><a name="configuration">Configuration</a></h2>
-<p>The install script "Makefile.PL" can be configured via a lot of
+<p>The install script ``Makefile.PL'' can be configured via a lot of
switches. All switches can be used on the command line. For
example, the test database:</p>
<pre>
@@ -318,75 +326,107 @@
This is described later on.</p>
<p>Available switches are:</p>
<dl>
-<dt><strong><a name="testdb" class="item">testdb</a></strong></dt>
+<dt><strong><a name="item_testdb">testdb</a></strong>
<dd>
<p>Name of the test database, defaults to <strong>test</strong>.</p>
</dd>
-<dt><strong><a name="testuser" class="item">testuser</a></strong></dt>
+</li>
+<dt><strong><a name="item_testuser">testuser</a></strong>
<dd>
<p>Name of the test user, defaults to empty. If the name is empty,
then the currently logged in users name will be used.</p>
</dd>
-<dt><strong><a name="testpassword" class="item">testpassword</a></strong></dt>
+</li>
+<dt><strong><a name="item_testpassword">testpassword</a></strong>
<dd>
<p>Password of the test user, defaults to empty.</p>
</dd>
-<dt><strong><a name="testhost" class="item">testhost</a></strong></dt>
+</li>
+<dt><strong><a name="item_testhost">testhost</a></strong>
<dd>
<p>Host name or IP number of the test database; defaults to localhost.</p>
</dd>
-<dt><strong><a name="testport" class="item">testport</a></strong></dt>
+</li>
+<dt><strong><a name="item_testport">testport</a></strong>
<dd>
<p>Port number of the test database</p>
</dd>
-<dt><strong><a name="ps_protcol_1_or_0" class="item">ps-protcol=1 or 0</a></strong></dt>
+</li>
+<dt><strong><a name="item_ps_2dprotcol_3d1_or_0">ps-protcol=1 or 0</a></strong>
<dd>
<p>Whether to run the test suite using server prepared statements or driver
emulated prepared statemetns. ps-protocol=1 means use server prepare,
ps-protocol=0 means driver emulated.</p>
</dd>
-<dt><strong><a name="cflags" class="item">cflags</a></strong></dt>
+</li>
+<dt><strong><a name="item_cflags">cflags</a></strong>
<dd>
<p>This is a list of flags that you want to give to the C compiler.
The most important flag is the location of the MySQL header files.
For example, on Red Hat Linux the header files are in /usr/include/mysql
and you might try</p>
+</dd>
+<dd>
<pre>
-I/usr/include/mysql</pre>
+</dd>
+<dd>
<p>On Windows the header files may be in C:\mysql\include and you might try</p>
+</dd>
+<dd>
<pre>
-IC:\mysql\include</pre>
+</dd>
+<dd>
<p>The default flags are determined by running</p>
+</dd>
+<dd>
<pre>
mysql_config --cflags</pre>
+</dd>
+<dd>
<p>More details on the C compiler flags can be found in the following
section. <a href="#compiler_flags">Compiler flags</a>.</p>
</dd>
-<dt><strong><a name="libs" class="item">libs</a></strong></dt>
+</li>
+<dt><strong><a name="item_libs">libs</a></strong>
<dd>
<p>This is a list of flags that you want to give to the linker
or loader. The most important flags are the locations and names
of additional libraries. For example, on Red Hat Linux your
MySQL client libraries are in /usr/lib/mysql and you might try</p>
+</dd>
+<dd>
<pre>
-L/usr/lib/mysql -lmysqlclient -lz</pre>
+</dd>
+<dd>
<p>On Windows the libraries may be in C:\mysql\lib and</p>
+</dd>
+<dd>
<pre>
-LC:\mysql\lib -lmysqlclient</pre>
+</dd>
+<dd>
<p>might be a good choice. The default flags are determined by running</p>
+</dd>
+<dd>
<pre>
mysql_config --libs</pre>
+</dd>
+<dd>
<p>More details on the linker flags can be found in a separate section.
<a href="#linker_flags">Linker flags</a>.</p>
</dd>
+</li>
</dl>
<p>If a switch is not present on the command line, then the
script <code>mysql_config</code> will be executed. This script comes
@@ -408,7 +448,7 @@
flags for the C compiler. The linker flags, which you find in
the next section, are another story.</p>
<p>The determination of the C compiler flags is usually left to
-a configuration script called <em class="file">mysql_config</em>, which can be
+a configuration script called <em>mysql_config</em>, which can be
invoked with</p>
<pre>
mysql_config --cflags</pre>
@@ -418,12 +458,12 @@
-L/usr/include/mysql</pre>
<p>The C compiler must find some header files. Header files have
the extension <code>.h</code>. MySQL header files are, for example,
-<em class="file">mysql.h</em> and <em class="file">mysql_version.h</em>. In most cases the header
+<em>mysql.h</em> and <em>mysql_version.h</em>. In most cases the header
files are not installed by default. For example, on Windows
it is an installation option of the MySQL setup program
(Custom installation), whether the header files are installed
or not. On Red Hat Linux, you need to install an RPM archive
-<em class="file">mysql-devel</em> or <em class="file">MySQL-devel</em>.</p>
+<em>mysql-devel</em> or <em>MySQL-devel</em>.</p>
<p>If you know the location of the header files, then you will
need to add an option</p>
<pre>
@@ -437,7 +477,7 @@
you'll find more details in the troubleshooting section.
<a href="#known_problems">KNOWN PROBLEMS</a></p>
<p>The determination of the C compiler flags is usually left to
-a configuration script called <em class="file">mysql_config</em>, which can be
+a configuration script called <em>mysql_config</em>, which can be
invoked with</p>
<pre>
mysql_config --libs</pre>
@@ -448,34 +488,52 @@
<p>The following items typically need to be configured for the
linker:</p>
<dl>
-<dt><strong><a name="the_mysqlclient_library" class="item">The mysqlclient library</a></strong></dt>
+<dt><strong><a name="item_the_mysqlclient_library">The mysqlclient library</a></strong>
<dd>
<p>The MySQL client library comes as part of the MySQL distribution.
Depending on your system it may be a file called</p>
+</dd>
+<dd>
<pre>
F<libmysqlclient.a> statically linked library, Unix
F<libmysqlclient.so> dynamically linked library, Unix
F<mysqlclient.lib> statically linked library, Windows
F<mysqlclient.dll> dynamically linked library, Windows</pre>
+</dd>
+<dd>
<p>or something similar.</p>
+</dd>
+<dd>
<p>As in the case of the header files, the client library is typically
not installed by default. On Windows you will need to select them
while running the MySQL setup program (Custom installation). On
-Red Hat Linux an RPM archive <em class="file">mysql-devel</em> or <em class="file">MySQL-devel</em> must
+Red Hat Linux an RPM archive <em>mysql-devel</em> or <em>MySQL-devel</em> must
be installed.</p>
+</dd>
+<dd>
<p>The linker needs to know the location and name of the mysqlclient
library. This can be done by adding the flags</p>
+</dd>
+<dd>
<pre>
-L<lib directory> -lmysqlclient</pre>
+</dd>
+<dd>
<p>or by adding the complete path name. Examples:</p>
+</dd>
+<dd>
<pre>
-L/usr/lib/mysql -lmysqlclient
-LC:\mysql\lib -lmysqlclient</pre>
+</dd>
+<dd>
<p>If you would like to use the static libraries (and there are
excellent reasons to do so), you need to create a separate
directory, copy the static libraries to that place and use
the -L switch above to point to your new directory. For example:</p>
+</dd>
+<dd>
<pre>
mkdir /tmp/mysql-static
cp /usr/lib/mysql/*.a /tmp/mysql-static
@@ -485,20 +543,28 @@
make install
rm -rf /tmp/mysql-static</pre>
</dd>
-<dt><strong><a name="the_gzip_library" class="item">The gzip library</a></strong></dt>
+</li>
+<dt><strong><a name="item_the_gzip_library">The gzip library</a></strong>
<dd>
<p>The MySQL client can use compression when talking to the MySQL
server, a nice feature when sending or receiving large texts over
a slow network.</p>
+</dd>
+<dd>
<p>On Unix you typically find the appropriate file name by running</p>
+</dd>
+<dd>
<pre>
ldconfig -p | grep libz
ldconfig -p | grep libgz</pre>
+</dd>
+<dd>
<p>Once you know the name (libz.a or libgz.a is best), just add it
to the list of linker flags. If this seems to be causing problem
you may also try to link without gzip libraries.</p>
</dd>
+</li>
</dl>
<p>
</p>
@@ -532,53 +598,64 @@
unstable.</p>
<p>Install MySQL (if you havn't already)</p>
<dl>
-<dt><strong><a name="_" class="item">-</a></strong></dt>
+<dt><strong><a name="item__2d">-</a></strong>
<dd>
<p>download the MySQL Windows Binaries from
<a href="http://www.mysql.com/downloads/index.html">http://www.mysql.com/downloads/index.html</a></p>
</dd>
-<dt><strong><a name="_2" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>unzip mysql-<version>-win.zip into some temporary location</p>
</dd>
-<dt><strong><a name="_3" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>start the setup.exe there and follow the instructions</p>
</dd>
-<dt><strong><a name="_4" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>start the server</p>
</dd>
-<dt><strong><a name="_5" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>alternatively download, install and start the server on a remote
server, on what supported OS ever</p>
</dd>
+</li>
</dl>
<p>Build MySQL clients under Cygwin:</p>
<dl>
-<dt><strong><a name="_6" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<p>download the MySQL LINUX source from
<a href="http://www.mysql.com/downloads/index.html">http://www.mysql.com/downloads/index.html</a></p>
</dd>
-<dt><strong><a name="_7" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>unpack mysql-<version>.tar.gz into some tmp location</p>
</dd>
-<dt><strong><a name="_8" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>cd into the unpacked dir mysql-<version></p>
+</dd>
+<dd>
<pre>
./configure --prefix=/usr/local/mysql --without-server</pre>
+</dd>
+<dd>
<p>This prepares the Makefile with the installed Cygwin features. It
takes some time, but should finish without error. The 'prefix', as
given, installs the whole Cygwin/MySQL thingy into a location not
@@ -586,35 +663,46 @@
Windows binaries. The --without-server parameter tells configure to
only build the clients.</p>
</dd>
-<dt><strong><a name="_9" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<pre>
make</pre>
+</dd>
+<dd>
<p>This builds all MySQL client parts ... be patient. It should finish
finally without any error.</p>
</dd>
-<dt><strong><a name="_10" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<pre>
make install</pre>
+</dd>
+<dd>
<p>This installs the compiled client files under /usr/local/mysql/.
Remember, you don't need anything except the library under
/usr/local/mysql/lib and the headers under /usr/local/mysql/include!</p>
+</dd>
+<dd>
<p>Essentially you are now done with this part. If you want, you may try
your compiled binaries shortly; for that, do:</p>
</dd>
-<dt><strong><a name="_11" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<pre>
cd /usr/local/mysql/bin
./mysql -h 127.0.0.1</pre>
+</dd>
+<dd>
<p>The host (-h) parameter 127.0.0.1 targets the local host, but forces
the mysql client to use a TCP/IP connection. The default would be a
pipe/socket connection (even if you say '-h localhost') and this
doesn't work between Cygwin and Windows (as far as I know).</p>
+</dd>
+<dd>
<p>If you have your MySQL server running on some other box, then please
substitute '127.0.0.1' with the name or IP-number of that box.</p>
</dd>
@@ -633,64 +721,77 @@
<p>You are now ready to build DBD::mysql!</p>
<p>Build DBD::mysql:</p>
<dl>
-<dt><strong><a name="_12" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<p>download DBD-mysql-<version>.tar.gz from CPAN</p>
</dd>
-<dt><strong><a name="_13" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>unpack DBD-mysql-<version>.tar.gz</p>
</dd>
-<dt><strong><a name="_14" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<p>cd into unpacked dir DBD-mysql-<version>
you probably did that already, if you are reading this!</p>
</dd>
-<dt><strong><a name="_15" class="item">-</a></strong></dt>
+</li>
+<dt><strong>-</strong>
<dd>
<pre>
cp /usr/local/mysql/bin/mysql_config .</pre>
+</dd>
+<dd>
<p>This copies the executable script mentioned in the DBD::mysql docs
from your just built Cywin/MySQL client directory; it knows about
your Cygwin installation, especially about the right libraries to link
with.</p>
</dd>
-<dt><strong><a name="_16" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<pre>
perl Makefile.PL --testhost=127.0.0.1</pre>
+</dd>
+<dd>
<p>The --testhost=127.0.0.1 parameter again forces a TCP/IP connection
to the MySQL server on the local host instead of a pipe/socket
connection for the 'make test' phase.</p>
</dd>
-<dt><strong><a name="_17" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<pre>
make</pre>
+</dd>
+<dd>
<p>This should run without error</p>
</dd>
-<dt><strong><a name="_18" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<pre>
make test</pre>
+</dd>
+<dd>
<p>with DBD-mysql-2.1022 or earlier you will see several errors in
dbdadmin.t, mysql.t and mysql2.t; with later versions you should not
get errors (except possibly one, indicating, that some tables could
not be dropped. I'm hunting for a solution to that problem, but have
none yet).</p>
</dd>
-<dt><strong><a name="_19" class="item">-</a></strong></dt>
+<dt><strong>-</strong>
<dd>
<pre>
make install</pre>
+</dd>
+<dd>
<p>This installs DBD::mysql into the Perl hierarchy.</p>
</dd>
</dl>
@@ -705,10 +806,10 @@
<hr />
<h1><a name="known_problems">KNOWN PROBLEMS</a></h1>
<ol>
-<li><strong><a name="_" class="item">)</a></strong>
+<li><strong><a name="item__29">)</a></strong>
<p>Some Linux distributions don't come with a gzip library by default.
-Running "make" terminates with an error message like</p>
+Running ``make'' terminates with an error message like</p>
<pre>
LD_RUN_PATH="/usr/lib/mysql:/lib:/usr/lib" gcc
-o blib/arch/auto/DBD/mysql/mysql.so -shared
@@ -722,11 +823,11 @@
libz-devel, libgz-devel, zlib-devel or gzlib-devel or something
similar.</p>
</li>
-<li><strong><a name="_2" class="item">)</a></strong>
+<li><strong>)</strong>
<p>If Perl was compiled with gcc or egcs, but MySQL was compiled
with another compiler or on another system, an error message like
-this is very likely when running "Make test":</p>
+this is very likely when running ``Make test'':</p>
<pre>
t/00base............install_driver(mysql) failed: Can't load
'../blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql:
@@ -747,7 +848,7 @@
-L<directory> -lgcc</pre>
<p>to the list of C compiler flags. <a href="#configuration">Configuration</a>. <a href="#linker_flags">Linker flags</a>.</p>
</li>
-<li><strong><a name="_3" class="item">)</a></strong>
+<li><strong>)</strong>
<p>There are known problems with shared versions of libmysqlclient,
at least on some Linux boxes. If you receive an error message
@@ -771,7 +872,7 @@
previous section on linker flags. <a href="#configuration">Configuration</a>.
<a href="#linker_flags">Linker flags</a>.</p>
</li>
-<li><strong><a name="_4" class="item">)</a></strong>
+<li><strong>)</strong>
<p>Red Hat 8 & 9 set the Default locale to UTF which causes problems with
MakeMaker. To build DBD::mysql on these systems, do a 'unset LANG'
@@ -788,7 +889,8 @@
<a href="http://www.mysql.com">http://www.mysql.com</a> for archive locations.</p>
<p>If you don't find an appropriate posting and reply in the
mailing list, please post a question. Typically a reply will
-be seen within one or two days.</p>
+be seen within one or two days.
+</p>
</body>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/META.yml new/DBD-mysql-4.020/META.yml
--- old/DBD-mysql-4.019/META.yml 2011-05-09 03:20:17.000000000 +0200
+++ new/DBD-mysql-4.020/META.yml 2011-08-20 20:40:49.000000000 +0200
@@ -1,23 +1,27 @@
--- #YAML:1.0
name: DBD-mysql
-version: 4.019
+version: 4.020
abstract: A MySQL driver for the Perl5 Database Interface (DBI)
author:
- Rudy Lippan
-license: unknown
+license: perl
distribution_type: module
configure_requires:
- ExtUtils::MakeMaker: 0
+ DBI: 1.08
build_requires:
ExtUtils::MakeMaker: 0
requires:
Data::Dumper: 0
DBI: 1.08
+ perl: 5.005
+ Test::More: 0
+resources:
+ repository: https://github.com/CaptTofu/DBD-mysql
no_index:
directory:
- t
- inc
-generated_by: ExtUtils::MakeMaker version 6.55_02
+generated_by: ExtUtils::MakeMaker version 6.54
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/Makefile.PL new/DBD-mysql-4.020/Makefile.PL
--- old/DBD-mysql-4.019/Makefile.PL 2011-05-09 03:12:07.000000000 +0200
+++ new/DBD-mysql-4.020/Makefile.PL 2011-08-20 20:35:59.000000000 +0200
@@ -1,5 +1,6 @@
# -*- cperl -*-
+use 5.005;
use Config;
BEGIN {
@@ -356,9 +357,22 @@
'A MySQL driver for the Perl5 Database Interface (DBI)';
$o{'PREREQ_PM'} = { 'DBI' => 1.08,
'Data::Dumper' => 0 };
+ %o=(%o,
+ LICENSE => 'perl',
+ MIN_PERL_VERSION => '5.005',
+ META_MERGE => {
+ resources => {
+ repository => 'https://github.com/CaptTofu/DBD-mysql',
+ },
+ },
+ BUILD_REQUIRES => { 'Test::More' => 0,
+ },
+ CONFIGURE_REQUIRES => { 'DBI' => 1.08,
+ },
+ );
}
-ExtUtils::MakeMaker::WriteMakefile(%o);
+WriteMakefile1(%o);
exit 0;
@@ -930,6 +944,30 @@
package main;
+
+
+sub WriteMakefile1 { #Written by Alexandr Ciornii, version 0.21. Added by eumm-upgrade.
+ my %params=@_;
+ my $eumm_version=$ExtUtils::MakeMaker::VERSION;
+ $eumm_version=eval $eumm_version;
+ die "EXTRA_META is deprecated" if exists $params{EXTRA_META};
+ die "License not specified" if not exists $params{LICENSE};
+ if ($params{BUILD_REQUIRES} and $eumm_version < 6.5503) {
+ #EUMM 6.5502 has problems with BUILD_REQUIRES
+ $params{PREREQ_PM}={ %{$params{PREREQ_PM} || {}} , %{$params{BUILD_REQUIRES}} };
+ delete $params{BUILD_REQUIRES};
+ }
+ delete $params{CONFIGURE_REQUIRES} if $eumm_version < 6.52;
+ delete $params{MIN_PERL_VERSION} if $eumm_version < 6.48;
+ delete $params{META_MERGE} if $eumm_version < 6.46;
+ delete $params{META_ADD} if $eumm_version < 6.46;
+ delete $params{LICENSE} if $eumm_version < 6.31;
+ delete $params{AUTHOR} if $] < 5.005;
+ delete $params{ABSTRACT_FROM} if $] < 5.005;
+ delete $params{BINARY_LOCATION} if $] < 5.005;
+
+ ExtUtils::MakeMaker::WriteMakefile(%params);
+}
__DATA__
my %opts = ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/dbdimp.c new/DBD-mysql-4.020/dbdimp.c
--- old/DBD-mysql-4.019/dbdimp.c 2011-05-09 03:11:37.000000000 +0200
+++ new/DBD-mysql-4.020/dbdimp.c 2011-08-20 20:35:59.000000000 +0200
@@ -3351,6 +3351,9 @@
*/
else
{
+ /* mysql_stmt_store_result to update MYSQL_FIELD->max_length */
+ my_bool on = 1;
+ mysql_stmt_attr_set(stmt, STMT_ATTR_UPDATE_MAX_LENGTH, &on);
/* Get the total rows affected and return */
if (mysql_stmt_store_result(stmt))
goto error;
@@ -3443,12 +3446,6 @@
if (imp_sth->use_server_side_prepare && ! imp_sth->use_mysql_use_result)
{
- if (DBIc_ACTIVE(imp_sth) && !(mysql_st_clean_cursor(sth, imp_sth)))
- {
- do_error(sth, JW_ERR_SEQUENCE,
- "Error happened while tried to clean up stmt", NULL);
- return 0;
- }
imp_sth->row_num= mysql_st_internal_execute41(
sth,
DBIc_NUM_PARAMS(imp_sth),
@@ -3590,20 +3587,23 @@
PerlIO_printf(DBILOGFP,"\t\ti %d col_type %d fbh->length %d\n",
i, col_type, (int) fbh->length);
PerlIO_printf(DBILOGFP,
- "\t\tfields[i].length %d fields[i].type %d fields[i].charsetnr %d\n",
- (int) fields[i].length, fields[i].type,
+ "\t\tfields[i].length %lu fields[i].max_length %lu fields[i].type %d fields[i].charsetnr %d\n",
+ (long unsigned int) fields[i].length, (long unsigned int) fields[i].max_length, fields[i].type,
fields[i].charsetnr);
}
fbh->charsetnr = fields[i].charsetnr;
+#if MYSQL_VERSION_ID < FIELD_CHARSETNR_VERSION
+ fbh->flags = fields[i].flags;
+#endif
buffer->buffer_type= mysql_to_perl_type(col_type);
if (DBIc_TRACE_LEVEL(imp_xxh) >= 2)
PerlIO_printf(DBILOGFP, "\t\tmysql_to_perl_type returned %d\n",
col_type);
- buffer->buffer_length= fields[i].length;
+ buffer->buffer_length= fields[i].max_length ? fields[i].max_length : fields[i].length;
buffer->length= &(fbh->length);
buffer->is_null= &(fbh->is_null);
- Newz(908, fbh->data, fields[i].length, char);
+ Newz(908, fbh->data, buffer->buffer_length, char);
switch (buffer->buffer_type) {
case MYSQL_TYPE_DOUBLE:
@@ -3824,24 +3824,43 @@
sv_setiv(sv, fbh->ldata);
break;
- case MYSQL_TYPE_STRING:
- if (DBIc_TRACE_LEVEL(imp_xxh) >= 2)
- PerlIO_printf(DBILOGFP, "\t\tst_fetch string data %s\n", fbh->data);
- sv_setpvn(sv, fbh->data, fbh->length);
- /*HELMUT*/
-#ifdef sv_utf8_decode
- if(imp_dbh->enable_utf8)
- sv_utf8_decode(sv);
-#endif
- break;
-
default:
if (DBIc_TRACE_LEVEL(imp_xxh) >= 2)
PerlIO_printf(DBILOGFP, "\t\tERROR IN st_fetch_string");
- sv_setpvn(sv, fbh->data, fbh->length);
+ STRLEN len= fbh->length;
+ /* ChopBlanks */
+ if (ChopBlanks)
+ {
+#if MYSQL_VERSION_ID >= FIELD_CHARSETNR_VERSION
+ /* see bottom of: http://www.mysql.org/doc/refman/5.0/en/c-api-datatypes.html */
+ if (fbh->charsetnr != 63)
+#else
+ if (!(fbh->flags & BINARY_FLAG))
+#endif
+ while (len && fbh->data[len-1] == ' ')
+ { --len; }
+ }
+ /* END OF ChopBlanks */
+
+ sv_setpvn(sv, fbh->data, len);
+
+ /* UTF8 */
+ /*HELMUT*/
+#if defined(sv_utf8_decode) && MYSQL_VERSION_ID >=SERVER_PREPARE_VERSION
+
+#if MYSQL_VERSION_ID >= FIELD_CHARSETNR_VERSION
+ /* see bottom of: http://www.mysql.org/doc/refman/5.0/en/c-api-datatypes.html */
+ if (imp_dbh->enable_utf8 && fbh->charsetnr != 63)
+#else
+ if (imp_dbh->enable_utf8 && !(fbh->flags & BINARY_FLAG))
+#endif
+ sv_utf8_decode(sv);
+#endif
+ /* END OF UTF8 */
break;
}
+
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/dbdimp.h new/DBD-mysql-4.020/dbdimp.h
--- old/DBD-mysql-4.019/dbdimp.h 2011-05-09 03:11:37.000000000 +0200
+++ new/DBD-mysql-4.020/dbdimp.h 2011-08-20 20:35:59.000000000 +0200
@@ -27,7 +27,12 @@
/* For now, we hardcode this, but in the future,
* we can detect capabilities of the MySQL libraries
* we're talking to */
+#if defined(__WIN__)
+#define MYSQL_ASYNC 0
+#else
#define MYSQL_ASYNC 1
+#endif
+
/*
* This is the version of MySQL wherer
@@ -212,6 +217,9 @@
int charsetnr;
double ddata;
long ldata;
+#if MYSQL_VERSION_ID < FIELD_CHARSETNR_VERSION
+ unsigned int flags;
+#endif
} imp_sth_fbh_t;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/lib/DBD/mysql.pm new/DBD-mysql-4.020/lib/DBD/mysql.pm
--- old/DBD-mysql-4.019/lib/DBD/mysql.pm 2011-05-09 03:15:17.000000000 +0200
+++ new/DBD-mysql-4.020/lib/DBD/mysql.pm 2011-08-20 20:39:24.000000000 +0200
@@ -1,6 +1,7 @@
# -*- cperl -*-
package DBD::mysql;
+use 5.005; #$! is used
use strict;
use vars qw(@ISA $VERSION $err $errstr $drh);
@@ -9,7 +10,7 @@
use Carp ();
@ISA = qw(DynaLoader);
-$VERSION = '4.019';
+$VERSION = '4.020';
bootstrap DBD::mysql $VERSION;
@@ -1304,6 +1305,13 @@
AutoCommit is turned off, and when AutoCommit is turned off, DBD::mysql will
not automatically reconnect to the server.
+It is also possible to set the default value of the C
+attribute for the $dbh by passing it in the C<\%attr> hash for C<DBI->connect>.
+
+Note that if you are using a module or framework that performs reconnections
+for you (for example LDBIx::Connector in fixup mode), this value must be set
+to 0.
+
=item mysql_use_result
This attribute forces the driver to use mysql_use_result rather than
@@ -1311,8 +1319,8 @@
tends to block other processes. (That's why mysql_store_result is the
default.)
-It is possible to set default value of the C attribute
-for $dbh using several ways:
+It is possible to set the default value of the C attribute
+for the $dbh using several ways:
- through DSN
@@ -1324,7 +1332,7 @@
$dbh->{'mysql_use_result'}=1; #enable
It is possible to set/unset the C attribute after
-creation of statement handle. See below.
+creation of the statement handle. See below.
=item mysql_enable_utf8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/mysql.xs new/DBD-mysql-4.020/mysql.xs
--- old/DBD-mysql-4.019/mysql.xs 2011-05-09 03:11:37.000000000 +0200
+++ new/DBD-mysql-4.020/mysql.xs 2011-08-20 20:35:59.000000000 +0200
@@ -325,7 +325,9 @@
stmt= mysql_stmt_init(imp_dbh->pmysql);
- if (mysql_stmt_prepare(stmt, str_ptr, strlen(str_ptr)))
+ if ((mysql_stmt_prepare(stmt, str_ptr, strlen(str_ptr))) &&
+ (!mysql_db_reconnect(dbh) ||
+ (mysql_stmt_prepare(stmt, str_ptr, strlen(str_ptr)))))
{
/*
For commands that are not supported by server side prepared
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/t/40catalog.t new/DBD-mysql-4.020/t/40catalog.t
--- old/DBD-mysql-4.019/t/40catalog.t 2011-05-09 03:11:37.000000000 +0200
+++ new/DBD-mysql-4.020/t/40catalog.t 2011-08-20 20:35:59.000000000 +0200
@@ -63,7 +63,7 @@
is($info->[0]->{FKTABLE_NAME}, "child");
is($info->[0]->{FKCOLUMN_NAME}, "parent_id");
- $sth= $dbh->foreign_key_info(undef, 'test', 'parent', undef, undef, undef);
+ $sth= $dbh->foreign_key_info(undef, undef, 'parent', undef, undef, undef);
($info)= $sth->fetchall_arrayref({});
is($info->[0]->{PKTABLE_NAME}, "parent");
@@ -71,7 +71,7 @@
is($info->[0]->{FKTABLE_NAME}, "child");
is($info->[0]->{FKCOLUMN_NAME}, "parent_id");
- $sth= $dbh->foreign_key_info(undef, undef, undef, undef, 'test', 'child');
+ $sth= $dbh->foreign_key_info(undef, undef, undef, undef, undef, 'child');
($info)= $sth->fetchall_arrayref({});
is($info->[0]->{PKTABLE_NAME}, "parent");
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/t/40server_prepare.t new/DBD-mysql-4.020/t/40server_prepare.t
--- old/DBD-mysql-4.019/t/40server_prepare.t 2011-05-08 16:23:14.000000000 +0200
+++ new/DBD-mysql-4.020/t/40server_prepare.t 2011-08-20 20:35:59.000000000 +0200
@@ -19,7 +19,7 @@
if ($@) {
plan skip_all => "ERROR: $@. Can't continue test";
}
-plan tests => 21;
+plan tests => 27;
ok(defined $dbh, "connecting");
@@ -68,4 +68,17 @@
ok ($dbh->do(qq{DROP TABLE t2}), "cleaning up");
+#
+# Bug LONGBLOB wants 4GB memory
+#
+ok($dbh->do(qq{DROP TABLE IF EXISTS t3}), "making slate clean");
+ok($dbh->do(q{CREATE TABLE t3 (id INT, mydata LONGBLOB)}), "creating test table");
+my $sth3;
+ok($sth3 = $dbh->prepare(q{INSERT INTO t3 VALUES (?,?)}));
+ok($sth3->execute(1, 2), "insert t3");
+
+is_deeply($dbh->selectall_arrayref('SELECT id, mydata FROM t3'), [[1, 2]]);
+
+ok ($dbh->do(qq{DROP TABLE t3}), "cleaning up");
+
$dbh->disconnect();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/t/50chopblanks.t new/DBD-mysql-4.020/t/50chopblanks.t
--- old/DBD-mysql-4.019/t/50chopblanks.t 2011-05-08 16:23:14.000000000 +0200
+++ new/DBD-mysql-4.020/t/50chopblanks.t 2011-08-20 20:35:59.000000000 +0200
@@ -22,7 +22,11 @@
plan skip_all =>
"ERROR: $DBI::errstr. Can't continue test";
}
-plan tests => 29;
+plan tests => 29 * 2;
+
+for my $mysql_server_prepare (0, 1) {
+eval {$dbh= DBI->connect($test_dsn . ';mysql_server_prepare=' . $mysql_server_prepare, $test_user, $test_password,
+ { RaiseError => 1, PrintError => 1, AutoCommit => 0 });};
ok $dbh->do("DROP TABLE IF EXISTS $table"), "drop table if exists $table";
@@ -75,3 +79,4 @@
ok $sth2->finish;
ok $dbh->do("DROP TABLE $table"), "drop $table";
ok $dbh->disconnect;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/t/55utf8.t new/DBD-mysql-4.020/t/55utf8.t
--- old/DBD-mysql-4.019/t/55utf8.t 2011-05-08 16:23:14.000000000 +0200
+++ new/DBD-mysql-4.020/t/55utf8.t 2011-08-20 20:35:59.000000000 +0200
@@ -28,7 +28,11 @@
plan skip_all =>
"SKIP TEST: You must have MySQL version 5.0 and greater for this test to run";
}
-plan tests => 15;
+plan tests => 16 * 2;
+
+for my $mysql_server_prepare (0, 1) {
+$dbh= DBI->connect($test_dsn . ';mysql_server_prepare=' . $mysql_server_prepare, $test_user, $test_password,
+ { RaiseError => 1, PrintError => 1, AutoCommit => 0 });
ok $dbh->do("DROP TABLE IF EXISTS $table");
@@ -37,7 +41,8 @@
name VARCHAR(64) CHARACTER SET utf8,
bincol BLOB,
shape GEOMETRY,
- binutf VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin
+ binutf VARCHAR(64) CHARACTER SET utf8 COLLATE utf8_bin,
+ profile TEXT CHARACTER SET utf8
)
EOT
@@ -57,13 +62,13 @@
$dbh->{mysql_enable_utf8}=1;
my $query = <do($query, {}, $utf8_str,$blob, $utf8_str), "INSERT query $query\n";
+ok $dbh->do($query, {}, $utf8_str, $blob, $utf8_str, $utf8_str), "INSERT query $query\n";
-$query = "SELECT name,bincol,asbinary(shape), binutf FROM $table LIMIT 1";
+$query = "SELECT name,bincol,asbinary(shape), binutf, profile FROM $table LIMIT 1";
my $sth = $dbh->prepare($query) or die "$DBI::errstr";
ok $sth->execute;
@@ -76,6 +81,7 @@
cmp_ok $ref->[0], 'eq', $utf8_str;
cmp_ok $ref->[3], 'eq', $utf8_str;
+cmp_ok $ref->[4], 'eq', $utf8_str;
SKIP: {
eval {use Encode;};
@@ -92,3 +98,4 @@
ok $dbh->do("DROP TABLE $table");
ok $dbh->disconnect;
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/t/60leaks.t new/DBD-mysql-4.020/t/60leaks.t
--- old/DBD-mysql-4.019/t/60leaks.t 2011-05-08 16:23:14.000000000 +0200
+++ new/DBD-mysql-4.020/t/60leaks.t 2011-08-20 20:35:59.000000000 +0200
@@ -89,6 +89,10 @@
$not_ok++;
}
}
+ else {
+ $prev_size = $size;
+ $size = size();
+ }
$prev_size = $size;
}
}
@@ -121,6 +125,10 @@
$not_ok++;
}
}
+ else {
+ $prev_size = $size;
+ $size = size();
+ }
$prev_size = $size;
}
}
@@ -168,6 +176,10 @@
++$not_ok;
}
}
+ else {
+ $prev_size = $size;
+ $size = size();
+ }
$prev_size = $size;
}
}
@@ -202,6 +214,10 @@
++$not_ok;
}
}
+ else {
+ $prev_size = $size;
+ $size = size();
+ }
$prev_size = $size;
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/DBD-mysql-4.019/t/mysql.mtest new/DBD-mysql-4.020/t/mysql.mtest
--- old/DBD-mysql-4.019/t/mysql.mtest 2011-05-09 03:17:10.000000000 +0200
+++ new/DBD-mysql-4.020/t/mysql.mtest 2011-08-20 20:40:00.000000000 +0200
@@ -3,13 +3,13 @@
'embedded' => '',
'ssl' => 0,
'nocatchstderr' => 0,
- 'libs' => '-rdynamic -L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm',
- 'testhost' => '127.0.0.1',
+ 'libs' => '-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lm',
+ 'testhost' => '',
'nofoundrows' => 0,
'testdb' => 'test',
- 'cflags' => '-I/usr/local/mysql/include/mysql -g -DUNIV_LINUX -DUNIV_LINUX',
- 'testuser' => 'ec2-user',
- 'testpassword' => 's3kr1t',
+ 'cflags' => '-I/usr/local/mysql/include/mysql -g -Wextra -Wwrite-strings -m64 -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_VIRTUAL',
+ 'testuser' => 'root',
+ 'testpassword' => '',
'testsocket' => ''
};
$::test_host = $opt->{'testhost'};
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org