Commit Graph

556 Commits

Author SHA1 Message Date
Andrey Hristov
86cc5d9325 MFB : fix the build 2008-03-18 17:32:03 +00:00
Andrey Hristov
e53f44b9bd MFB - Bug #44352 mysqli_connect_error() false negative for host errors 2008-03-18 16:58:43 +00:00
Andrey Hristov
60869b3e8e Update mysqlnd, ext/mysql and ext/mysqli - now possible to compile with different
configurations one or the another extension to use libmysql or mysqlnd mixed in
one binary
2008-03-10 20:27:15 +00:00
Johannes Schlüter
e883735e64 Fix typo 2008-03-10 13:38:23 +00:00
Johannes Schlüter
0cd7f31de0 - Fix build with older MySQL 2008-03-10 13:26:15 +00:00
Andrey Hristov
a8e4046c72 - Fix a warning in php_mysql.c
- Fixed #44371 Extension compile failed
2008-03-10 09:16:13 +00:00
Andrey Hristov
cd9b7889ec Bug fixed in MySQL 5.0.46 2008-03-08 15:17:45 +00:00
Andrey Hristov
f20d47c541 MFB:
- Fixed problem with $mysqli->connect() not connecting with defaults
- Fixed leak (#39475)
2008-03-08 15:16:08 +00:00
Felipe Pena
2818d4fc51 New way for check void parameters 2008-03-04 23:39:15 +00:00
Andrey Hristov
237e147191 Fix test. Now passes. 2008-02-20 18:28:37 +00:00
Andrey Hristov
d5aaeda6e4 Fix a failing test 2008-02-19 17:22:05 +00:00
Andrey Hristov
7b0625865b Fix a compile warning + test 2008-02-19 15:38:24 +00:00
Andrey Hristov
038a533d65 Fix Windows build. VC doesn't like nested macros - expansion + #if 2008-02-12 22:06:06 +00:00
Johannes Schlüter
35bfb9028f - Fix build with TSRM and mysqlnd 2008-02-12 20:18:56 +00:00
Antony Dovgal
4a7c24b267 nuke unnecessary TSRMLS_FETCH() 2008-02-12 10:54:27 +00:00
Andrey Hristov
a4c1bc02b7 Fix typo 2008-02-12 10:51:25 +00:00
Andrey Hristov
82ad02f0cd cvs sync 2008-02-11 16:45:15 +00:00
Andrey Hristov
533618d2a0 Remove dead code 2008-02-08 09:57:01 +00:00
Andrey Hristov
0c65a68fc9 Fix a bug and a test 2008-02-06 14:11:32 +00:00
Andrey Hristov
bb4051d480 Fix test 2008-02-06 13:01:30 +00:00
Andrey Hristov
ac3d36818f Pconnect working with mysqli_real_connect() 2008-02-06 11:35:44 +00:00
Andrey Hristov
cfcf16f0f7 Fix a leak and memory warning. 2008-02-04 17:32:43 +00:00
Dmitry Stogov
42a683d688 Imporoved PHP binary size and startup speed with GCC4 visibility control (Nuno) 2008-01-30 09:56:22 +00:00
Andrey Hristov
6d9fdbce50 MFB:
some config.w32 fixes
moved mysqlnd's block allocator to a separate file and also now
it's part of the connection, no MT problems.
2008-01-28 22:54:21 +00:00
Andrey Hristov
18c8e6501b MFB: More optimizations - less MM calls
Clearly separated fetching (physical reading) from decoding phases (data
interpretation). Threaded fetching added but disabled as needs more work for
Windows. For Linux needs some touches to add pthreads if this is enabled,
probably with a compile-time switch.
The code reorganisation makes it easy to add also async API, similar to
cURL's one.
2008-01-28 18:27:49 +00:00
Ulf Wendel
dd8bda11f8 Those functions have been deprecated and removed. We'll test them only internally
but not bother php.net with it. Unless you really want to have tests for deprecated
and removed functionality...
2008-01-08 13:18:46 +00:00
Ulf Wendel
96c63a378e Looks more than it is. Its whitespace, adding error handling in a few places,
changing SQL statement formatting etc. No "real" changes.
2008-01-08 12:43:08 +00:00
Ulf Wendel
d435cd76df Added:
mysqli_fetch_assoc_zerofill.phpt
    checks for UNSIGNED ZEROFILL

  mysqli_stmt_bind_result_zerofill.phpt
    checks for UNSIGNED ZEROFILL

  mysqli_stmt_bing_call_user_func.phpt
    Needs to be refined once http://bugs.php.net/bug.php?id=43568
    has been closed and a decision has been made on call_user_func_array().
    There seems to be a BC break between 5_2 -> 5_3 .
    Johannes has an eye on it

Modified:

  mysqli_change_user_insert_id.phpt
    skip test for buggy MySQL Server versions

  mysqli_insert_id.phpt
    added additional checks
2008-01-04 18:17:13 +00:00
Ulf Wendel
6b0e5b66fb Fix for Bug #43036 2008-01-04 09:00:35 +00:00
Ulf Wendel
ba1f8fba1d Remove test for deprecated (and removed) function 2008-01-03 17:20:19 +00:00
Johannes Schlüter
584a7c7be8 - Remove more replication stuff 2008-01-03 14:32:52 +00:00
Ulf Wendel
60be62b781 Make it work for MySQL 6.x as well. 2008-01-03 10:19:02 +00:00
Sebastian Bergmann
9b620d50b4 Bump copyright year, 2 of 2. 2007-12-31 07:12:20 +00:00
Ulf Wendel
b9963f50d9 Merge from 5_3. Fixing 32 vs. 64bit issue. 2007-12-28 18:28:21 +00:00
Ulf Wendel
4ba70f548c Merge from 5_3 - MySQL 6.0 SQL fixes 2007-12-28 18:19:17 +00:00
Andrey Hristov
d265efd570 Remove RPL functions. They were always experimental and lead to crashes.
The underlying functions will be removed from libmysql as of MySQL 6.0, so
it's right time to remove them.
2007-12-28 15:38:23 +00:00
Ulf Wendel
5e64d2273e Sync from 5_3. Cutting off a few edges:
- use connection parameter from environment variables
 - check if MySQL supports procedures
 - whitespace
2007-12-28 14:51:26 +00:00
Hartmut Holzgraefe
229919cb55 Fix for bug #42548 "PROCEDURE xxx can't return a result set" 2007-12-25 18:23:07 +00:00
Andrey Hristov
4ba0bd49fb Fix crashes with pconn (merge from 5_3) 2007-11-09 12:13:15 +00:00
Jani Taskinen
f8314496a2 Fix bug headers 2007-10-30 12:06:28 +00:00
Jani Taskinen
aed3360625 - Fixed invalid handling of float value passed to an integer field on 64bit machine 2007-10-29 09:50:49 +00:00
Jani Taskinen
ecdea3117a fix test 2007-10-29 09:03:39 +00:00
Andrey Hristov
43160de684 Fix the build, the w32 files should look like in 5_3 2007-10-23 10:44:25 +00:00
Antony Dovgal
29fd758310 commit lost part of the patch 2007-10-17 08:22:01 +00:00
Antony Dovgal
dc8634add8 use correct dtor and variable for the callback 2007-10-17 08:17:34 +00:00
Antony Dovgal
0655ad3833 use zval_dtor() instead of efree() + FREE_ZVAL() 2007-10-16 13:18:55 +00:00
Andrey Hristov
731a49ed0e MFB: Fix bug due to shadowing of variables. This one is pretty-pretty rare,
caught by source code inspection.
2007-10-16 12:55:38 +00:00
Ulf Wendel
572648d585 Now HEAD should be fine: skip test (by default), if DB connect fails. 2007-10-12 12:40:04 +00:00
Ulf Wendel
7db84d5bcf Fixing test. 2007-10-12 11:52:27 +00:00
Ulf Wendel
534f770ae2 Trying to make them not fail but skip if they cannot connect to the DB. 2007-10-12 11:51:22 +00:00
Ulf Wendel
2027c85be2 Fixing tests. 2007-10-12 11:46:41 +00:00
Ulf Wendel
63103cdbc6 Should be the last commit for HEAD. Now HEAD and 5_3 should have the latest
set of ext/mysqli tests. On Linux 32bit we've about 10 tests failing.
Before the commit we had about 20 tests failing with HEAD.
2007-10-10 10:54:02 +00:00
Ulf Wendel
fc13e57d0f More changes = synching HEAD with 5_3 2007-10-10 10:51:34 +00:00
Ulf Wendel
2dd1b35a85 Commiting changes into HEAD = synching with 5_3 2007-10-10 10:49:00 +00:00
Ulf Wendel
2df3cea685 More updates to the ext/mysqli tests in HEAD = synching with 5_3 2007-10-10 10:46:06 +00:00
Ulf Wendel
eefce01f8d Adding new tests = making sure we're in sync with the 5_3 branch 2007-10-10 10:43:39 +00:00
Andrey Hristov
942e348307 MFB: Move declarations from the public header file. 2007-10-08 15:40:26 +00:00
Yiduo (David) Wang
95da0dc570 Added macros for managing zval refcounts and is_ref statuses 2007-10-07 05:15:07 +00:00
Andrey Hristov
9ac92cfecb Update mysqlnd in HEAD
Updated ext/mysql and ext/mysqli in HEAD
2007-10-02 10:45:27 +00:00
Dmitry Stogov
8146078f7b Improved memory usage by movig constants to read only memory. (Dmitry, Pierre) 2007-09-27 18:28:44 +00:00
Nuno Lopes
fc86edab7d fix typo in tmp file path 2007-08-11 15:38:34 +00:00
Ulf Wendel
a166bd39ac I forgot those files when merging mysqlnd SVN and HEAD. Only required by
tests that test experimental features and are skipped by default that's why
I missed them.
2007-08-09 10:16:24 +00:00
Ulf Wendel
af91a4056a No need for an extra skip*.inc file, this check is done in just one place 2007-08-09 10:10:46 +00:00
Ulf Wendel
5846d6b84b More changes related to MYSQL_TEST_SKIP_CONNECT_FAILURE. 2007-08-09 10:01:20 +00:00
Ulf Wendel
112b742518 New tests (stubs?) for a few experimental (to be removed?) functions.
The tests will only be run if you set MYSQL_TEST_EXPERIMENTAL = 1.
2007-08-09 09:59:15 +00:00
Ulf Wendel
974935e6b8 Next set of files which now feature the new environment variable
MYSQL_TEST_SKIP_CONNECT_FAILURE which controls how connection problems
are handled: failure (MYSQL_TEST_SKIP_CONNECT_FAILURE = false, default)
or skip (MYSQL_TEST_SKIP_CONNECT_FAILURE = true)

Also, some minor tweaking of connection parameters in the tests.
2007-08-09 09:43:28 +00:00
Ulf Wendel
1855a57471 Introducing new environment variable:
MYSQL_TEST_SKIP_CONNECT_FAILURE = false

Every test that needs a working MySQL connection now includes
skipifconnectfailure.inc. If MYSQL_TEST_SKIP_CONNECT_FAILURE evaluates
to true skipifconnectfailure.inc tries to establish a database
connection. If no connection can be opened, the test will be skipped.
In case of MYSQL_TEST_SKIP_CONNECT_FAILURE = false (default) an no
connection, a test who cannot establish a connection will fail.

So, if you have a buggy configuration or a server that is sometimes
not available, you can now decide if you want the tests to ignore this
and skip the test or to fail (MYSQL_TEST_CONNECT_FAILURE = false, default).

Other, minor tweaks:
  042.phpt - whitespace
  067.phpt - parse error in SKIPIF section fixed
2007-08-09 08:41:12 +00:00
Jani Taskinen
6287087e70 - Align help texts and added note about embedded not being available when
the MySQL native driver is used.
2007-07-27 01:09:18 +00:00
Jani Taskinen
f3c2a33f42 - Moved mysqnd to it's own directory: It is sort of an extension itself.
(Similar to what ext/libxml is..)
2007-07-25 23:47:33 +00:00
Andrey Hristov
7bb46902f8 Alignment fixes for 64bit and fixing macroses 2007-07-25 12:42:00 +00:00
Antony Dovgal
f0cde2c03d namespace protection
GD uses the same variable, too.
2007-07-24 20:11:13 +00:00
Andrey Hristov
bb4b052c23 Don't use AC_CHECK_TYPES, as autoconf 2.13 is buggy, use an workaround. 2007-07-24 19:20:28 +00:00
Andrey Hristov
222174e23f Import of mysqlnd and ext/mysql + ext/mysqli patched to be built either
with libmysql or mysqld.

Use --with-mysql=mysqlnd --with-mysqli=mysqlnd to build with mysqlnd.
2007-07-24 16:13:26 +00:00
Andrey Hristov
cbba608856 MFB 2007-07-24 09:32:11 +00:00
Ulf Wendel
9b035b58f5 Damn, Pierre is clever.
[14:35] <_jani_> nixnutz_: why don't you just commit everything in one go..?
[14:35] <_jani_> this "spamming" is getting quite boring..
[14:36] <Pierre> 20€/commit :)
2007-07-23 12:38:41 +00:00
Ulf Wendel
512f62a5a9 Tests for mysqli_stmt_send_long_data() 2007-07-23 12:36:06 +00:00
Ulf Wendel
613947afc6 Tests which verify that you really cannot clone any of the mysqli
objects. Technically it might be possible to tweak ext/mysqli and make
the objects cloneable - tough, we haven't checked in depth.

