The latest PostgreSQL JDBC Driver with Pega Platform 8.4
Customer reported that the latest PostgreSQL JDBC Driver, "postgresql-42.2.11.jar" won't work with Pega Platform. When they try to start Pega Platform, it throws an error below:
ERROR - There was a problem committing a transaction on database pegarules com.pega.pegarules.pub.database.DatabaseException: Database-General There was a problem committing a transaction on database pegarules 0 25P02 The database returned ROLLBACK, so the transaction cannot be committed. Transaction failure cause is <<ERROR: duplicate key value violates unique constraint "pr_sys_ruleset_index_pk"...
However when they replace the JDBC driver with old one, such as "postgresql-42.2.9.jar", Pega Platform starts without a problem. They are pretty positive that this issue is being caused by JDBC driver. Since this new driver seems to be just released this month, I was unable to find any reference information on web, or Platform Support Guide. Anyone faces the same issue? Does our assumption sound fair? Please let me know.
***Edited by Moderator: Pallavi to update SR Details***
GCS has just figured that JDBC Driver 42.2.11 had changed the way a silent rollback is handled - when a commit fails (for whatever reason), a sqlexception is raised (instead of a silent rollback).
Given this situation, below are the solutions:
(1) Use old JDBC Driver 42.2.10 or lower
(2) Use the latest JDBC Driver 42.1.12 (this was just released two days ago - 3/31/2020).
(3) Use the JDBC Driver 42.2.11, and also add below connection property to your context.xml to disable the settings:
Below is the screenshot of context.xml in my local machine.
I've verified that Driver 42.2.12 works fine without doing anything like 42.2.10, but they may change the specification back to 42.2.11 again at some point later. I will discuss with GCS and Engineering team how this issue should be handled onward.