Hello Sander,

Have you had time to verify the fix for this ticket?
https://sourceforge.net/apps/trac/jooq/ticket/802

With jOOQ 1.6.5 / 1.6.6, Postgres' INSERT .. RETURNING clause is now
fully supported, also for multi-record inserts

Cheers
Lukas

2011/8/23 Lukas Eder <[email protected]>:
> Hello Sander,
>
> Thanks for reporting that issue about risking race conditions or other
> inconsistencies with lastID() for Postgres:
> https://sourceforge.net/apps/trac/jooq/ticket/802
>
> This reminds me of another task that has been on the roadmap for a while:
> http://sourceforge.net/apps/trac/jooq/ticket/558
>
> MySQL supports an INSERT ... ON DUPLICATE KEY UPDATE ... clause, which
> is a very convenient short-cut for the SQL standard MERGE statement.
> Both statements are supported since jOOQ 1.6.0
>
> In those five dialects that support the MERGE statement (DB2, HSQLDB,
> Oracle, SQL Server, Sybase), the ON DUPLICATE KEY UPDATE clause can be
> supported "natively". In other dialects, simulation might be possible
> by running a SELECT followed by an INSERT / UPDATE, or by running an
> INSERT followed by an UPDATE on exception. These simulations will
> cause the same issues as you have experienced with lastID(). If not
> properly wrapped in transactions, race conditions can occur, and in
> the SELECT -> INSERT / UPDATE case, even deadlocks.
>
> Do you have any experience / ideas with this sort of statement /
> processing in Postgres? That might be very useful for other users, too
>
> Cheers
> Lukas
>

Reply via email to