LociOiling Lv 1
During the recent server outage, users were able to work on a single set of compound library results. Even this limited access required opening the results before the outage started, and leaving the results open for the duration. The duration was approximately 60 hours.
The compound library panel continually attempts to refresh itself, even if no searches are pending. The refreshes are fairly frequent. The refresh seems to be a blocking action. When the server is unavailable for an extended period, a Foldit client becomes almost unusable if the compound library window is open. u
As soon a refresh fails, any previous compound library results disappear, and an "error getting shared solutions" messages appears in the compound library window. (Fortunately, results which are already open are not affected.)
Some thoughts:
- the compound library window should be on its own thread, so that refreshes don't block other actions
- if several refreshes in a row fail due to network errors, a less aggressive schedule might make sense
- the results of previous searches should still be available
Although I had previously thought compound library results were cached on the client, it appears this is no longer the case.
Foldit includes two directories, "sequence_data" and "compound_data", which seem to involve compound library results.
It looks like the sequence_data directory is no longer in use. In contains subdirectories which include a PDB file and other information in plaintext, readable by humans. The most recent entry is from early 2023 however.
It appears compound_data is still in use, but it doesn't seem to cover every single puzzle. When present, it contains a single .txt file. Despite the .txt extension, the file is encrypted, not readable by humans.
For the current compound library puzzle (2446), compound_data has a recent entry on one client, but not on another. It's clear that it's not used for all compound library operations.
Having a local compound library cache would be useful in the event of a long-duration server outage. It would also allow playing compound library puzzles in offline mode. Similar to the cookbook, offline play with cached compound library results would necessarily involve all users' compound results when a given client is played by more than one user. (There's a similar issue with having a cached cookbook.) I don't think that having multiple users on a single c:\Foldit directory is common, so a little compound sharing might be an acceptable limitation.