-
Notifications
You must be signed in to change notification settings - Fork 176
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
Updates from permit internal fork #546
Conversation
✅ Deploy Preview for opal-docs canceled.
|
d2fa7ef
to
7e9b778
Compare
5487f13
to
04cf733
Compare
04cf733
to
475c36c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@roekatz i reviewed the changes and they are overall ok - however - i did a comparison to the private fork and there are a bunch of changes that require deeper review and justification.
let's sync on that when you are available.
I left detailed comments in this ticket:
https://linear.app/permit/issue/PER-9276/opal-public-candidate-to-opal-private-cr-fixes
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Exciting stuff!
The same process does all the fetches, the file lock mechanism isn't fair (so a task can wait a lot of time before entering the lock)
This should utilize pygit's memory caching and improve performance
WARN for unhealthy, DEBUG for healthy
…tch (of the relevant repo)
For example - due to broadcaster disconnection
The introduction of shards created a bug, because we might skip force fetching a url already fetched for another scope, when the scopes are not under the same shard (aka local clone)
The temp file is used to achieve atomic replacement of the older backup (using os.rename). But when using a fixed name for the temp file, different replicas sharing the volume could partially override it before the rename; thus making it possible to end up with a partial backup file
Should create different local branches to track the last reported state for each scope separated
Fix the local branch name (that tracks the remote branch for each scope) to f"scopes/{scope_id}". When the format f"{branch}/scope_{scope_id}" was used, the branch name would be invalid when `branch == "master"`. (can't create branch "master/..." if "master" already exists).
Should check if f"scopes/{self._scope_id}" is valid reference name, otherwise it always fails and we always encode it as hex
This causes a race when using the last stored bundle hash to fetch policy from server, Eventually client could try to store the same bundle twice (current hash is updated after the update is stored, but is checked before it's fetched)
Queue.get raised an error because queue creationg and queue handling (.get) occurred on different tasks
93c49ab
to
76fd0bf
Compare
No description provided.