Commit graph

135 commits

Author SHA1 Message Date
Anatol Belski
4a4422740f put missing prototype and fix ts build 2016-08-14 22:35:01 +02:00
Anatol Belski
977cbc2fff Fixed bug #72759 Regression in pgo_pgsql
This is caused by the fix for #72633. Namely, lastval() throws an error,
if no nextval() was called earlier in the same session. This is by all
means correct so far, however inside a transaction it leads to an abort.
This is the opposite to MySQL's last_insert_id() which doesn't produce
any error no matter something were autoincremented or not.

To avoid existing scripts breakage in the stable branches, the previous
patch is extended to revert the transaction to the state before the lastval()
call in case of error. It is done only for 5.6 and 7.0 to retain BC. For 7.1+,
the clean behavior should persist. This is already the current behavior, when
the sequence name is explicitly passed. So there's no reason to obfuscate the
errors where this breakage is valid.
2016-08-14 19:33:24 +02:00
Matteo Beccati
d3a8e107ac Clean up FR #72633 2016-08-04 09:28:58 +02:00
Pablo Santiago Sánchez
90c6cbd09b - lastInsertId using Postgres Lastval() function 2016-08-02 14:34:30 +02:00
Lior Kaplan
49493a2dcf Happy new year (Update copyright to 2016) 2016-01-01 19:21:47 +02:00
Matteo Beccati
afa4c3e7c7 Fix bug #69362 (PDO-pgsql fails to connect if password contains a leading single quote) 2015-06-12 00:21:48 +02:00
Xinchen Hui
0579e8278d bump year 2015-01-15 23:26:37 +08:00
Matteo Beccati
3de6f80ff5 Ref #68371 - Added support for PDO::PGSQL_ATTR_DISABLE_PREPARES 2015-01-05 11:00:11 +01:00
Matteo Beccati
488d3dac2e Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #68371 PDO#getAttribute() cannot be called with platform-specific attribute names
2015-01-05 10:48:18 +01:00
Matteo Beccati
3e4b91ec7f Fixed bug #68371 PDO#getAttribute() cannot be called with platform-specific attribute names 2014-11-10 08:16:35 +01:00
Anatol Belski
1b1f7c627a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  fix ZTS build
2014-10-31 19:53:39 +01:00
Anatol Belski
1fc80d0ca7 fix ZTS build 2014-10-31 19:53:16 +01:00
Matteo Beccati
e797db8909 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added PGSQL_TEST_CONNSTR env var support for ext/pgsql tests
  Fixed bug #67462 PDO_PGSQL::beginTransaction() wrongly throws exception when not in transaction
2014-10-31 18:57:59 +01:00
Matteo Beccati
9580fcfedd Fixed bug #67462 PDO_PGSQL::beginTransaction() wrongly throws exception when not in transaction 2014-10-31 18:11:32 +01:00
Matteo Beccati
8c5e2e66bc Fixed bug #68199 (PDO::pgsqlGetNotify doesn't support NOTIFY payloads) 2014-10-17 16:22:52 +02:00
Matteo Beccati
e378348a31 Added new PDO::PGSQL_ATTR_DISABLE_PREPARES that uses PQexecParams
Faster than prepared statements when queries are run once. Slightly
slower than PDO::ATTR_EMULATE_PREPARES but without the potential
security implications of embedding parameters in the query itself.
2014-03-11 23:10:48 +01:00
Matteo Beccati
d72621ab9e Deprecated PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT 2014-03-11 23:10:48 +01:00
Matteo Beccati
b1ffea3ccc Drop PDO support for extremely old libpq versions
configure will now fail if any of the following function is missing:
* PQprepare
* PQexecParams
* PQescapeStringConn
* PQescapeByteaConn
2014-03-11 23:10:47 +01:00
Will Fitch
fb2091b1d4 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fix #62479: Some chars not parsed in passwords
2014-01-18 19:41:45 -05:00
Will Fitch
da83b513b2 Fix #62479: Some chars not parsed in passwords
This fixes an issue where backslashes and spaces aren't
correctly parsed for passwords.
2014-01-18 19:27:40 -05:00
Xinchen Hui
c081ce628f Bump year 2014-01-03 11:08:10 +08:00
Xinchen Hui
c0d060f5c0 Bump year 2014-01-03 11:04:26 +08:00
Matteo Beccati
3ec28b1d1f Merge branch 'PHP-5.5'
* PHP-5.5:
  Fixed compiler warnings in ext/pgsql
  Fixed other compiler warnings in PDO_PGSQL
  Fixed compiler warning
  Update NEWS

Conflicts:
	ext/pdo_pgsql/pgsql_driver.c
2013-08-21 11:26:41 +02:00
Matteo Beccati
696852f2bd Fixed other compiler warnings in PDO_PGSQL 2013-08-21 11:22:33 +02:00
Matteo Beccati
2c0f09540e Fixed signedness warning 2013-06-07 09:38:58 +02:00
Matteo Beccati
19ead23e8e Fixed bug #63657 (pgsqlCopyFrom/To methods use Postgres < 7.3 syntax)
Although still supported (for now), I've replaced with pre-9.0 syntax.
Still not cutting edge, but it works with any version PDO_pgsql is
compatible with (7.4+) and will possibly keep working for longer than
what we already had.
2013-06-07 09:36:54 +02:00
Matteo Beccati
b62b8b4528 Fixed Bug #42614 (PDO_pgsql: add pg_get_notify support) 2013-06-05 01:58:55 +02:00
Matteo Beccati
baabd11929 Refactored custom PDO_pgsql methods to trigger errors/exceptions
BC Break: the custom methods were previously just return false on
failure. Now they throw an exception with a proper error message.
An hopefully welcome improvement, but some application might be
depending on the old behaviour. FWIW the PDO::pgsqlCopy* methods
are not documented, even though they are available since 5.3.x.
2013-06-05 01:58:37 +02:00
Remi Collet
2dd67abb7d Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  Fixed Bug #64949 (Buffer overflow in _pdo_pgsql_error)
2013-05-31 08:44:33 +02:00
Remi Collet
1c623e3b07 Fixed Bug #64949 (Buffer overflow in _pdo_pgsql_error)
There is a lot of call such as:
	pdo_pgsql_error(dbh, PGRES_FATAL_ERROR, "Copy command failed");
Where the 3rd paramater is a error message string where a sqlstate (5 chars)
is expected. This cause a segfault in copy_from.phpt and copy_to.phpt.

This is only a sanity check to avoid buffer overflow, but obviously this
calls need to be fixed (using NULL or a correct sqlstate).
2013-05-31 08:39:32 +02:00
Xinchen Hui
0a7395e009 Happy New Year 2013-01-01 16:28:54 +08:00
Xinchen Hui
a2045ff332 Happy New Year~ 2013-01-01 16:02:16 +08:00
Gustavo André dos Santos Lopes
fee191658d - Fixed bug #61267: pdo_pgsql's PDO::exec() returns the number of SELECTed
rows on postgresql >= 9
2012-03-08 08:52:28 +00:00
Gustavo André dos Santos Lopes
b7c9f8ae8a - Fixed bug #61267: pdo_pgsql's PDO::exec() returns the number of SELECTed
rows on postgresql >= 9
2012-03-08 08:52:28 +00:00
Felipe Pena
e4ca0ed09f - Year++ 2012-01-01 13:15:04 +00:00
Felipe Pena
4e19825281 - Year++ 2012-01-01 13:15:04 +00:00
Felipe Pena
23e438594d - Make usage of new PHP_FE_END macro 2011-07-25 11:42:53 +00:00
Felipe Pena
4b30846b50 - Make usage of new PHP_FE_END macro 2011-07-25 11:35:02 +00:00
Felipe Pena
191df85605 - Drop C++ style comments 2011-06-10 23:14:15 +00:00
Felipe Pena
c776180f6e - Drop C++ style comments 2011-06-10 23:14:15 +00:00
Felipe Pena
32b5f8a1a3 - Added new parameter parsing option (p - for valid path (string without null byte in the middle))
# The tests will be fixed in the next commits
2011-06-06 21:28:16 +00:00
Felipe Pena
927bf09c29 - Year++ 2011-01-01 02:19:59 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Ilia Alshanetsky
24b8bc3489 Removed the in_transaction handler for 5.3 to avoid BC break due to structure change 2010-06-15 11:13:20 +00:00
Ilia Alshanetsky
90906a91e9 Added inTransaction() method to PDO, with specialized support for Postgres 2010-06-10 12:11:19 +00:00
Ilia Alshanetsky
6ed1819bf4 Added inTransaction() method to PDO, with specialized support for Postgres 2010-06-10 12:11:19 +00:00
Ilia Alshanetsky
9daa864c4f Added support for copy to/from array/file for pdo_pgsql extension.
# original patch by Denis Gasparin
2010-06-10 11:11:29 +00:00
Ilia Alshanetsky
7ea9e879f3 Added support for copy to/from array/file for pdo_pgsql extension.
# original patch by Denis Gasparin
2010-06-10 11:11:29 +00:00
Ilia Alshanetsky
d2e14e3f20 Fixed bug #50728 (All PDOExceptions hardcode 'code' property to 0) 2010-01-12 12:46:54 +00:00
Sebastian Bergmann
9ba1e81665 sed -i "s#1997-2009#1997-2010#g" **/*.c **/*.h **/*.php 2010-01-03 09:23:27 +00:00