Commit graph

146 commits

Author SHA1 Message Date
Felipe Pena
6d951e2ded - Fix copyrights 2010-04-20 13:50:34 +00:00
Andrey Hristov
f40779091c Fix some int/uint comparison warnings 2010-04-15 15:28:00 +00:00
Andrey Hristov
6f0adc06fa more WS 2010-04-15 15:16:29 +00:00
Andrey Hristov
a9880e78c6 CS + WS changes 2010-04-15 12:55:04 +00:00
Andrey Hristov
c04f752625 Fix for bug#49234 method not found ssl_set
Patch was tested and compiles on Windows. (Thanks Kalle)
2010-04-15 11:01:30 +00:00
Andrey Hristov
d339672e45 Fix inconsistencies
- memory allocated with spprintf, or likes, outside of mysqlnd's
allocator functions should not be freed by the mysqlnd's allocator
(a wrapper around emalloc/malloc).
- memory allocated by the mysqlnd's allocator should only be freed
  by it.
- add a mode to track memory usage (malloc/free)
2010-04-01 13:26:41 +00:00
Andrey Hristov
4870cac70e Make it coupled - what is allocated with mnd_ should be freed
with mnd_ and vice versa.
Added mnd_pestrndup and mnd_pestrdup, which wrap the normal
calls to be able to track this calls.
Fixed some failing tests.
2010-03-29 17:04:16 +00:00
Andrey Hristov
7868bca437 Fix tests that fail when the MySQL's socket file is not /tmp/mysql.sock
as it is in when compiled from source and the default for mysqlnd.
SuSE for example uses /var/run/mysql/mysql.sock . Also, sql.safe_mode
(ext/mysql and ingres) needs the socket.
Fix possible crashes in mysqlnd. When packets are shorter, functions should
return error.
2010-03-26 16:58:25 +00:00
Andrey Hristov
564a1d07f8 allow persistency of PS 2010-03-12 13:03:46 +00:00
Adam Harvey
df80a01b4f Fixed bug #51242 (Empty mysql.default_port does not default to 3306 anymore, but 0). 2010-03-09 05:08:31 +00:00
Andrey Hristov
11566524a3 Fix the text. Correct english and a bit shorter. 2010-02-24 21:16:04 +00:00
Andrey Hristov
dd57bddd53 add better description to the problem 2010-02-24 18:00:01 +00:00
Andrey Hristov
5dff8f9045 make send_close a hook, too 2010-02-09 19:05:40 +00:00
Andrey Hristov
055f558554 Pass tsrmls to all functions, which might need it in the future.
We are anyway breaking the internal ABI in 5.3.2 so this won't hurt
and make us prepared for the future.
2010-02-03 17:31:29 +00:00
Andrey Hristov
c42541a253 more PHPAPI for phpize-d builds 2010-01-13 18:07:02 +00:00
Andrey Hristov
a449a371a8 cosmetics. typedef-ed types should be in capital case 2010-01-11 20:10:10 +00:00
Andrey Hristov
1ea390938b and another change to make the stats API re-usable 2010-01-11 18:27:31 +00:00
Andrey Hristov
41ead37c04 Rework the statistics macros to be reusable by external entities.
Rename handlers to triggers. Dynamically allocate space for the
statistics thus allow reusability.
2010-01-11 14:27:35 +00:00
Andrey Hristov
a98a67940a improve the stats subsystem. Reduce the number of macro definitions
in half by smartly introducing 2 new macros. Make MYSQLND::stats a pointer
from being aggregated and add triggers.
2010-01-08 17:35:20 +00:00
Andrey Hristov
fcef58951b add restart_psession and end_psession hooks 2010-01-08 13:47:03 +00:00
Andrey Hristov
81b0630f5a Change of way the packet objects are created/initialised
If the protocol gets changed, ever, we can decide at runtime
easily which protocol to use by instantiating the right protocol
object. But this is restricted to the structure of the packets, not
the flow.
2010-01-07 19:44:59 +00:00
Andrey Hristov
d3619df322 move network creation to the init hook 2009-12-28 11:17:10 +00:00
Andrey Hristov
707e86274b Fix double calls to free_contents if the connection cannot be
opened. mysqlnd have no probs, external code should not have too.
In any case, double call is not needed.
2009-12-22 17:44:42 +00:00
Andrey Hristov
e695a83c66 move state setting to the right place, in mysqlnd_init, no more
in mysqlnd::connect
2009-12-22 17:31:31 +00:00
Andrey Hristov
857e83a249 remove duplicated code 2009-12-15 17:39:30 +00:00
Andrey Hristov
1fc65ed8bb Move code out of mysqlnd_conn::connect to mysqlnd_net::connect.
Thus mysqlnd_conn::connect() does less of what it should not do - think
about the transport level.
2009-12-15 17:33:06 +00:00
Andrey Hristov
a5640ede09 export this function 2009-12-15 14:26:24 +00:00
Andrey Hristov
e6e40722d9 refactor: move code that belongs to MYSQLND_NET out of MYSQLND 2009-12-15 13:13:51 +00:00
Andrey Hristov
b1d4cea57e Make MYSQLND_NET dynamically allocated structure with allocator
and deallocator. More member functions will come.
2009-12-11 11:58:57 +00:00
Andrey Hristov
fd0d9822d8 remove stale comment 2009-12-11 10:21:34 +00:00
Andrey Hristov
2cc95115f3 Move two functions which are used in the extension as methods of
the connection. Two functions less in the global namespace.
2009-12-11 10:18:00 +00:00
Andrey Hristov
3a7f8ea575 Remove stub code which never actually was used for anything.
Things like this can be built on top of the core.
2009-12-09 20:38:11 +00:00
Andrey Hristov
fd44827701 Remove the zval caching from mysqlnd. It was disabled versions ago
due to problems on windows, which were not debugged. Better have 
code that is disabled not in the core.
2009-12-09 20:21:05 +00:00
Andrey Hristov
157f1bddf1 Remove disabled code - threaded fetching. This can be implemented
on a upper level and by offloading it we reduce the complexity of
the core.
2009-12-09 16:57:03 +00:00
Andrey Hristov
3cfacd1e07 I svn-commit.2.tmp (Modified) Row 2 Col 28 11:45 Ctrl-K H for help
fix compilation on windows and with other compilers who
don't like void* arithmetic
2009-12-03 10:50:02 +00:00
Pierre Joye
330523c60c - disable this debug code until it is actually fixed 2009-12-03 10:41:20 +00:00
Andrey Hristov
4c1065522d fix segfault introduced by Pierre in a recent commit
old code was doing something like
conn + sizeof(MYSQLND) * MYSQLND + plugin * sizeof(void) * sizeof(MYSQLND)
because `conn` is not casted to void*. `conn` has to be casted to void * and
then the whole experession will be void * and the calculations will work.
2009-12-03 09:43:26 +00:00
Pierre Joye
80e5ef6fa5 - void is NaN, you can't do math ops on void. Declarations go first. Fix TS build 2009-11-30 10:56:01 +00:00
Andrey Hristov
0c6fa49fff fix debug windows build as well as remove a compilation warning
(a header not included)
2009-11-26 11:10:47 +00:00
Andrey Hristov
7674c942c7 Compressed protocol support + extensibility for mysqlnd 2009-11-20 08:12:14 +00:00
Andrey Hristov
4afa56f846 Don't forget to update the length too 2009-10-22 17:36:12 +00:00
Andrey Hristov
a86ab84a4c Have the lengths also to skip many calls to strlen 2009-10-22 17:07:55 +00:00
Andrey Hristov
8792edcf76 Count number of affected_rows for normal and PS queries 2009-10-22 14:30:51 +00:00
Ulf Wendel
0949463ed8 Fixing host info for TCP/IP and aligning mysqlnd and libmysql 2009-10-19 12:09:48 +00:00
Ulf Wendel
f0e6db4d56 Extending mysqlnd statistics/monitoring. Now counting COM_* commands. 2009-10-16 13:02:01 +00:00
Ulf Wendel
29d771c543 Making mysqlnd emit no warnings when fetching pooled persistent connections that have timed out or are unusable for any other reason - bug #49761 2009-10-15 20:46:08 +00:00
Ulf Wendel
355a88f676 Fixing problems when calling connect (again and again) on a valid connection handle. Most of the patch comes from Andrey. 2009-10-15 15:49:40 +00:00
Ulf Wendel
410804abc4 Avoid buffer resizing and let the initial buffer allocation happen a couple of lines later with conn->m->set_client_option(conn, MYSQLND_OPT_NET_CMD_BUFFER_SIZE, ...). Andrey, I leave it to you to change the default size to 128k. 2009-10-08 16:33:17 +00:00
Ulf Wendel
e9f9b39ae0 Fixing pconnect statistics. 2009-10-08 11:40:16 +00:00
Andrey Hristov
5b97f74b62 Increase the minimal size of the command buffer, which is used
for sending queries and in the future commpressed patch for reading
almost all packets from the wire instead of using stack buffers.
2009-10-07 17:33:51 +00:00