amule-project / amule

'All-platform' P2P client based on eMule
996 stars 218 forks source link

problems receiving files from emule 0.50 and 0.6 #270

Open Stoatwblr opened 3 years ago

Stoatwblr commented 3 years ago

I've been testing this for the last few months to verify and I'm pretty sure that it's an amule issue of some kind

Whatever the problem is, manifests on the sending (emule) end as "stalled" file sends after 1.59MB, and then the transfer times out

Amule sending to emule works fine

I don't know enough to dig deeper into what's going on but if you run a couple of instances of amule/emule side by side and look for the same files it's clear they have different views of the ed2k/kad universe

Stoatwblr commented 3 years ago

whatever the issue is, it's not there in v2.3.2 clients, but manifests in ones reporting 2.3.3 and later to the emule client

Stoatwblr commented 3 years ago

verified this is manifesting with ubuntu-distro (21.04) amule 2.3.3 clients too.

We're going to start seeing more complaints shortly as people upgrade :/

Vollstrecker commented 3 years ago

I know you're a pro (usually). As the code didn't change (as far as I can see). Can you see anything in the surroundings that changed? Maybe something new in Boost or wx code. I've seen boost warnings about global indexing or something like that while compiling.

Stoatwblr commented 3 years ago

I'm at a loss on this one, at the moment, honestly. I suspect that whatever's causing this was introduced several years ago and is subtle as heck

Stoatwblr commented 3 years ago

It's buffering. I had it set large (1.5MB) and every time it flushed, things would hang.

quite WHY this is happening on a 24 core ZFS system with SLOG(ssd write caching - kind of) is a mystery and the OS itself isn't missing a beat

The answer (on linux) is set it as small as possible and let the OS take care of write buffering

Stoatwblr commented 3 years ago

I've filed this as an emule bug. It shouldn't fall over its shoelaces if the receiver pauses to flush. Let's see if Fox88 does anything with that

On the amule side I suggest defaulting to minimum buffering on linux and adding a stronger warning against changing it

Stoatwblr commented 3 years ago

it's still occurring even with amule buffers set as small as I can make them. The Temp area is on a dedicated f2fs ssd which is more than fast enough for the task (samsung 840pro, and iostat not showing much activity when this happens)

Various emule versions definitely have trouble talking to amule 2.4 even when I'm not sharing insane numbers of files and I've eliminated NAT as a potential contributor by obtaining dedicated real-world IPs for testing purposes

rsu611 commented 2 years ago

On Manjaro (Arch Based) this happens even with version 2.3.2.

mavoga commented 11 months ago

Any news on this? Is this project still alive? Stopping and continuing makes the download restart at good speed for some seconds, after which everything slows down again...

Anuskuss commented 3 months ago

Can you check out my build from https://github.com/amule-project/amule/issues/290#issuecomment-2171901412 and test if that fixes this for you?