nehtik / epgp

Automatically exported from code.google.com/p/epgp
0 stars 0 forks source link

Race between zoning and recurring award (global config is unavailable) #459

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Possibly reload ui / resuming a recurring.
2.
3.

What is the expected output?
EPGP: +750 EP (Ulduar (Heroic) - Standby) to Dreaychoe, Brutalblade, Disin
What do you see instead?
EPGP: +1000 EP (Ulduar (Heroic) - Standby) to Dreaychoe, Brutalblade, Disin

It is possible that they get the wrong EP added also.

Original issue reported on code.google.com by troeks@gmail.com on 30 Jul 2009 at 8:58

GoogleCodeExporter commented 8 years ago

Original comment by troeks@gmail.com on 30 Jul 2009 at 9:32

GoogleCodeExporter commented 8 years ago
Is it possible that this is caused by reloadui -> recurring tick happening 
before the 
client reads guild info for standby %?

Original comment by evlogimenos on 31 Jul 2009 at 6:52

GoogleCodeExporter commented 8 years ago
It seems unlikely, as EPGP usually gets the standby percentage milliseconds 
after the
reloadui, which is long before a user can manually interact with the popup 
dialog to
resume the recurring ticker.

Original comment by troeks@gmail.com on 31 Jul 2009 at 9:32

GoogleCodeExporter commented 8 years ago
I tried this on my test guild and it works correctly. Weird ain't it? :-)

Original comment by evlogimenos on 31 Jul 2009 at 1:14

GoogleCodeExporter commented 8 years ago
I wonder how it happened my self, it also only happened once or twice. I'll try 
to
sit down and debug it the next time I see it happens.

Original comment by troeks@gmail.com on 31 Jul 2009 at 4:49

GoogleCodeExporter commented 8 years ago
I noticed the bug again today while wiping on Freya. After some minor testing I 
found
the initial culprit: zoning.

I managed to reproduce it by doing the following:
1. Start a recurring.
2. Zone
3. Wait for the recurring to hit.

The following happened:
0008.06| R Yaranaika: EPGP: +10 EP (oh hi thar) to Rislunsj, Yaranaika
0008.06| R Yaranaika: EPGP: +10 EP (oh hi thar - Standby) to Killerbee

This is with 75% for those on standby.

Some quick rounds of testing (it's past 12AM after all right now!) indicates 
that
opening the EPGP frame or forcing a update of the guild list will fix the 
issue, and
set extras to 75%.

Anything that triggers a update of the guild roster will fix the issue in other 
words.

Original comment by troeks@gmail.com on 31 Jul 2009 at 10:14

GoogleCodeExporter commented 8 years ago
It will be safer to store decay, base_gp, min_ep and extras_p in saved 
variables. Even 
with a guild roster after zoning we might have a race condition. Come to think 
about it, 
even saving in the db is problematic since in EPGP the db is not available 
until the first 
GUILD_ROSTER. Chicken and egg in other words :-/

Original comment by evlogimenos on 1 Aug 2009 at 10:57

GoogleCodeExporter commented 8 years ago

Original comment by evlogimenos on 1 Aug 2009 at 11:01

GoogleCodeExporter commented 8 years ago
A more sane solution would be to delay the recurring award to happen after a 
GUILD_ROSTER_UPDATE (like loading does).

Original comment by evlogimenos on 1 Aug 2009 at 11:02

GoogleCodeExporter commented 8 years ago
This is fixed in r1312 and r1313.

Original comment by evlogimenos on 13 Aug 2009 at 8:47

GoogleCodeExporter commented 8 years ago
This is partially fixed. LibGuildStorage needs a fix as well. Trond will take a 
look at this 
later.

Original comment by evlogimenos on 13 Aug 2009 at 9:53

GoogleCodeExporter commented 8 years ago
Issue 510 has been merged into this issue.

Original comment by evlogimenos on 3 Dec 2009 at 11:33

GoogleCodeExporter commented 8 years ago
This should be fixed in epgp-6.

Relevant change: 
http://code.google.com/p/epgp/source/detail?r=2c1a977119cb1dce51fba66131431f840c
7e13b2

Original comment by evlogimenos on 2 Dec 2010 at 11:40