-
Notifications
You must be signed in to change notification settings - Fork 26
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
Async IO for HttpsDataVault, Fox Error Handling #7137
Conversation
@frcroth do you happen to know a test dataset that uses brotli compression and can be accessed via https directly? |
I was able to validate that both gzip and brotli work ok with the adapted HttpsDataVault. Looks like play ws does decode gzip itself, but it then also “eats” the encoding header, so our own decode code does not attempt to decode it again. On the other hand, when ws encounters an encoding it does not know how to decode, it keeps the header and does not decode. So that also works with our VaultPath code. To test this I used this simple flask server:
and the test route in commit bdef9ce |
webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/VaultPath.scala
Show resolved
Hide resolved
...ssos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/zarr3/Zarr3Array.scala
Outdated
Show resolved
Hide resolved
webknossos-datastore/app/com/scalableminds/webknossos/datastore/datareaders/n5/N5Array.scala
Outdated
Show resolved
Hide resolved
webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/Encoding.scala
Outdated
Show resolved
Hide resolved
webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/Encoding.scala
Show resolved
Hide resolved
webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/HttpsDataVault.scala
Outdated
Show resolved
Hide resolved
webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/HttpsDataVault.scala
Show resolved
Hide resolved
webknossos-datastore/app/com/scalableminds/webknossos/datastore/datavault/HttpsDataVault.scala
Outdated
Show resolved
Hide resolved
def ?~>(s: String): Fox[A] = | ||
new Fox(futureBox.map(_ ?~! s)) | ||
|
||
// Add error message only in case of Failure, pass through Empty | ||
def ?~~>(s: String): Fox[A] = |
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.
Not totally happy with the name, can we find something more distinguishable?
…esign-right-sidebar * 'master' of github.com:scalableminds/webknossos: added Youtube videos to docs Log dataset uploads (with no conversion) to slack (#7157) Added "Automation Tutorial" to docs (#7160) fix logo image in README.md Second try for “Async IO for HttpsDataVault, Fox Error Handling” (#7155) Revert "Async IO for HttpsDataVault, Fox Error Handling (#7137)" (#7154) Async IO for HttpsDataVault, Fox Error Handling (#7137) Fix vault path for precomputed datasets (#7151) Add extended keyboard shortcut mode via ctrl + k for tool shortcuts (#7112) Shared Chunk Cache for all DatasetArrays, CacheWeight for AlfuCache (#7067)
play ws
in the HttpsDataVaultTODO
URL of deployed dev instance (used for testing):
Steps to test:
Issues:
?~>
? #7141