So, if one is interested, raise a discussion.
2007-07-23 12:34:09 +00:00
Ulf Wendel
fe8c5d1243 Tests that check mysqli_fetch_field(), mysqli_fetch_field_direct() and
retrieve metadata
2007-07-23 12:28:56 +00:00
Ulf Wendel
a1c14bfffd Tests for mysqli_fetch_object() 2007-07-23 12:28:12 +00:00
Ulf Wendel
16008bc577 Another nice new function that comes with mysqlnd: return all rows of
a result set in one array. This is handy if want to fetch all results and
pass the data directly to a template engine, for example. In this case
you save a loop.

1) Currently:
  $all_rows = array();
  while ($row = mysqli_fetch_assoc($res))
   $all_rows[] = $row;

2) With mysqli_fetch_all:
  $all_rows = mysqli_fetch_all($res, MYSQL_ASSOC)

Note: if you need the loop for processing each row, try variant 1) for
performance reasons.
2007-07-23 12:27:39 +00:00
Ulf Wendel
ff87d3ec5b Adding tests for a few new functions that come with mysqlnd:
mysqli_stmt_get_result() - create mysqli_result set from stmt
  mysqli_get_cache_stats() - mysqlnd internal status/stats
  mysqli_get_client_stats() - mysqlnd internal status/stats/
2007-07-23 12:24:02 +00:00
Ulf Wendel
8e85715547 Playing with background processing: parent and child process fetching data
from the "same" result handle and checking with each other if the fetched
rows are the same or not. Inspired by a bug report. There seem to be really
people doing this...
2007-07-23 12:20:25 +00:00
Ulf Wendel
8d61b27811 Tests for mysqli_fetch_assoc(), mysqli_fetch_array(), mysqli_fetch_row() 2007-07-23 12:16:55 +00:00
Ulf Wendel
7432e6f873 Tests for mysqli_connect(), mysqli_real_connect(), mysqli_connect_errno(),
mysqli_connect_error()
2007-07-23 12:15:20 +00:00
Ulf Wendel
c41dc41f64 Tests that deal with mysqli_set_local_infile_handler() and mysqli_set_local_infile_default() 2007-07-23 12:13:15 +00:00
Ulf Wendel
937962ebe6 Adding new tests that check the interface of the classes exported by mysqli 2007-07-23 12:11:38 +00:00
Ulf Wendel
1884a16d01 Primarily whitespace/CS - synching with mysqlnd SVN repository 2007-07-23 12:04:19 +00:00
Ulf Wendel
a4cd950dc8 The last bunch of changes to the old 0*.phpt tests. Once final time a
verbose explanation of changes:

     - take connection parameter from connect.inc
     - use proper UEXPECTF
     - have 'print "done!"' or similar at the end to detect crashes
     - whitespace changes where needed
     - take care of portability: PHP 5 vs. PHP 5, MySQL 4.1 - 6.0
     - understand return value checking as sometime that makes you type
       more when you write but makes you happy when you debug
2007-07-12 21:02:21 +00:00
Ulf Wendel
b6cc61737f Will this never end?
- connection parameter tweaking
   - a bit of whitespace here and there
   - use UEXPECTF if need be
2007-07-12 20:57:30 +00:00
Ulf Wendel
2a191bb06d As usual:
- connection parameter tweaking
 - a bit of whitespace here and there
 - use UEXPECTF if need be
2007-07-12 20:55:12 +00:00
Ulf Wendel
b0251ed6cc Connection parameter should be taken from connect.inc and used all in
mysqli_connect() and friends. Use UEXPECTF instead of crippled EXPECTF.
2007-07-12 20:53:05 +00:00
Ulf Wendel
1cef1c528d I forgot to mention: some will fail. In particular in unicode mode.
Next 10 in row to be tweaked:

     - take connection parameter from connect.inc
     - use proper UEXPECTF
     - have 'print "done!"' or similar at the end to detect crashes
     - whitespace changes where needed
     - take care of portability: PHP 5 vs. PHP 5, MySQL 4.1 - 6.0
     - understand return value checking as sometime that makes you type
       more when you write but makes you happy when you debug
2007-07-12 20:49:29 +00:00
Ulf Wendel
202ba6c5fe Next 10 in row to be tweaked:
- take connection parameter from connect.inc
   - use proper UEXPECTF
   - have 'print "done!"' or similar at the end to detect crashes
   - whitespace changes where needed
   - take care of portability: PHP 5 vs. PHP 5, MySQL 4.1 - 6.0
   - understand return value checking as sometime that makes you type
     more when you write but makes you happy when you debug
