-
Notifications
You must be signed in to change notification settings - Fork 168
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
download progress estimate is always 1.0 #7869
Comments
➤ PM Bot commented: Jira ticket: RCORE-2193 |
@jbreams @tgoyne what was the idea behind #7780 to make it compatible for multiprocess sync through the file? I wasn't able to review the change since it overlapped with my timeoff, but i don't quite see how these changes made sense. From what i understand, the downloadable bytes or progress estimate from DOWNLOAD message are only relevant during active sync connection (we were essentially emitting every notification only at the time of receiving the message), and only after changeset is stored (for initial bootstrap or change of query) or applied immediately in steady state on reconnect. Saving these values for later didn't provide anything really for download path. In multiprocess sync should it be reused later somehow? |
The process which is not the one connected to the server needs to be able to report synchronization progress to the developer while it is happening, which requires storing it somewhere that can be shared between processes. |
Expected results
non-zero values reported during sync
Actual Results
estimate is always 1.0
Steps & Code to Reproduce
have some data on the server, open new realm and set the query to fetch some of it, wait for subscriptions to bootstrap, check reported values
sample testcase to see the problem:
log output
Core version
Core version: 14.10.3
#7780 and #7796 changed how the progress is processed, seemingly assuming that the progress from download message is stored in history, but for bootstrap messages it's first stored in bootstrap store, until all messages are received, and only then the changesets are applied. This effectively means that
check_progress
fetches only last pre-bootstrap value for progress.Also, now estimate is treated as bytes unconditionally even for flx and initial history scan on reconnect, effectively mixing the values.
The text was updated successfully, but these errors were encountered: