I haven't used PostgreSQL with ProIV but I have extensive painful experience with other databases
Like you, it made absolutely no sense to me why a savepoint would be being created. I cannot see how that could be normal, indeed I cannot see any reason for it in any regular ProIV processing. I have never seen that with Oracle or DB2.
I was about to suggest this might be an ODBC driver issue as neither Oracle nor DB2 use ODBC with ProIV, however.. I see you have already received an answer in the affirmative elsewhere viz:
+1 to the PostgreSQL community
Did that in fact fix most of your problem, it would be good to know?