Closed renemadsen closed 2 weeks ago
Version 53.1.0 should fix this. Please confirm.
The internal ORM transactions used for lazy loading participations were interfering with each other under even modest concurrency. That is being our control. We now manage (avoid) concurrency on this specific relationship ourselves.
I do not have a database myself where this can be provoked. The error was seen under H2 as well (it's Hibernate that seemed to be getting confused). Whenever possible, provide a database to reproduce with a recipe, and the matching logs.
In the other instance where this was reported I only had the logs to work from.
Regarding the "adding participations in two sessions at the same time" - owlcms systematically opens different transactions with different caches (persistence contexts) to populate the objects. How the same object would be populated twice concurrently in the same persistent context is a priori not possible, i.e. in theory the application code was already doing the right thing to avoid this issue. The newer code goes one step further by removing the need to do the lazy load.
Root cause is #1120
Describe the bug
Leading up to this fatal error, we have multiple warnings/errors like this:
owlcms version version 53.0.2
To Reproduce Have the competition run using postgresql and have it run into second group, then this error will come eventually.
Expected behavior Expect the code to recover by it self.
Screenshots N/A
Desktop (please complete the following information): Independet of desktop OS
Additional context Server is Epyc with with more than enough memory. Logs can be provided via mail.