Friday, 27 March 2015

dez 1.0

I packaged up the best version of the delta generator into dez-1.0. It and some details are available on the dez home page.

A couple of nights ago I tried one of the hashtable ideas from a previous post. It made a big improvement so I kept whittling it away until there really wasn't much of a hash table left apart from a couple of arrays. Fastest version using the least memory. Open addressing just didn't handle some bad cases at all well.

I didn't see the point in keeping the others around so i only kept this one in the release.

And that should be me done with this for a while.

2 comments:

Solerman Kaplon said...

I wonder if this could/should be used in a similar way to ZSync?
http://zsync.moria.org.uk/

NotZed said...

There are some similar ideas involved at lowest levels but above that there isn't much overlap.

This is the same thing as xdelta, vcdiff, or even diff. It requires both versions to make an editing list from one to the other. At the receiver it requires an identical starting point + the patch to create the new version.

zsync uses rsync and rsync is capable of reduced bandwidth where the sender (or owner of the desired copy) doesn't need to know what the receiver has. It's far more sophisticated - and really very cool how it works.

This is one of those things I wouldn't have even bothered to write if the existing java libs were decent, although it was an interesting learning exercise all the same.