# Catch Lost Updates Before Release: A Two-Client PostgreSQL … | Percona Community

**URL:** <https://forums.percona.com/t/catch-lost-updates-before-release-a-two-client-postgresql-percona-community/41378>\
**Category:** Community website\
**Created:** [October 27, 2026, 3:59pm UTC](https://forums.percona.com/t/catch-lost-updates-before-release-a-two-client-postgresql-percona-community/41378 "2026-10-27T15:59:06Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![daniil.bazhenov](https://sea1.discourse-cdn.com/flex019/user_avatar/forums.percona.com/daniil.bazhenov/32/62_2.png) [@daniil.bazhenov](https://forums.percona.com/u/daniil.bazhenov)\
**Post date:** [October 27, 2026, 3:59pm UTC](https://forums.percona.com/t/catch-lost-updates-before-release-a-two-client-postgresql-percona-community/41378/1 "2026-10-27T15:59:07Z")

</div>

Two successful reservations of three units should reduce stock from ten to four. A read-calculate-write operation can instead leave seven: both clients overwrite the row with a value calculated from an earlier read. That mismatch is what this lab checks. The release check is an invariant:

* * *
This is a companion discussion topic for the original entry at [https://percona.community/blog/2026/10/27/catch-lost-updates-before-release/](https://percona.community/blog/2026/10/27/catch-lost-updates-before-release/)
