Pierre Joye
96e2651fa2
- revert revision 297277, break the builds (declaration must go 1st, size of void * and other known situations). Also Johannes, can you check that commit pls? Thought we were in bugs fixing only for 5.3
2010-04-01 20:21:50 +00:00
Andrey Hristov
f534df710e
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
94cd357f5b
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
ec36ac1610
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
ccfd9cd744
allow persistency of PS
2010-03-12 13:03:46 +00:00
Adam Harvey
bdbb2e77ca
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
7db6387a7f
Fix the text. Correct english and a bit shorter.
2010-02-24 21:16:04 +00:00
Andrey Hristov
f8eb9abf44
add better description to the problem
2010-02-24 18:00:01 +00:00
Andrey Hristov
480c327ff5
make send_close a hook, too
2010-02-09 19:05:40 +00:00
Andrey Hristov
e50de7d982
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
6a8d4c3287
more PHPAPI for phpize-d builds
2010-01-13 18:07:02 +00:00
Andrey Hristov
2331e28509
cosmetics. typedef-ed types should be in capital case
2010-01-11 20:10:10 +00:00
Andrey Hristov
d999552ae7
missed to commit in 5_3, here it comes, reusability of stats
2010-01-11 18:31:02 +00:00
Andrey Hristov
9b8d026d86
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
d20fdd603b
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
3264e51983
add restart_psession and end_psession hooks
2010-01-08 13:47:03 +00:00
Andrey Hristov
73b23fca37
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
d76fa2b46c
move network creation to the init hook
2009-12-28 11:17:10 +00:00
Andrey Hristov
c95fa280ed
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
e1251edc16
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
5e1c95fda4
remove duplicated code
2009-12-15 17:39:30 +00:00
Andrey Hristov
c101f7f542
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
523471f7e8
export this function
2009-12-15 14:26:24 +00:00
Andrey Hristov
0371ef1070
refactor: move code that belongs to MYSQLND_NET out of MYSQLND
2009-12-15 13:13:51 +00:00
Andrey Hristov
13c8bba00a
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
a9295f0343
remove stale comment
2009-12-11 10:21:34 +00:00
Andrey Hristov
0c7a9b8010
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
06a417b6a9
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
6f598e62ff
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
4d2735007d
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
0f0f5f229b
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
2386938aea
- disable this debug code until it is actually fixed
2009-12-03 10:41:20 +00:00
Andrey Hristov
bfc0ec1891
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
2a3ec70d10
- 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
1cf1cb3015
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
5143fe41e2
Compressed protocol support + extensibility for mysqlnd
2009-11-20 08:12:14 +00:00
Andrey Hristov
7b5ce9ab49
Don't forget to update the length too
2009-10-22 17:36:12 +00:00
Andrey Hristov
f2814dd0df
Have the lengths also to skip many calls to strlen
2009-10-22 17:07:55 +00:00
Andrey Hristov
a692479d21
Count number of affected_rows for normal and PS queries
2009-10-22 14:30:51 +00:00
Ulf Wendel
d01d398bad
Fixing host info for TCP/IP and aligning mysqlnd and libmysql
2009-10-19 12:09:48 +00:00
Ulf Wendel
3eeaf566e0
Extending mysqlnd statistics/monitoring. Now counting COM_* commands.
2009-10-16 13:02:01 +00:00
Ulf Wendel
d8dc47d58f
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
ab4670ee53
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
a1d3a3224e
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
4e6a1c2754
Fixing pconnect statistics.
2009-10-08 11:40:16 +00:00
Andrey Hristov
309fced64d
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
Andrey Hristov
06523621dd
revert the last change
2009-10-06 12:53:01 +00:00
Andrey Hristov
d9382399fc
count the queries
2009-10-06 10:33:23 +00:00
Andrey Hristov
ba5c40b2ad
Use mnd_ wrappers wherever possible. Needed for
...
statistics.
2009-09-30 23:13:43 +00:00
Andrey Hristov
80f629ed9f
Fix possible crash when conn is NULL
2009-09-25 10:37:44 +00:00