Daily game in multiple monthly archives

Sort:
skelos

An interesting case:

 

https://api.chess.com/pub/player/integrator/games/archives

 

{"archives":["https://api.chess.com/pub/player/integrator/games/2008/05","https://api.chess.com/pub/player/integrator/games/2008/12","https://api.chess.com/pub/player/integrator/games/2009/07","https://api.chess.com/pub/player/integrator/games/2009/08"," ...]}

https://api.chess.com/pub/player/integrator/games/2009/07

{"games":[...{"url":"https://www.chess.com/daily/game/23594327","pgn":"[Event \"The truth shall set u free! - Board 1\"]\n[Site \"Chess.com\"]\n[Date \"2009.07.10\"]\n[Round \"-\"]\n[White \"integrator\"]\n[Black \"madz123456\"]\n[Result \"1-0\"]\n[WhiteElo \"2324\"]\n[BlackElo \"2078\"]\n[TimeControl \"1/259200\"]\n[Termination \"integrator won on time\"]\n[StartTime \"19:32:57\"]\n[EndDate \"2009.08.02\"]\n[EndTime \"06:02:08\"]\n[Link \"https://www.chess.com/daily/game/23594327\"]\n\n1. e4 e5 2. f4 exf4 3. Bc4 Nf6 4. Nc3 c6 5. d4 d5 6. exd5 cxd5 7. Bb5+ Nc6 8. Bxf4 Bd6 9. Nge2 O-O 10. O-O Be6 11. a3 Ne4 12. Kh1 Be7 13. Nxe4 dxe4 14. c4 a6 15. Bxc6 1-0","time_control":"1/259200","end_time":1249192928,"rated":true,"fen":"r2q1rk1/1p2bppp/p1B1b3/8/2PPpB2/P7/1P2N1PP/R2Q1R1K b - - 1 15","start_time":1247254377,"time_class":"daily","rules":"chess","white":{"rating":2324,"result":"win","@id":"https://api.chess.com/pub/player/integrator","username":"integrator"},"black":{"rating":2078,"result":"timeout","@id":"https://api.chess.com/pub/player/madz123456","username":"madz123456"},"match":"https://api.chess.com/pub/match/10901"}]}

https://api.chess.com/pub/player/integrator/games/2009/08

{"games":[{"url":"https://www.chess.com/daily/game/23594327","pgn":"[Event \"The truth shall set u free! - Board 1\"]\n[Site \"Chess.com\"]\n[Date \"2009.07.10\"]\n[Round \"-\"]\n[White \"integrator\"]\n[Black \"madz123456\"]\n[Result \"1-0\"]\n[WhiteElo \"2324\"]\n[BlackElo \"2078\"]\n[TimeControl \"1/259200\"]\n[Termination \"integrator won on time\"]\n[StartTime \"19:32:57\"]\n[EndDate \"2009.08.02\"]\n[EndTime \"06:02:08\"]\n[Link \"https://www.chess.com/daily/game/23594327\"]\n\n1. e4 e5 2. f4 exf4 3. Bc4 Nf6 4. Nc3 c6 5. d4 d5 6. exd5 cxd5 7. Bb5+ Nc6 8. Bxf4 Bd6 9. Nge2 O-O 10. O-O Be6 11. a3 Ne4 12. Kh1 Be7 13. Nxe4 dxe4 14. c4 a6 15. Bxc6 1-0","time_control":"1/259200","end_time":1249192928,"rated":true,"fen":"r2q1rk1/1p2bppp/p1B1b3/8/2PPpB2/P7/1P2N1PP/R2Q1R1K b - - 1 15","start_time":1247254377,"time_class":"daily","rules":"chess","white":{"rating":2324,"result":"win","@id":"https://api.chess.com/pub/player/integrator","username":"integrator"},"black":{"rating":2078,"result":"timeout","@id":"https://api.chess.com/pub/player/madz123456","username":"madz123456"},"match":"https://api.chess.com/pub/match/10901"}]}

Same game, is right to be in the August archive but should not be in July as well.

I only noticed this because the player has 8W-0L-0D as his record, and my script picking games out of the archive when told "everything" found nine games. After a little head scratching I dug in and found the extra.

I will add some checking code to my script to make sure it doesn't inadvertently get duplicates (which could happen if I tell it the wrong files, so now that I've thought of it it's a useful enhancement). I will post if I happen across other instances.

skelos

Yes, it's present for multiple accounts, and doesn't seem to be limited to a single game per archive. sad.png

Once the bug is identified and fixed, if possible I'd like to know when it was introduced, as it makes any cached data I have – and I only fetch new archives by default – should be tossed. Not a big deal. More importantly, for some statistical analyses the data is wrong.

The bug includes live games as well as daily games.

 

I process archives generally in reverse chronological order, thus no duplicates yet for 2018-05 but when going back to 2018-04 some are seen.

 

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783198584 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783189513 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783184561 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783173421 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783156186 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783150107 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783146326 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783134778 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783124019 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783117882 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2783052121 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782999243 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782992186 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782663570 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782654645 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-04.pgn: https://www.chess.com/live/game/2782639027 seen before (King_Rotund-2018-05.pgn)

King_Rotund-2018-03.pgn: https://www.chess.com/live/game/2717208119 seen before (King_Rotund-2018-04.pgn)

...

andreamorandini

Dear @skelos the bug has been introduced on 18/May/2018 and is affecting games that ends the first day of the month (that are incorrectly listed also in the last day of the month before). 

 

We are working on a solution that should be ready in the upcoming hours. Sorry for the inconvenience caused.

skelos

Thanks Andrea, particularly for identifying when the problem began; not long ago at all.

It pushed me to make my selection script check for duplicates which is no bad thing anyway. Always validate your input data when you can. happy.png

andreamorandini

@skelos, the fix has been deployed and cache refreshed. Thanks again!