-
Notifications
You must be signed in to change notification settings - Fork 24
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
Allow to restore older volume versions #3349
Conversation
…er if no versions are available
…into volume-restore
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.
Nice, code looks very good! Unfortunately, I couldn't test it on the dev server (I get an column not found exception). remove_dev and install_dev didn't work.
@jstriebel @fm3 If you have time on your hands, maybe you can double check why the schema isn't updated in this scenario?
@@ -275,6 +275,18 @@ class DataCube { | |||
this.bucketIterator = ++this.bucketIterator % this.MAXIMUM_BUCKET_COUNT; | |||
} | |||
|
|||
collectAllBuckets(): void { | |||
for (const bucket of this.buckets) { | |||
if (bucket != null) { |
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.
Why is this check necessary? According to the flow types, this.buckets is an array of non-null databuckets?
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.
The buckets array is created like this: this.buckets = new Array(this.MAXIMUM_BUCKET_COUNT);
. When iterating over buckets using the for ... of syntax, you'll get all the empty entries as well.
@@ -168,6 +171,9 @@ function* labelWithIterator(iterator, contourTracingMode): Saga<void> { | |||
} | |||
|
|||
function* copySegmentationLayer(action: CopySegmentationLayerAction): Saga<void> { | |||
const allowUpdate = yield* select(state => state.tracing.restrictions.allowUpdate); |
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.
Ideally, we wouldn't need to add this check to all volume-modifying functions but instead have a central place for it, but this is probably out of scope of this PR.
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.
Yes, I totally agree with you, let's think of a nice way to do this as part of another PR :)
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.
#3356 for reference
package.json
Outdated
@@ -79,7 +79,7 @@ | |||
"gl": "scalableminds/headless-gl#4.0.5" | |||
}, | |||
"scripts": { | |||
"start": "./sbt run -jvm-debug 5005", | |||
"start": "./sbt run -jvm-debug 5005 -J-XX:MaxMetaspaceSize=2048m", |
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.
Is this intentional? Is this only used for dev or also for production mode?
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.
yarn start is only used locally (and we merged the same change already elsewhere)
I just tested it and it works very well 👍 However, I noticed two things:
|
There is a version 0, which is the initial version, but that is not sent by the server, and therefore not yet displayed. I already fixed this on my version view refinement branch :)
That is not intentional, I'll have a look. |
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.
backend LGTM, will rely on your testing.
this will have to be adapted for the tracingstore module when bringing #3281 up to date (assuming that this one here is merged first. Otherwise this needs to be adapted here)
This PR enables the volume version restore view and adds previewing of older volume versions.
URL of deployed dev instance (used for testing):
Steps to test:
Issues: