Coder Social home page Coder Social logo

Propagate FileReader Errors about rosbag.js HOT 7 CLOSED

gkjohnson avatar gkjohnson commented on August 19, 2024
Propagate FileReader Errors

from rosbag.js.

Comments (7)

janpaul123 avatar janpaul123 commented on August 19, 2024

Interesting! I don't think we've loaded such big bag files in memory — usually we'd read them off the filesystem directly when they're that big. Any chance you might be hitting some memory limits? Maybe the bit about permissions is a red herring (especially since they say "typically due to")?

from rosbag.js.

gkjohnson avatar gkjohnson commented on August 19, 2024

Yeah I'd expect that downloading a 1GB file blob would fall into the "not recommended" category -- we've been using smaller bags for our work until now.

... usually we'd read them off the filesystem directly when they're that big.

We're considering building out an Electron app to support cases where our bag data is so large. Is that how you're reading files directly off the file system? Or are there other ways you're using to read files directly in the browser (such as the file input field)?

Maybe the bit about permissions is a red herring (especially since they say "typically due to")?

The error message definitely struck me as a generic one so I'd believe this.

Thanks!

from rosbag.js.

janpaul123 avatar janpaul123 commented on August 19, 2024

We're mostly using the drag and drop api. It gives you a File object with the only difference being that the data remains on disk. You can pass it into open from rosbag just like above.

from rosbag.js.

janpaul123 avatar janpaul123 commented on August 19, 2024

And yeah a file input field works the same way.

from rosbag.js.

jtbandes avatar jtbandes commented on August 19, 2024

Regardless of the cause, you're right that it seems to make a lot of sense to propagate the onerror event from the reader. As for reproducing it for testing, it does seem surprisingly tricky to force a failure, but it would work to instead just mock out the readAsArrayBuffer function for testing so that it just asynchronously calls the onerror.

from rosbag.js.

Katerhong avatar Katerhong commented on August 19, 2024

so, What is the conclusion?
I feel confused

from rosbag.js.

jtbandes avatar jtbandes commented on August 19, 2024

The original issue was fixed and published in version 1.3.2. If you are having trouble, I would recommend filing a new issue. By the way, you might also want to check out @foxglove/rosbag, a fork of this project with some updates to the API and more bug fixes.

from rosbag.js.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.