You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, the FileContents path taken when drag-n-dropping on the web (I think it's only ever taken on the web, right? hard to speak for all platforms and desktop environments out there) loads the entire file at once instead of streaming it in piece by piece when possible (e.g. rrd).
We should consider how to stream-load data. The naive approach fn load_from_reader(&self, read: &mut dyn std::io::Read, …) doesn't work easily on the web, since you cannot block on a read. You can take a look at crates/re_log_encoding/src/stream_rrd_from_http.rs for the horror complexity required in streaming data on the web. That uses ehttp, which wraps an JS-async reader, by registering callbacks on each read chunk of data.
It should all probably be doable with an async function (async traits coming soon!) reading from an async reader.
Anyways, I am NOT suggesting we handle that now, but perhaps add a note for future generations who are interested in streaming data on drag-drop instead of waiting for the full file to load before it is shown.
The text was updated successfully, but these errors were encountered:
Currently, the
FileContents
path taken when drag-n-dropping on the web (I think it's only ever taken on the web, right? hard to speak for all platforms and desktop environments out there) loads the entire file at once instead of streaming it in piece by piece when possible (e.g. rrd).DataLoader
s 1: introduce, and migrate to,DataLoader
s #4517 (comment):The text was updated successfully, but these errors were encountered: