#
5853cdb7 |
| 20-Aug-2024 |
Gina Peter Bnayard |
Use "must not" instead of "cannot" wording
|
#
e7c4d54d |
| 18-Aug-2024 |
Gina Peter Bnayard |
Use new helper function for "cannot be empty" ValueErrors
|
#
bb8d667f |
| 26-Jul-2024 |
David CARLIER |
Fix GH-15102: ext/pgsql use after free on persistent connection renewal. (#15115) simplifying the workflow by just using PQreset which force a new connection internally, connection proce
Fix GH-15102: ext/pgsql use after free on persistent connection renewal. (#15115) simplifying the workflow by just using PQreset which force a new connection internally, connection process ids ought to be different, and let the existing checks do the rest.
show more ...
|
#
ba54cebb |
| 20-Jul-2024 |
David Carlier |
ext/pgsql: pg_convert/pg_insert/pg_update/pg_delete caching regexes. Close GH-15039
|
#
39b10063 |
| 19-Jul-2024 |
David CARLIER |
ext/pgsql: db metadata simplification for table names. (#15036)
|
#
42530c65 |
| 06-Jul-2024 |
Peter Kokot |
Remove unused SMART_STR_PREALLOC (#14848)
|
#
11accb5c |
| 25-Jun-2024 |
Arnaud Le Blanc |
Preferably include from build dir (#13516) * Include from build dir first This fixes out of tree builds by ensuring that configure artifacts are included from the build dir.
Preferably include from build dir (#13516) * Include from build dir first This fixes out of tree builds by ensuring that configure artifacts are included from the build dir. Before, out of tree builds would preferably include files from the src dir, as the include path was defined as follows (ignoring includes from ext/ and sapi/) : -I$(top_builddir)/main -I$(top_srcdir) -I$(top_builddir)/TSRM -I$(top_builddir)/Zend -I$(top_srcdir)/main -I$(top_srcdir)/Zend -I$(top_srcdir)/TSRM -I$(top_builddir)/ As a result, an out of tree build would include configure artifacts such as `main/php_config.h` from the src dir. After this change, the include path is defined as follows: -I$(top_builddir)/main -I$(top_builddir) -I$(top_srcdir)/main -I$(top_srcdir) -I$(top_builddir)/TSRM -I$(top_builddir)/Zend -I$(top_srcdir)/Zend -I$(top_srcdir)/TSRM * Fix extension include path for out of tree builds * Include config.h with the brackets form `#include "config.h"` searches in the directory containing the including-file before any other include path. This can include the wrong config.h when building out of tree and a config.h exists in the source tree. Using `#include <config.h>` uses exclusively the include path, and gives priority to the build dir.
show more ...
|
#
4f450b62 |
| 25-Jun-2024 |
Peter Kokot |
Bump minimum libpq version to 10.0 (#14628) This bumps the libpq client-side PostgreSQL library minimum required version from 9.1 to 10.0. - Sanity check: PQlibVersion -> PQencr
Bump minimum libpq version to 10.0 (#14628) This bumps the libpq client-side PostgreSQL library minimum required version from 9.1 to 10.0. - Sanity check: PQlibVersion -> PQencryptPasswordConn (available since libpq 10.0) - PQsetErrorContextVisibility (available since libpq 9.6) - lo_truncate64 (available since libpq 9.3), if 32-bit system doesn't support lo_*64 functions, error is returned and functions are always available Additionally, the conditional functions usages in pdo_pgsql and pgsql extensions that got piled up are cleaned and synced: - pg_prepare (PQprepare available since libpq 7.4) - pg_query_params (PQexecParams available since libpq 7.4) - pg_result_error_field (PQresultErrorField available since libpq 7.4) - pg_send_prepare (PQsendPrepare available since libpq 7.4) - pg_send_query_params (PQsendQueryParams available since libpq 7.4) - pg_set_error_verbosity (PQsetErrorVerbosity available since libpq 7.4) - pg_transaction_status (PQtransactionStatus available since libpq 7.4) The Windows libpq version is currently at version 11.4: https://github.com/winlibs/postgresql Discussion: https://news-web.php.net/php.internals/123609 Follow-up of GH-14540
show more ...
|
#
564914ac |
| 14-Jun-2024 |
David Carlier |
ext/pgsql: adding postgresql 17 new libpq wrapper call. pg_set_chunked_rows_size to allow to fetch results in chunk of max N rows. close GH-14571
|
#
2bb8fbd0 |
| 13-Jun-2024 |
David Carlier |
ext/pgsql: add pg_jit server info. since PostgreSQL 11, LLVM JIT feature had been brought thus reporting the settings to the client connection. Close GH-14566
|
#
2969889f |
| 13-Jun-2024 |
Peter Kokot |
Remove conditional pg_encoding_to_char usage (#14557) The pg_encoding_to_char is available in PostgreSQL since ~7.3 where also the --enable-multibyte option was removed. PHP minimum Post
Remove conditional pg_encoding_to_char usage (#14557) The pg_encoding_to_char is available in PostgreSQL since ~7.3 where also the --enable-multibyte option was removed. PHP minimum PostgreSQL version at this point is 9.1, which also has the pg_encoding_to_char declaration in libpq-fe.h. This removes conditional usage and the HAVE_PGSQL_WITH_MULTIBYTE_SUPPORT symbol.
show more ...
|
#
5baef94d |
| 13-Jun-2024 |
Peter Kokot |
Remove conditional usage of PQfreemem (#14559) PQfreemem is available since PostgreSQL 7.4.
|
#
d545b1d6 |
| 11-Jun-2024 |
Peter Kokot |
Add missing ext/pcre dependency for ext/pgsql (#14541)
|
#
65ff5117 |
| 09-Jun-2024 |
Peter Kokot |
Check for PQERRORS_SQLSTATE in PGVerbosity enum (#14519) The PG_VERSION_NUM is not available in intended public PostgreSQL headers unless the pg_config.h is included or the PostgreSQL se
Check for PQERRORS_SQLSTATE in PGVerbosity enum (#14519) The PG_VERSION_NUM is not available in intended public PostgreSQL headers unless the pg_config.h is included or the PostgreSQL server development headers are installed separately. This instead resorts to checking for the PGVerbosity enum value. The PQERRORS_SQLSTATE was added to PostgreSQL 12.0. At the time of writing, on Windows, PostgreSQL is at 11.4 so it is not defined there yet.
show more ...
|
#
fd2d8696 |
| 08-Jun-2024 |
Gina Peter Banyard |
Clean-up some more headers (#14416) Remove unused headers (such as php_ini.h for extensions that don't define INI settings) Use more specific headers when possible
|
#
e69bccd7 |
| 29-May-2024 |
David Carlier |
ext/pgsql: adding pg_socket_poll. Using PQSocketPoll to poll on a connection's socket. Returns immediatly is there no event expected on read and write. Other than that, it is a thin
ext/pgsql: adding pg_socket_poll. Using PQSocketPoll to poll on a connection's socket. Returns immediatly is there no event expected on read and write. Other than that, it is a thin wrapper on top of poll, thus reflecting its return value. close GH-14366
show more ...
|
#
162a311c |
| 25-May-2024 |
David Carlier |
ext/pgsql: adding pg_put_copy_data/pg_put_copy_end. pg_put_copy_data allows to send COPY commands to the server. pg_put_copy_end signals the end of the n commands. Both return 3
ext/pgsql: adding pg_put_copy_data/pg_put_copy_end. pg_put_copy_data allows to send COPY commands to the server. pg_put_copy_end signals the end of the n commands. Both return 3 states ; 1, 0 and -1 when 1 is success, 0 the buffer queue is full then -1 for errors. Close GH-14325
show more ...
|
#
9aa3a0d7 |
| 18-May-2024 |
David Carlier |
ext/pgsql: adding pg_change_password functionality. handy call to change an user password while taking care transparently of the password's encryption. close GH-14262
|
#
0218af87 |
| 15-May-2024 |
David CARLIER |
ext/pgsql: using fast ZPP api for calls. (#14099)
|
#
77fa4c0f |
| 12-May-2024 |
武田 憲太郎 |
ext/pgsql: add `pg_result_memory_size` Close GH-14214
|
#
243827b8 |
| 27-Apr-2024 |
David Carlier |
Fix GH-13519: another attempt after the faulty fix. Close GH-14055
|
#
330b26e0 |
| 27-Feb-2024 |
Jakub Zelenka |
Revert "Fix GH-13519: PGSQL_CONNECT_FORCE_RENEW with persistent connections." This reverts commit b9a9790be0657249fa5e6687883b43570b0a3f1f.
|
#
b9a9790b |
| 26-Feb-2024 |
David Carlier |
Fix GH-13519: PGSQL_CONNECT_FORCE_RENEW with persistent connections. persistent connections did not take in account this flag, after the usual link sanity checks, we remove its entry.
Fix GH-13519: PGSQL_CONNECT_FORCE_RENEW with persistent connections. persistent connections did not take in account this flag, after the usual link sanity checks, we remove its entry. Close GH-13519
show more ...
|
#
5941cdaa |
| 13-Feb-2024 |
Niels Dossche <7771979+nielsdos@users.noreply.github.com> |
Fix ZTS crashes with persistent resources in modules (#13381) On shutdown in ZTS the following happens: - https://github.com/php/php-src/blob/master/Zend/zend.c#L1124-L1125 gets ex
Fix ZTS crashes with persistent resources in modules (#13381) On shutdown in ZTS the following happens: - https://github.com/php/php-src/blob/master/Zend/zend.c#L1124-L1125 gets executed. This destroys global persistent resources and destroys the modules. Furthermore, the modules are unloaded too. - Further down, `ts_free_id(executor_globals_id)` gets executed, which calls `executor_globals_dtor`. This function destroys persistent resources for each thread. Notice that in the last step, the modules that the persistent resource belong to may already have been destroyed. This means that accessing globals will cause a crash (I previously fixed this with ifdef magic), or when the module is dynamically loaded we'll try jumping to a destructor that is no longer loaded in memory. These scenarios cause crashes. It's not possible to move the `ts_free_id` call upwards, because that may break assumptions of callers, and furthermore this would deallocate the executor globals structure, which means that any access to those will cause a segfault. This patch adds a new API to the TSRM that allows running a callback on a certain resource type. We use this API to destroy the persistent resources in all threads prior to the module destruction, and keep the rest of the resource dtor intact. I verified this fix on Apache with postgres, both dynamically and statically. Fixes GH-12974.
show more ...
|
#
452e008f |
| 08-Feb-2024 |
George Barbarosie |
Fix GH-13354: ext/pgsql: pg_execute, pg_send_query_params and_send_execute null value by reference. For these, when passing null values by refence, queries return erroneous values unlike
Fix GH-13354: ext/pgsql: pg_execute, pg_send_query_params and_send_execute null value by reference. For these, when passing null values by refence, queries return erroneous values unlike pg_query_params behaving as expected. close GH-13355.
show more ...
|