View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0004924 | Spring engine | General | public | 2015-08-05 23:01 | 2015-09-10 15:21 | ||||
Reporter | hokomoko | ||||||||
Assigned To | hokomoko | ||||||||
Priority | high | Severity | block | Reproducibility | random | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | 100.0 | ||||||||
Target Version | 101.0 | Fixed in Version | |||||||
Summary | 0004924: Path cache gets randomly corrupted | ||||||||
Description | I noticed desyncs every now and then where players have a bad path cache. This isn't due to code changes (happens in stable 100.0) and after regenerating the cache it works. I think it can be an issue in the cache generation itself. Suggestion: If path cache is incorrect - regenerate it (can it be a delete file and Spring.Reload?). | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
abma (administrator) 2015-08-06 13:18 |
are file writes to path-cache "atomic" ? i.e. create file.tmp, write all data to it, and when done, rename to file. so a crash of spring can't create broken files. afaik qtpfs has some "protection" against broken files. |
Jools (reporter) 2015-08-07 01:09 |
We have been analysing these types of desyncs for a while, it happens also in 98.0 but very rarely. We thought it could somehow be map-dependent, but so far we have not been able to isolate that. Also not all games where there is stale path cache will produce a real desync, but on the other hand, I think most of the desyncs that happen will have a stale path cache warning in the beginning. At least this is true for xta and not counting obvious desyncs such as watching replay with wrong engine version... |
hokomoko (developer) 2015-09-08 14:09 |
I've attached two path files generated on different systems. The discrepancies inside seem very small, I wonder if it's to do with floating point issues. |
hokomoko (developer) 2015-09-08 14:10 |
https://dl.dropboxusercontent.com/u/204076271/path/OnyxCauldron1.62305405535.pe_a.zip https://dl.dropboxusercontent.com/u/204076271/path/OnyxCauldron1.62305405535.pe_b.zip Here are the other files from the same systems. |
hokomoko (developer) 2015-09-10 10:52 |
Fix 63d09c0c5b91da1a847028e726ce68cf1f4c04a6 committed to develop branch: Fix 0004924 Added groundBlockingObjectMap hash Heightmap hash is recalculated for PE, repo: spring changeset id: 5588 |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2015-08-05 23:01 | hokomoko | New Issue | |
2015-08-06 13:18 | abma | Note Added: 0015045 | |
2015-08-07 01:09 | Jools | Note Added: 0015048 | |
2015-09-08 14:07 | hokomoko | File Added: OnyxCauldron1.62305405559.pe2_a.zip | |
2015-09-08 14:07 | hokomoko | File Added: OnyxCauldron1.62305405559.pe2_b.zip | |
2015-09-08 14:09 | hokomoko | Note Added: 0015125 | |
2015-09-08 14:10 | hokomoko | Note Added: 0015126 | |
2015-09-08 14:19 | hokomoko | Priority | normal => high |
2015-09-08 14:19 | hokomoko | Severity | major => block |
2015-09-08 14:19 | hokomoko | Target Version | => 101.0 |
2015-09-08 19:05 | jK | Changeset attached | => spring develop 71b3c583 |
2015-09-10 10:52 | hokomoko | Changeset attached | => spring develop 63d09c0c |
2015-09-10 10:52 | hokomoko | Note Added: 0015135 | |
2015-09-10 10:52 | hokomoko | Assigned To | => hokomoko |
2015-09-10 10:52 | hokomoko | Status | new => resolved |
2015-09-10 10:52 | hokomoko | Resolution | open => fixed |
2015-09-10 15:21 | hokomoko | Changeset attached | => spring develop d65475ef |