Bug 677379 - Presto presents misleading info during delta rebuild
Summary: Presto presents misleading info during delta rebuild
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: yum-presto
Version: 14
Hardware: All
OS: Linux
unspecified
low
Target Milestone: ---
Assignee: Jonathan Dieter
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-02-14 14:58 UTC by Travis Kepley
Modified: 2011-07-07 22:12 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-07-07 22:12:17 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
rebuild example (63.12 KB, image/png)
2011-02-14 15:00 UTC, Travis Kepley
no flags Details

Description Travis Kepley 2011-02-14 14:58:35 UTC
Description of problem:
When updating a Presto enabled system, during the delta rebuild the plugin makes it appear as if it is actually downloading more data. There is a progress bar that looks very much like a wget progress bar, complete with KB/s or MB/s and total size.

It leads the user into thinking that the update is in fact downloading (especially considering the text reads as 'Finishing rebuild of RPMs, from deltarpms' as if the source is not on the disk).

This makes it easy to assume that Presto is downloading more data than if it had been disabled, which was my first guess.  However, after watching the interfaces with bwm-ng, it appears that it's simply a local rebuild--which is desirable.

Version-Release number of selected component (if applicable):
Any with Presto enabled

How reproducible:
Very

Steps to Reproduce:
1. Wait for updates to be released for system
2. Run 'yum update' from the command line with Presto plugin enabled
3. Watch the rebuild occur
  
Actual results:
The progress bar looks very much like it is actually downloading additional data with the KB/s or MB/s information in addition to the total size information

Expected results:
A more explicit statement that it is a local process or removal of the KB/s, MB/s and total MB.

Additional info:
It could be that I'm missing the point, or that it truly is downloading (which would be worse imo, as Presto would be serving little purpose).  However I feel that this is a simple fix that would make the experience much more clear for the end user. If nothing else, making it more clear will make the end user more aware of how good of a feature Presto is.

Attached screenshot to show the status.

Comment 1 Travis Kepley 2011-02-14 15:00:25 UTC
Created attachment 478643 [details]
rebuild example

Comment 2 Peter Fernandes 2011-02-14 15:56:22 UTC
Reassigned to yum-presto.

Comment 3 Jonathan Dieter 2011-02-14 16:15:29 UTC
Yes, this is a progress bar showing the local rebuild of rpms from deltarpms.  No data is being downloaded at this point.

The problem is that, without the progress bar, you may sit for minutes on end without any feedback from yum as to what it's doing.  The speed listed is useful for comparing the delta rebuild speed to the download speed.  If your download speed is very fast and you have a slow system, the rebuild speed will probably be slower and you may want to disable yum-presto.

If you have a better label than <delta rebuild>, I would be more than happy to change it, but we won't be removing the progress bar or speed indicators.

Comment 4 Travis Kepley 2011-02-14 18:07:17 UTC
Jonathan,

I understand and agree (for the most part) about the progress indications.  I think the issue is that, on a modest system, it's rebuilding at a speed that is very similar to many people's connections and it looks almost identical to the output of a wget operation.

I think if you didn't plan on changing anything else, at least indicate that it is a strictly local process as to avoid confusion.  Something like:

<delta rebuild (local process)> or <locally rebuilding rpm>

Also, the progress bar with the speed really doesn't help, you can easily display this information *after* the process is completed (local rebuild of delta took X seconds and saved Y space).

Again, the issue is really that unless you know otherwise, it appears that it is downloading data and there is little to make you think otherwise.  Maybe I'm the only one thinking this, but a quick poll of people around me using Fedora says otherwise.

Thanks for looking into this minor issue!

Comment 5 Chris Bredesen 2011-02-14 20:42:26 UTC
> The speed listed is useful for comparing the delta rebuild speed to the download speed.

I disagree.  In the case of several of us discussing this recently, it is a point of confusion, not enlightenment.  kB/sec is a data transfer measure.  No data is being transfered, so it would be most helpful if that measure were dropped.  The progress bar is quite helpful, however.

Another data point:

http://forums.fedoraforum.org/showthread.php?t=234951

