Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Temporary Archive File Misalignment after Restart in Clustered mode #741

Open
ctsims opened this issue Jun 23, 2020 · 0 comments
Open

Temporary Archive File Misalignment after Restart in Clustered mode #741

ctsims opened this issue Jun 23, 2020 · 0 comments

Comments

@ctsims
Copy link
Member

ctsims commented Jun 23, 2020

In a multi-worker cluster, the fact that the Archive File Cache isn't keyed at all by worker (and thus by filesystem) means that after a restart, if another worker has added a different key for the archive, the local request will fail with

org.javarosa.core.reference.InvalidReferenceException: Error deriving reference with exception jr://archive/6776c4dd73c94fdf908e7d6561591104/default/app_strings.txt.
        at engine.FormplayerArchiveFileRoot.derive(FormplayerArchiveFileRoot.java:51)
        at org.javarosa.core.reference.ReferenceManager.DeriveReference(ReferenceManager.java:134)
        at org.javarosa.core.reference.ReferenceManager.DeriveReference(ReferenceManager.java:88)
        at org.javarosa.core.reference.ReferenceDataSource.getLocalizedText(ReferenceDataSource.java:45)

for the first request until the archive is re-fetched. The Archive File Root process also does not ever attempt to successfully re-link any archives which are recovered successfully from the redis cache into the native guidToFolderMap cache if it DOES succeed in re-deriving it, whcih seems intentional

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant