Contest objects are currently processed by fetching the object, changing it, and then saving it back to the database. This has the chance for a rare possibility of two simultaneous requests overriding the data stored by another. Contest objects should instead store a delta, and when it is saved, apply the delta on to the fetched database version instead.
Contest objects are currently processed by fetching the object, changing it, and then saving it back to the database. This has the chance for a rare possibility of two simultaneous requests overriding the data stored by another. Contest objects should instead store a delta, and when it is saved, apply the delta on to the fetched database version instead.