-
-
Notifications
You must be signed in to change notification settings - Fork 646
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
AsyncFtpClient - The operation has timed out #1556
Comments
Unless you post a verbose log of the sequence of events, I am afraid there is not much one could do for you here. I just used an ASYNC client on V50.0.1 with .NET 6 a few moments ago, it worked. And I am not sure that this is really what you mean to say: "I'm connecting to the AsyncFtpClient". Put yourself in my shoes: I must deduce from your prose, that the AutoConnect must have worked, for example, but more than that I know nothing, not the FEAT reply of the server (or must I google that for IIS or test it quickly myself). My crystal ball is at the cleaners right now, so even that doesn't help. Post a log, OK? |
Hi! I managed to get a log from an UploadStream call:
|
OK, I see. Try a GetListing first... because it uses the data connection with different code |
And here is a log from DeleteDirectory:
|
Disregard the post about GetListing. |
I need to see a download attempt, can you? |
|
Thanks for that last log, it looks very bad now. In your original post:
Then you edited:
I suppose that SYNC and ASYNC have the same problem, right??? I will write more in the next post... |
Correct, it worked in the beginning for me when i started using SYNC. Then i changed the code to ASYNC and i started to get the operation timeout problem. Then i changed back to SYNC to test that again - but then i got the same operation timeout problem again. That was why i edited my first comment. |
Ok. That is very strange behaviour. Are you in a corporate environment with strict firewalls, stateful firewalls etc. or is the server one that you could even restart, or see its loges? |
It seems that the PASV command gives an IP and PORT to connect to, which succeeds. Then the SSL negotiation, which means some data going back and forth on that connection, succeeds. And then, it seems, the connection drops. Even the control connection becomes dead. |
I agree, feels strange. No corporate, just me at home. Running an Azure SQL database created in Docker Desktop in my local environment. |
MLSD - no data received Aahh! AZURE. In Docker. That's a big gotcha. I have some suggestions. |
You would need first to verify functionality using a manual FTP client of your choosing, such as WinSCP or FileZilla accessing that server - the AZURE SQL database running in the docker container. Did I get that right? See if that works, first. |
I mean, I am not an AZURE knowleagable person - so tell me: Exactly where are you running the client code? And exactly where is the server located? |
I put a lot of Azure labels on this, even if they are not necessarily on target. Helps others find Azure related stuff. |
I'm using the app 'Commander One' to access to the FTP manually, it's exactly like FileZilla. I'm able to access it if that is what you meant? I have a Blazor WASM app, with both client and server project. Server is located in a Docker Container with the image: |
Commander One running on the same physical machine as Blazor WASM app? Docker Container also on that physical machine? |
Well it's all localhost/development environment so everything is from my computer, correct! I can manually download/upload files to the FTP using Commander One program, but i can't do it using FluentFTP in my c# code Note: i can also access the FTP using FileZilla |
I tried restarting my docker container - didn't help |
With this kind of configuration, if this is all on your machine, I would
Trouble is, that code is also running (as opposed to FileZilla etc.) in a sort of different environment (Blazor? Yuck...) so the comparison is not totally exact. |
Try an excerpt of your ftp code in a c# console app, first, maybe |
Is there any chance, even if only once for testing, to try without encryption? Allow this in the server? Let's see if there is a difference. |
I have debugging experience and this is also something you need to worry about: Until you can get it to work again like in the beginning with SYNC, something is still very fishy A persistent disk full on the server side after a few tests, now nothing works any more? |
Listen: This kind of problem (with Azure, Docker and other "strange" environments) has plagued us for a long time already. If there is any kind of things I can modify in FluentFTP, not in the Nuget but in special GitHub branches/repos to help diagnose, I am available. I really wonder what makes the connection simply stop , especially as the Ssl Handshake needs at least certain number of transactions on the data connection to succeed.
|
Especially two Wireshark traces: 1. The console App which works 2. The fail in the Blazor App |
FTP Server OS: Windows
FTP Server Type: IIS
Client Computer OS: Windows
FluentFTP Version: 50.0.1
Framework: .NET 7
I'm connecting to the AsyncFtpClient but i'm getting "the operation has timed out" on every call i do:
DirectoryExists, DeleteDirectory, CreateDirectory, UploadStream, UploadFile
I have tried with both my own cancellationToken and without it. Im still getting the same error "the operation has timed out". It doesn't let me do anything??
Note - I can connect to the FTP successfully but can't do anything after that. I also tried using the FtpClient, but getting the same issue there.
The text was updated successfully, but these errors were encountered: