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

CreateWithRemoteFilesOrderedMembersActor isn't thread safe #3722

Open
mbklein opened this issue Mar 28, 2019 · 4 comments
Open

CreateWithRemoteFilesOrderedMembersActor isn't thread safe #3722

mbklein opened this issue Mar 28, 2019 · 4 comments
Labels
Milestone

Comments

@mbklein
Copy link
Member

mbklein commented Mar 28, 2019

Descriptive summary

Since ActionDispatch::MiddlewareStack reuses specific middlewares from a pool at runtime, individual middlewares (such as actors) should not count on having mutable instance variables. In this case, that manifested through the @ordered_members accumulator on the CreateWithRemoteFilesOrderedMembersActor actor, which ended up with a jumble of unrelated file sets under heavy ingest load (such as a batch ingest operation).

@no-reply
Copy link
Contributor

I'm tempted to fix this issue by dropping ActionDispatch::MiddlewareStack. We're really only using it to provide us a stack, and there's no reason we need this pooling, or other MiddlewareStack features.

@mbklein
Copy link
Member Author

mbklein commented Oct 29, 2019

I support this plan.

@no-reply no-reply modified the milestones: 3.x series, Backlog Mar 9, 2021
@jlhardes
Copy link
Contributor

jlhardes commented Mar 9, 2021

This is work that could be done but is not something the Hyrax Maintenance WG is going to undertake. Valkyrie will be offering improvements for Fedora users so if this is something that is needed in the meantime, it is an open issue that someone in the community can take.

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

No branches or pull requests

3 participants