Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

Suggestion: Differential software updates

User discussion about Debian Development, Debian Project News and Announcements. Not for support questions.
Message
Author
User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

#21 Post by edbarx »

MeanDean wrote:Can you provide some specific examples and show us how much difference this would make?
It doesn't need much imagination to conclude that in updates of packages, not all the files are modified between consecutive updates. Till now, I haven't done a statistical analysis. With the next update, I will try to compare the files of a random sample of ten packages and then I will post the results.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

GNU.Wasabi
Posts: 349
Joined: 2008-03-31 15:55
Location: Still trying to figure out for what this field is...

#22 Post by GNU.Wasabi »

Wait a second, what if say, you run a pretty outdated Etch (for example from the times Etch was testing and Sarge stable) and you wanted to update package pkg-abc from your currently installed version 1.05 to the current upstream version 1.60, how would it work with differential updates? If you installed the update of pkg-abc 1.60, would it only put the updated files and settings between version 1.60 and 1.59 or would it use some kind of intelligent system to determine the changes between version 1.60 and 1.05?
If it is the former, you would need to install the following updates of pkg-abc: 1.06, 1.07, 1.08, 1.09, 1.10, ...1.58, 1.59, 1.60. If it is the latter, then it would be a little bit useful, but what am I gaining from the differential update versus a normal update if the only file between version 1.05 and 1.60 of pkg-abc is README that remained the same while the rest changed?

To me this "differential update" system is extremely hard to make and also seems to slowdown the speed of how APT currently operates. Do we want our dependencies to be checked once more to see if there are any changes between the versions and make the update operation very slow? What about bigger packages like 20Mb and more? It would be very slow on older machines especially to sort out the differences between the versions.

By the way, how would it work anyway when it checks for the changes in the files? The server would keep track of every file inside every package and also the MD5 of the files inside the packages for the system to work.

Or maybe I'm just understanding something wrong.
My opinion: leave APT as it is, works for me at least.
Cheers, GNU.Wasabi

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

Reply to GNU.Wasabi

#23 Post by edbarx »

In my opinion, differential updates make sense only when updating a package from one version to the next. Widening the gap invariably makes differential updates inefficient, if not worse than doing the updates they are done at present.

By differential updates I mean this: download a file only if the same file in the newer version has been modified or created from scratch.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

GNU.Wasabi
Posts: 349
Joined: 2008-03-31 15:55
Location: Still trying to figure out for what this field is...

#24 Post by GNU.Wasabi »

edbarx, could you answer to my question that I mentioned above:
By the way, how would it work anyway when it checks for the changes in the files? The server would keep track of every file inside every package and also the MD5 of the files inside the packages for the system to work.
Thanks!
Cheers, GNU.Wasabi

User avatar
edbarx
Posts: 5401
Joined: 2007-07-18 06:19
Location: 35° 50 N, 14 º 35 E
Been thanked: 2 times

#25 Post by edbarx »

GNU.Wasabi wrote:edbarx, could you answer to my question that I mentioned above:
By the way, how would it work anyway when it checks for the changes in the files? The server would keep track of every file inside every package and also the MD5 of the files inside the packages for the system to work.
Thanks!
The .deb archives contain the file list of each package. The list is complete with the file size and modification date. This information can be used to decide which files have been updated between versions of packages. Moreover, this list together with the updated files can be kept on the server. This avoids the need for the server to decompress the .deb archives. Packages undergoing huge updates should be treated as they are treated at present.

I suggest this approach only for packages undergoing small changes. In this way, these .deb files can be excluded from the download procedure.
Debian == { > 30, 000 packages }; Debian != systemd
The worst infection of all, is a false sense of security!
It is hard to get away from CLI tools.

Post Reply