Alo Sarv
lead developer

Donate via

Latest Builds

version 0.3
tar.gz tar.bz2
Boost 1.33.1 Headers
MLDonkey Downloads Import Module Development
Payment completed
Development in progress.
Developer's Diary

Sunday, March 06, 2005

Tired ... soooo tired



Well, that pretty much sums it up .. god-damn-stupid-winter and so on. *sighs*. Can't say anything good about progress today, all day been like a zombie, trying to code but everything just falls apart ... March is the evilest part of the year ... it's been cold and dark for 5 months already, all energy reserves are already exhausted, and spring is still like 1 .. 1.5 months away :( But ohwell, must be strong, must code, must finish the damn app ...


Scheduler got a nice boost ... bandwidth measurements are now more accurate, and up/down speed values are cached, which reduces CPU usage by an estimated 20%. (patch by xaignar)

In ed2k module, there had been an invalid memory access whenever a chunk upload completed ... wierd it never actually crashed in there, but it's fixed now anyway.

Were some minor problems with my implementation of ed2k speed-ratio lock - apparently, it's if (up < 10) down = up * 4;
if (up < 4) down = up * 3;
This is also fixed now, and the relevant code is now applied during ed2k module startup, so if ed2k module isn't loaded, this lock isn't in place. In long-term, we will need a more robust solution though, because this doesn't play along with our long-term plans ... load an ed2k module, and screw up your ftp/http/dc download speeds? No thank you. But for now, this ensures we confirm to ed2k netiquette.

As a requested feature by chemical, duplicate sharedfiles are now properly handled. The system is capable of detecting duplicates after a new sharedfile is added (or hashed), and combine with existing sharedfile. If there's an existing pending download in progress that's identical to the newly-added shared file, the pending download is ofcourse marked as completed instantly - no point downloading it anymore. Also, when there are multiple identical shared files, but in different locations, hydranode handles it gracefully, and keeps track of both files. If the original one becomes unavailable (or modified), hydranode automatically attempts to switch to known alternative locations for the same file.

PartData also now clears up it's mess from temp/ dir - e.g. the .dat/.dat.bak files - up until now, they were all left dangling there. But hey - no need to rush into clearing your temp/ dirs manually now - hydranode detects such "danging" files on startup now and clears them up as needed.

There was also a request for canceling downloads ... I mostly implemented it, but ... there are some problems ... canceling by filename is most natural, but we don't have tab-completition support in hnshell, we don't even have chars escaping support ... so if your downloads have long names, or spaces in them, you'r so out of luck. And I'm aware there are still some problems open with that code ... I originally didn't even want to commit it yet, but I figured - I'll fix it later, when I'm less tired ...

So see ... no progress where the progress was needed [ed2k/udp], and just some stupid features :( Oh wish the winter would already end and sun come back up... real sun, not the one that shine at you at -20C, and freezing you with an evil grin :(

ZombieCat, ZzZz

Comments: Post a Comment

<< Home

This page is powered by Blogger. Isn't yours?