Bug 1148208

Summary: [rfe] enable deltarpm support by default
Product: [Fedora] Fedora Reporter: Rahul Sundaram <metherid>
Component: dnfAssignee: Honza Silhan <jsilhan>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: low    
Version: rawhideCC: abed, akozumpl, dtardon, dwmw2, erat.simon, gaspard.dhautefeuille, gbcox, hafflys, iweiss, jreznik, jsilhan, kevin, kkshethin, lars, leigh123linux, lsatenstein, maarten.14C, mattdm, packaging-team-maint, paul_cynara, pmatilai, pnemade, praiskup, rholy, rjones, robatino, rz, sumitkbhardwaj, theblessedadventhope, tim.lauridsen
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: dnf-0.6.3-2.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-12-13 09:53:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Rahul Sundaram 2014-10-01 00:29:17 UTC
Description of problem:

Since Fedora 12 or so (my blog post on this at http://mether.wordpress.com/2009/10/01/fedora-12-and-yum-presto-plugin/) deltarpm support has been available by default for many users.  dnf should enable this configuration by default as well

Use cases at 

https://fedoraproject.org/wiki/Features/Presto

Comment 1 Honza Silhan 2014-10-03 16:39:28 UTC
Hi Rahul, using deltarpm is not always faster. It depends on machine and internet connection. Let's wait till F22 and if more users will prefer it by default, we will change it.

Comment 2 Simon A. Erat 2014-10-03 22:30:16 UTC
Hi Rahul

No.
I have an internet flatrate at 150 mbs, and downloading the full rpms is ALOT faster than the the work that the delta rpms requires.
This is specialy true if the updates are 'only' up to 50-100 mb but contain alot of files.

Comment 3 Rahul Sundaram 2014-10-03 22:39:05 UTC
I understand that for some users delta rpms are not needed and this remains a configuration option but the question is whether delta rpms are beneficial and desired by users in general.

Comment 4 Stephen Haffly 2014-10-03 23:47:06 UTC
My preference is to enable it. While my home connection is fast and not capped, the situation changes when I travel. In that case, I have to take what I can get for connectivity.

That being said, will yumex still be used, only with dnf instead of yum? If so, why not add a checkbox under Options for use of delta rpms? That would make it easy to enable/disable as desired.

Comment 5 Paul Miller 2014-10-04 00:14:48 UTC
Delta rpms always save me time over doing full package downloads for updates. I vote for making delta rpms enabled by default in dnf. Either way, as long as it's a user configuration option to have it enabled or disabled, I'm good with that.

Comment 6 kksheth 2014-10-04 07:13:05 UTC
original purpose of turning deltra-rpm's on by default for yum was so that
providers could save bandwidth, and thus, lower operating costs.

what has changed to remove this default.

Please bring it back or give asome indications or give some option to set it by default.

I at India, value my bandwidth and its costs.

Comment 7 leigh scott 2014-10-04 08:44:27 UTC
I've always disliked delta rpm and believe it shouldn't be active by default.
If someone has a cap or low bandwidth they are free to enable it, why inflict the delta rpm on those who don't need it!!

Comment 8 Tim Lauridsen 2014-10-04 15:27:45 UTC
(In reply to Stephen Haffly from comment #4)
> That being said, will yumex still be used, only with dnf instead of yum? If
> so, why not add a checkbox under Options for use of delta rpms? That would
> make it easy to enable/disable as desired.

Yes, yumex will still be used 
http://www.yumex.dk/2014/09/yum-extender-407-released-dnf.html

I not sure if low level dnf options fits into yumex, it is easier to set them  directly in dnf.conf.

Comment 9 Leslie Satenstein 2014-10-04 16:53:39 UTC
I vote for delta rpms.  Three of my computers are in separate rooms, and not on same network domain.  Download time is significant via wi-fi.

And it would be useful if deltas worked with network installations.

By the way, I would very much prefer to obtain the kickstart file, and create my own DVD images. And hopefully those dvd images are in compressed mode. (deltas)

Comment 10 Steven Michael Williams 2014-10-05 01:04:13 UTC
I use delta rpms all the time because most of the connections I am on are limited to 3 Mbps down. Thankfully I have not had to deal with data caps, but those are becoming more common now thanks to AT&T, satelite internet and mobile broadband. I and I believe others are still benefited by delta rpms as opposed to those who aren't.

Comment 11 Panu Matilainen 2014-10-06 07:01:13 UTC
(In reply to kksheth from comment #6)
> original purpose of turning deltra-rpm's on by default for yum was so that
> providers could save bandwidth, and thus, lower operating costs.
> 

This is indeed THE point wrt default setting. Users can adjust the configuration to match their preference at their discretion, providers like mirrors can not.

If you want to have feedback beyond "I like it", "I hate it", ask from Fedora infrastructure people, not users.

Comment 12 Honza Silhan 2014-10-06 08:23:41 UTC
Right, some like it, some don't. If you don't like it, you have the right to change it in conf. Closing this survey.

Comment 13 Rahul Sundaram 2014-10-06 12:17:24 UTC
Some of the options have certain tradeoffs and so it is natural for people to have their preferences but this isn't a good reason to change the defaults from yum without a strong rationale to do so to minimize the pain of transition.

Regardless of that, at the minimum, this needs to be documented as a difference in https://rpm-software-management.github.io/dnf/cli_vs_yum.html

Comment 14 Matthew Miller 2014-10-06 12:25:51 UTC
This was an accepted feature for F11. (http://fedoraproject.org/wiki/Features/Presto). Undoing that should logically be done at the same level. It's obviously okay for this to be the default configuration for the software wen it's not our default package manager, but if DNF is to replace Yum, this needs to be part of that conversation.

Please either:

* file a new change

or

* update http://fedoraproject.org/wiki/Changes/ReplaceYumWithDNF with a note that deltarpms will be off by default, and file a ticket with FESCo noting the change to the feature.

(Side note: maybe the plugin could be dynamically enabled or disabled based on a download speed threshold?)

Comment 15 Jaroslav Reznik 2014-10-06 15:23:15 UTC
(In reply to Matthew Miller from comment #14)
> This was an accepted feature for F11.
> (http://fedoraproject.org/wiki/Features/Presto). Undoing that should
> logically be done at the same level. It's obviously okay for this to be the
> default configuration for the software wen it's not our default package
> manager, but if DNF is to replace Yum, this needs to be part of that
> conversation.
> 
> Please either:
> 
> * file a new change
> 
> or
> 
> * update http://fedoraproject.org/wiki/Changes/ReplaceYumWithDNF with a note
> that deltarpms will be off by default, and file a ticket with FESCo noting
> the change to the feature.
> 
> (Side note: maybe the plugin could be dynamically enabled or disabled based
> on a download speed threshold?)

I think it's enough to be part of DNF as default change for F22.

On the other hand, I'd like to see some sort of benchmark - compare internet connection speed to download drpms, try rebuild, get results and offer user choice if one of two options is significantly faster.

Comment 16 Sumit Bhardwaj 2014-10-06 15:49:57 UTC
Delta RPMs are one of the ( i repeat, only one of the) primary reasons why I choose Fedora over other distros. It saves a hell lot of time and bandwidth. Not everybody is on an unlimited data transfer line. 

I am from India and currently staying in Singapore. Right now, I have a 100 Mbps unlimited connection from Singtel at a very affordable price and everything is good. However, back at home (which I will return to, sometime, for sure), same is not the case. For the same price that I pay in Singapore, I was getting a 2 Mbps line capped at 40 GB from a local provider Airtel. It makes a huge difference over there to have deltarpms or not. From my experience, 90% of the times, delta rpms save both time and bandwidth for me even on a fast connetion.

However, we can sure tune the use of delta rpms a bit. For example, for updates that are less than 10-15 MB in size, we can avoid using the delta rpms as the time taken in download+merging (or whatever it is called) of delta rpms and original rpm can make the time difference less significant and bandwidth saved is also not much.

But having delta rpms enabled by default is needed for sure. There is no question about it. I strongly oppose the inconsideration of all those who have the liberty of having a fast and are supporting disabling of delta rpms without thinking about others. I am sorry if my tone is not appropriate here.

Thanks.

Comment 17 Tim Lauridsen 2014-10-06 16:17:28 UTC
I really dont see what all the fuzz is about.

1. dnf supports delta rpms.
2. fedora repos has deltarpms.

This is the most importent fact.

if it's on or off by default, it just depends on who has to turn it on or off
the importent is that you can use deltarpm is you like.

What about the updates through the gui in Fedora Workstation (Gnome-software) does it use deltarpms ?, it dont uses dnf configuration.

We have the same dnf package for Workstation, Server & Cloud, deltarpms could make sense for Workstation, but does it for Server and Cloud ?

Comment 18 Honza Silhan 2014-10-06 17:54:33 UTC
For maintaining compatibility with Yum, deltarpm will be set by default in DNF 0.6.3.

Comment 19 Kevin Kofler 2014-10-16 15:02:18 UTC
:-(

I have a normal Austrian residential broadband connection. Even there, it is still much faster to just download the full RPMs than to use delta RPMs. And parallelization (as others in the thread have suggested) will not help at all on the single-core machine I'm typing this on.

IMHO, enabling delta RPMs by default has always been a mistake!

Comment 20 Gerald Cox 2014-10-16 19:53:34 UTC
Single-Core?  Really Kevin?  Even the One Laptop Per Child machines are dual-core.  ;-)

Comment 21 Richard Z. 2014-11-05 21:09:05 UTC
Consider the worst case scenario of both options:

(a) deltarpm enabled: users with incredibly fast 24/7 internet connections will get slower but still acceptably fast updates.

(b) deltarpm disabled: users trying to get updates over slow/unreliable connections will need 5-10 times longer for already very slow updates. The worst case can hit travellers who may have very limited time at hotspots and less than comfortable keyboards to research and edit configuration files.

Comment 22 Fedora Update System 2014-12-09 14:06:31 UTC
dnf-0.6.3-2.fc21,dnf-plugins-core-0.1.4-1.fc21,hawkey-0.5.2-1.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/dnf-0.6.3-2.fc21,dnf-plugins-core-0.1.4-1.fc21,hawkey-0.5.2-1.fc21

Comment 23 Maarten 2014-12-11 10:50:40 UTC
Re comment 11, I think the expected impacts on users should matter at times where Fedora decides on features/changes. I certainly like deltas and see no point in spending energy, bandwith and time downloading redundant stuff

Comment 24 Fedora Update System 2014-12-12 04:32:36 UTC
Package dnf-0.6.3-2.fc21, hawkey-0.5.2-1.fc21, dnf-plugins-core-0.1.4-1.fc21:
* should fix your issue,
* was pushed to the Fedora 21 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing dnf-0.6.3-2.fc21 hawkey-0.5.2-1.fc21 dnf-plugins-core-0.1.4-1.fc21'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-16760/dnf-0.6.3-2.fc21,dnf-plugins-core-0.1.4-1.fc21,hawkey-0.5.2-1.fc21
then log in and leave karma (feedback).

Comment 25 Fedora Update System 2014-12-13 09:53:37 UTC
dnf-0.6.3-2.fc21, hawkey-0.5.2-1.fc21, dnf-plugins-core-0.1.4-1.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 26 abderrahman 2014-12-13 16:10:21 UTC
Like some pointed out, not everyone is on fast unlimited connections. We need to look at the majority of users, and if we consider OLPC (which I think most of its users are in areas without good internet coverage) and the bulk of internet users, they don't have great access.

The internet connection at the off-campus apartment is slow and capped (2Mbps), back at home it's unlimited 24Mbps. Most of my time is spent at college which means I'm using the 2Mbps most of the time. DRPMs are useful, and such a case isn't rare or uncommon.

If we talk about most users, I'd say the majority has at least dual-core. Even on an i3 compiling drpms isn't that time consuming, IMO. 
Why not leave delta on by default, and instead have those who find downloading the whole rpm faster disable the option? Default matters, because most users stay on default.

Comment 27 David Woodhouse 2015-01-19 12:52:57 UTC
Perhaps we should implement better heuristics for whether to enable deltarpms rather than simply defaulting to 'yes' or 'no'.

Most of the machines I use have a gigabit Ethernet connection to a local mirror which only carries the real RPMs. And now they are downloading deltarpms over the ADSL line instead, which is slower even though it's smaller, and costs money because bandwidth is metered during the day. And then they're spending even *more* time rebuilding the package from the delta.

Comment 28 Pavel Raiskup 2015-11-24 07:12:58 UTC
Well IMO Server/Cloud machines should have deltarpms off by default.  I'm sure
at least Cloud images should.

Comment 29 Pavel Raiskup 2015-11-24 07:18:55 UTC
https://fedorahosted.org/cloud/ticket/142

Comment 30 Pavel Raiskup 2015-11-30 09:18:15 UTC
Inter-link with mock issue.