| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |\ |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When the compression was successful the compressed data + uninitialized data
at the end was sent to the server, because the length of the compressed payload
wasn't correctly calculated (actually the length of the uncompressed payload as assumed).
However, the uncompress() function has internally the length of the real payload and skips
the binary trash at the end - thus no data damage occurs!
|
| | |
| | |
| | |
| | |
| | |
| | | |
Fixed test script failed when host mysql doesn't listen on 3306
Fxied test script failed due to mysql_pconnect trigger a warning
|
| | |
| | |
| | |
| | |
| | | |
# I can't find an unsafe call, but let's play safe
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
here, so we can get
a minor boost here in ZTS mode.
|
| | |
| | |
| | |
| | |
| | | |
To be used by mysqli_options
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
%u should be used. Where size_t is used then MYSQLND_SZ_T_SPEC should be
the modifier
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Patch was tested and compiles on Windows. (Thanks Kalle)
|
| | |
| | |
| | |
| | |
| | | |
build.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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)
|
| | |
| | |
| | |
| | | |
void * and other known situations). Also Johannes, can you check that commit pls? Thought we were in bugs fixing only for 5.3
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- 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)
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Streams API registers every stream as resource, which lands then
in EG(regular_list), however doesn't clean that when the stream is
closed. At the end this is a para-leak. At the end of the script
all memory is cleaned, however this is a problem for long runnig
scripts that open connections. For every opened and closed connection
about 150 Bytes on 32bit and 250 Bytes on 64bit will be "lost",
according to memory_get_usage().
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
in half by smartly introducing 2 new macros. Make MYSQLND::stats a pointer
from being aggregated and add triggers.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | | |
php stream
|
| | |
| | |
| | |
| | |
| | | |
which can be overloaded on purpose.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
mysqlnd_net.c . Now communication is split on two levels:
- logical (functions send and receive)
- physical (functions network_read and network_write)
|
| | |
| | |
| | |
| | |
| | | |
by the calling code
|
| |
| |
| |
| |
| |
| | |
mysqlnd_wireprotocol is about the protocol not the transport
layer
|
| | |
|
| |
| |
| |
| |
| | |
for similar objects
|
| |
| |
| |
| |
| |
| | |
and mysqlnd_ext_plugin.c (mysqlnd extension plugin)
|
| |
| |
| |
| |
| |
| |
| | |
connection)
QC will need an ifdef-layer to compile with this
|
| |
| |
| |
| |
| | |
is cleaned before the extensions' MSHUTDOWNs are called.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When the compression was successful the compressed data + uninitialized data
at the end was sent to the server, because the length of the compressed payload
wasn't correctly calculated (actually the length of the uncompressed payload as assumed).
However, the uncompress() function has internally the length of the real payload and skips
the binary trash at the end - thus no data damage occurs!
|
| |
| |
| |
| |
| |
| | |
The fix is for now in 5_4 and trunk, to be merged into 5_3 after 5.3.8
is packaged (expected today). The test case goes to all branches
|
| |
| |
| |
| |
| | |
# I can't find an unsafe call, but let's play safe
|
| | |
|
| | |
|
| | |
|