[Investigating] Incorrect GW Scores

Going by what is known it’s a very basic concurrency issue. The server keeps track of an aggregated score, when two battles results arrive close enough together something like the following happens:

1.) Current guild score is 10000 points.
2.) Member A finishes battle with 1500 points.
3.) Member B finished battle with 1300 points.
4.) Thread A reads current guild score, 10000 points.
5.) Thread B reads current guild score, 10000 points.
6.) Thread A adds 1500 points to the read guild score, overwriting the current guild score with 11500 points.
7.) Thread B adds 1300 points to the read guild score, overwriting the current guild score with 11300 points.
8.) Current guild score is 11300 points, 1500 points got lost.

The solution is to make reading and updating the score a transaction, which your database is guaranteed to support in some way. A band aid measure is to sum up the whole score again right at weekly reset as part of handling the daily win, there can’t be any further battle results incoming at that point.

1 Like

What you have described is called “lost update”.
Based on the troop Mongo, they are using mongodb, which is a no-sql database and not ACID complete.

This bug has dictated the winner of B1 (1.5K gem reward) for the 2nd time on PC/Mobile.

1st time was Anonymous the week of April 25th 2022.
Now, last week to Black Dragon May 22nd 2023.
assuming Sol did not also have an equivalent uncounted battle.

Black Dragon Final score with proper 27/3 rule calculations should be: 1,533,519

I have submitted support ticket containing the details of who/what/when with full calculations.

We want a fair result based on the expected parameters of the game mechanics.

6 Likes

They are still [Investigating]. Give them couple more years…

5 Likes

The game is designed to max your stats to be competitive in guild wars.
With broken guild wars calculation it makes no sense to buy all that passes anymore to have best possible account.
I wish we could show them only 1 time, that they have to deliver quality, if they want to get money from us!

3 Likes

Bug strikes again in B1 GWs.
Missing 1 battle on the 4th day(purple) for 1 player. Have full details of course but my support ticket hasnt even been responded to in the last 2 months so… probably not worth putting in the effort to fully document this one.

Black Dragon final guild score should have been 1,552,240 for July 2023

5 Likes

Bug strikes again in B1 GWs.
Missing 1 battle on the 1st fight of Day4(brown)
Have full details of course but my support ticket hasnt even been responded to in the last 3 months so… probably not worth putting in the effort to fully document this one.

The team have all the info we could find so far about this, if they need anything new that we can’t pull from the logs directly, I will let you all know here.

1 Like