[pgjdbc/pgjdbc] f28a57: Introduce AutoSave = SERVER functionality

Craig Ringer <[email protected]>
Newsgroups gmane.comp.db.postgresql.jdbc
Message-ID <5b646d071cf_18dd22ab590e76f8819841@hookshot-fe-dfcc362.cp1-iad.github.net.mail>
  Branch: refs/heads/sql07-autosave-statement-rollback
  Home:   https://github.com/pgjdbc/pgjdbc
  Commit: f28a5726d5c25701cf4743a1a6adde12c2796d3e
      https://github.com/pgjdbc/pgjdbc/commit/f28a5726d5c25701cf4743a1a6adde12c2796d3e
  Author: Nikhil Sontakke <[email protected]>
  Date:   2018-05-31 (Thu, 31 May 2018)

  Changed paths:
    M README.md
    M docs/documentation/head/connect.md
    M pgjdbc/src/main/java/org/postgresql/core/ServerVersion.java
    M pgjdbc/src/main/java/org/postgresql/core/v3/ConnectionFactoryImpl.java
    M pgjdbc/src/main/java/org/postgresql/core/v3/QueryExecutorImpl.java
    M pgjdbc/src/main/java/org/postgresql/jdbc/AutoSave.java
    M pgjdbc/src/main/java/org/postgresql/jdbc/BatchResultHandler.java
    M pgjdbc/src/test/java/org/postgresql/test/jdbc2/AutoRollbackTestSuite.java
    A pgjdbc/src/test/java/org/postgresql/test/jdbc2/BatchAutoSaveTest.java
    M pgjdbc/src/test/java/org/postgresql/test/jdbc2/Jdbc2TestSuite.java

  Log Message:
  -----------
  Introduce AutoSave = SERVER functionality

If the Postgres server (11.0 and above) supports transaction
level rollback functionality, then instead of using JDBC side
manual savepoints in AutoSave=ALWAYS mode, use the server
side implementation. This patch introduces a new option for
AutoSave: SERVER for the same. Patch also includes relevant
test cases (BatchAutoSaveTest.java) and documentation changes


  Commit: 448b981ff1676bd8f204c612d4e98106c5850196
      https://github.com/pgjdbc/pgjdbc/commit/448b981ff1676bd8f204c612d4e98106c5850196
  Author: Craig Ringer <[email protected]>
  Date:   2018-07-30 (Mon, 30 Jul 2018)

  Changed paths:
    M pgjdbc/src/main/java/org/postgresql/PGProperty.java

  Log Message:
  -----------
  Autosave patch failed to amend PGProperty.AUTOSAVE


  Commit: 1de16b56aecd10b609b729b073c7a5edfb80892f
      https://github.com/pgjdbc/pgjdbc/commit/1de16b56aecd10b609b729b073c7a5edfb80892f
  Author: Craig Ringer <[email protected]>
  Date:   2018-07-30 (Mon, 30 Jul 2018)

  Changed paths:
    M pgjdbc/src/main/java/org/postgresql/core/v3/ConnectionFactoryImpl.java

  Log Message:
  -----------
  Make autosave=server missing server support error more specific

autosave=server would report "Transaction rollback statements are not supported"
even for completely unrelated connection errors like

    org.postgresql.util.PSQLException: Transaction rollback statements are not supported
      ...
    Caused by: org.postgresql.util.PSQLException: FATAL: role "test" does not exist
      ...

Now it'll properly re-throw for other cases.


  Commit: ed9634830338487c661f56a7d38ba240801a5343
      https://github.com/pgjdbc/pgjdbc/commit/ed9634830338487c661f56a7d38ba240801a5343
  Author: Craig Ringer <[email protected]>
  Date:   2018-08-03 (Fri, 03 Aug 2018)

  Changed paths:
    M pgjdbc/src/main/java/org/postgresql/core/v3/QueryExecutorImpl.java

  Log Message:
  -----------
  Allow autosave=server to pipeline batches, avoiding round trips

Craig Ringer and Muhammad Altaf


Compare: https://github.com/pgjdbc/pgjdbc/compare/f28a5726d5c2^...ed9634830338
      **NOTE:** This service has been marked for deprecation: https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.