esi-issues icon indicating copy to clipboard operation
esi-issues copied to clipboard

get_corporation_assets returns duplicate keys after DT

Open guiguilechat opened this issue 6 years ago • 4 comments

Path is https://esi.evetech.net/v3/corporations/{corporation_id}/assets/

It happens every day after DT, for a short moment, AFAIK.

The returned pages of assets contains several assets in double. It automatically goes away after a time. If I restart my program to re fetch all the assets, the bug may remain for several tries. I therefore believe it's limited to a time frame.

Today I noticed it 30min after DT, and 35 min after DT(the time to modify my logs because it was crashing the log editor) it was no more present.

So far I only noticed it on the corporation asset path.

My guess is that some pages from the cache BEFORE DT are not cleaned correctly, and the call after DT merges some pages in the cached value. After the cache BEFORE DT has expired, it is removed and thus the cache value sent is not corrupted anymore.

Or something like that ^^

I need to make more checks(more logging -.-) to be sure there is no issue from my part, but the fact that it only appears on one specific path, for less than one hour, and it started a few weeks ago, makes me believe this is not the case.

guiguilechat avatar Jul 05 '19 11:07 guiguilechat

can confirm it happens again, 45 minutes after DT, and only on the corporation endpoint.

guiguilechat avatar Aug 02 '19 11:08 guiguilechat

now it happens for character too.

I say, I noticed some evolution :D

guiguilechat avatar Sep 16 '19 12:09 guiguilechat

BTW this happens because the first page is updated but the other pages are not.

14:00:30.733 [pool-33-thread-1] WARN f.g.jcelechat.jcesi.ConnectedImpl - mismatching page cache data [url=https://esi.evetech.net/v3/characters/X/assets/?&page=2 Expires=[Mon, 16 Sep 2019 12:10:51 GMT]] with first page [url=https://esi.evetech.net/v3/characters/X/assets/?&page=1 Expires=[Mon, 16 Sep 2019 13:00:24 GMT]]

Also I added tests to check the mismatches and I actually have them often. In assets they don't appear a lot(only 1H after DT), but eg in market data, even if I ask 1s after expiry the first page is the same (with an expiry that is in the past) and the 2nd page has different value. For this endpoint I would say 1/10 of the time I have a mismatch.

guiguilechat avatar Sep 16 '19 12:09 guiguilechat

should be fixed by CCP_blakara. to test tomorrow after DT.

guiguilechat avatar Dec 20 '22 17:12 guiguilechat