Comment 6 Kendrick Gay 2011-02-14 21:03:58 UTC
(In reply to comment #5)
> > The speed listed is useful for comparing the delta rebuild speed to the download speed.
> 
> I disagree.  In the case of several of us discussing this recently, it is a
> point of confusion, not enlightenment.  kB/sec is a data transfer measure.  No
> data is being transfered, so it would be most helpful if that measure were
> dropped.  The progress bar is quite helpful, however.
> 
> Another data point:
> 
> http://forums.fedoraforum.org/showthread.php?t=234951

I'll chime in and say I do see the benefit of this feature, as it provides a good method for defining the grey area of whether or not Presto is good for your system.  However, the presentation is very misleading.  

I don't necessary want to see the feature dropped completely, but I would like to see it clarified a bit better as to what is happening.  Even if this meant dropped the kB/sec and just giving the average afterwards for use in comparisons to your known avg bandwidth.

Comment 7 Jonathan Dieter 2011-02-14 21:18:28 UTC
Ok, ok, I'm convinced.

I've looked at what it would take to remove the rebuild bitrate and total size.  Unfortunately, it's not trivial.  The problem is that we're using yum's download callback to display this information, and it automatically shows the bitrate and total size.  There might be a way to bypass this (using the DownloadBaseCallback.updateProgress() function), but it will be an ugly hack.

Let me think on the best way to do this.  Patches, as always, are welcome.

Comment 8 Travis Kepley 2011-02-14 21:23:09 UTC
Well, let me ask this...how hard would it be to add or append to a message to simply indicate that the process is local.  Makes sense on why it would present that now that there is an understanding of the faculties at play.  I would just imagine that we could easily add an additional line of information to clear any confusion.

Thanks!!

And I will definitely look into checking to see if it's easy to add that info.

Comment 9 Jonathan Dieter 2011-02-14 21:47:54 UTC
Adding messages is very easy.  I could easily change <delta rebuild> to <local delta rebuild> or <rebuilding deltarpms into rpms> or something like that.  The problem is that the progress bar will still show the "bitrate" and rebuild size, which is what seems to be confusing people.

Comment 10 Tim Lauridsen 2011-02-15 05:50:38 UTC
If is hard for me to see the problem here. I agree that <delta rebuild> could be more descriptive. But you are converting a stream of data and is writing the speed you are processing the data, it makes perfect sense to me. And if you have a fast connection then you can just disable presto, but presto is not just helping you gain speed, it is also reducing the load on mirrors and in that way you are helping others, even if you will get a faster download without presto.

Comment 11 Kendrick Gay 2011-02-15 15:26:46 UTC
(In reply to comment #10)
> If is hard for me to see the problem here. I agree that <delta rebuild> could
> be more descriptive. But you are converting a stream of data and is writing the
> speed you are processing the data, it makes perfect sense to me. And if you
> have a fast connection then you can just disable presto, but presto is not just
> helping you gain speed, it is also reducing the load on mirrors and in that way
> you are helping others, even if you will get a faster download without presto.

You've got a good handle on it.  The feature itself isn't the problem, per se, merely the presentation.  You get a progress bar and download rate for a number of downloads up to that point, then the exact same presentation is used for the rebuild, leading the user to believe the exact same thing is occurring - a download.

(In reply to comment #9)
> Adding messages is very easy.  I could easily change <delta rebuild> to <local
> delta rebuild> or <rebuilding deltarpms into rpms> or something like that.  The
> problem is that the progress bar will still show the "bitrate" and rebuild
> size, which is what seems to be confusing people.

I think <locally rebuilding deltarpms>, or something similar would suffice if a later message elaborated on it in the same manner Presto tells you the X% reduced (ie. "Presto reduced your download by 65% w/ an average rebuild rate of 900kB/s", or something to that effect), if that's feasible.

Comment 12 Jonathan Dieter 2011-07-07 22:12:17 UTC
This is fixed by changing the message to <locally rebuilding deltrarpms> in http://koji.fedoraproject.org/koji/buildinfo?buildID=252023 and will be in Fedora 16.  This fix will probably not be backported to Fedora 14 or 15.


Note You need to log in before you can comment on or make changes to this bug.