<p></p>
<p dir="auto">Locking is actually one place where I'm not very good because most of my work with databases is only on reading not on making updates so I don't normally have to worry about them.</p>
<p dir="auto">I think the locks are necessary because the default isolation level in Postgres is <code class="notranslate">read committed</code> and you would have to run at <code class="notranslate">repeatable read</code> for write conflicts to be detected automatically. Even then it would only work for writes to the note objects and wouldn't prevent duplicate comments as that involves the creation of separate objects that wouldn't clash.</p>
<p dir="auto">So yes, this looks reasonable to me.</p>
<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />Reply to this email directly, <a href="https://github.com/openstreetmap/openstreetmap-website/pull/5053#issuecomment-2273986845">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/AAK2OLPNE5GSORKTXCYOQKDZQJLM3AVCNFSM6AAAAABMC4YHKSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENZTHE4DMOBUGU">unsubscribe</a>.<br />You are receiving this because you are subscribed to this thread.<img src="https://github.com/notifications/beacon/AAK2OLLXFCUEY4UEXQOPYZTZQJLM3A5CNFSM6AAAAABMC4YHKSWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTUHRJER2.gif" height="1" width="1" alt="" /><span style="color: transparent; font-size: 0; display: none; visibility: hidden; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0; mso-hide: all">Message ID: <span><openstreetmap/openstreetmap-website/pull/5053/c2273986845</span><span>@</span><span>github</span><span>.</span><span>com></span></span></p>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/openstreetmap/openstreetmap-website/pull/5053#issuecomment-2273986845",
"url": "https://github.com/openstreetmap/openstreetmap-website/pull/5053#issuecomment-2273986845",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
}
]</script>