2007-07-12 20:42:48 +00:00
Ulf Wendel
472e0c78d1 The usual tweaking:
- take connection parameter from connect.inc
 - use proper UEXPECTF
 - have 'print "done!"' or similar at the end to detect crashes
 - whitespace changes where needed
 - take care of portability: PHP 5 vs. PHP 5, MySQL 4.1 - 6.0
2007-07-12 20:38:26 +00:00
Ulf Wendel
5ccab692dd Pretty much the same cosmetics and tweaking as before (proper UEXPECTF,
"done!" at the end to detect crashes, connection parameter tweaking, ...) -
plus: check return codes even if failures are unlikely.
2007-07-12 20:34:50 +00:00
Ulf Wendel
1d0b5d303b More typical changes:
1) Try to have portable SQL, don't create your own schema unless the test
   wants to test exactly this
2) Don't rely on default SQL sort orders
3) Use proper UEXPECTF. There have been a lot of tiny unicode issues when
   ext/mysqli has returned a binary string in unicode mode although a
   unicode string could be expected and vice versa
2007-07-12 20:31:18 +00:00
Ulf Wendel
984756c898 All the upcoming changes in the 0*.phpt files are pretty much the same. I'll
describe them only once in with a bit of detail.

1) Correct Whitespace (space vs. tab) if need be
2) Recall: you get the connection parameter from connect.inc, no DB name, no
   port no other connection parameter in any of the tests!
3) At the end of each test you find a "print 'done!'" or similar. This is
   most helpful to detect crashing/segfaulting tests with all run-tests.php
   versions.
2007-07-12 20:28:25 +00:00
Ulf Wendel
ed4021d857 Adding tests for mysqli_affected_rows() and mysqli_autocommit() 2007-07-12 20:20:57 +00:00
Ulf Wendel
b5595d57c5 Some of the upcoming new tests will use this little helper to create a
very simple MySQL table with some data in it to play with.
2007-07-12 20:10:23 +00:00
Ulf Wendel
e48a29bb4d Some tests intentionally fail connecting to the DB. Not being able to
connect is no reason to skip the test. Also, no test should have hard-wired
connection parameter in it. Connection parameters come from connect.inc
(see environment variables in connect.inc).
2007-07-12 20:07:05 +00:00