Opened at 2010-06-15T22:21:56Z
Closed at 2021-01-15T20:27:37Z
#1081 closed defect (wontfix)
FTP upload silently fails when nodes < happiness
Reported by: | slush | Owned by: | davidsarah |
---|---|---|---|
Priority: | major | Milestone: | soon |
Component: | code-frontend-ftp-sftp | Version: | 1.7β |
Keywords: | ftpd upload error reliability unfinished-business servers-of-happiness | Cc: | slush@… |
Launchpad Bug: |
Description (last modified by warner)
When I upload file using FTP (SFTP not affected), the upload successfully passes these phases:
*) Upload locally to tmp dir
*) Upload to helper (if used)
*) Converted to CHK_encoding (when using helper)
And then the FTP transfer silently fails, pretending that upload successfully finished. When I refresh the directory listing, the file isn't there.
Expected behaviour (from my view of common user): FTP upload should finish after all phases of tahoe upload.
Used software: Node - Windows7 with patched Twisted. Helper - Debian without patch.
I tried scenario many times with different files and happiness and both with or without helper.
Note: Using SFTP in same scenario (nodes < happiness) leads to RemoteException? in SFTP client which indicates that something went wrong.
How to reproduce:
a) Wait until count of nodes is less than current happiness in config.
b) or set happiness in config to something large.
Reproducibility: always
Change History (13)
comment:1 Changed at 2010-06-15T23:10:18Z by davidsarah
- Description modified (diff)
- Keywords ftpd added; ftp removed
- Milestone changed from undecided to soon
- Summary changed from FTP upload silently fails when nodes<happiness to FTP upload silently fails when nodes < happiness
comment:2 Changed at 2010-06-17T04:32:46Z by zooko
- Milestone changed from soon to 1.7.0
comment:3 Changed at 2010-06-19T03:02:13Z by davidsarah
- Milestone changed from 1.7.0 to 1.7.1
Documented in 29a9059c94eef955.
comment:4 Changed at 2010-07-17T06:04:12Z by davidsarah
- Keywords error reliability added
- Milestone changed from 1.7.1 to 1.8.0
comment:5 Changed at 2010-07-17T06:04:32Z by davidsarah
- Keywords unfinished-business added
comment:6 Changed at 2010-08-14T06:55:47Z by zooko
- Milestone changed from 1.8.0 to soon
comment:7 Changed at 2010-12-29T09:13:21Z by zooko
- Keywords servers-of-happiness added
comment:8 Changed at 2010-12-29T09:14:30Z by zooko
- Keywords happiness removed
comment:9 Changed at 2011-01-13T06:01:04Z by davidsarah
- Milestone changed from soon to 1.9.0
comment:10 Changed at 2011-10-13T17:06:40Z by warner
- Milestone changed from 1.9.0 to 1.10.0
not making it into 1.9
comment:11 Changed at 2012-06-29T13:08:20Z by davidsarah
- Owner set to davidsarah
- Status changed from new to assigned
comment:12 Changed at 2014-12-02T19:43:35Z by warner
- Component changed from code-frontend to code-frontend-ftp-sftp
- Description modified (diff)
comment:13 Changed at 2021-01-15T20:27:37Z by exarkun
- Resolution set to wontfix
- Status changed from assigned to closed
The FTP frontend has been removed.
I think we should treat this as a v1.7 issue as far as documenting that it can happen and instructing people on how to avoid it or to diagnose that this is the cause of their problem (but not treat it as a v1.7 issue as far as changing any code to improve it).
So, ideally we would update some docs, probably in docs/frontends/FTP-and-SFTP.txt, explaining that if you have insufficient servers for servers-of-happiness then uploads will silently fail. (This will be along with docs changes per #1024 and #1082 which will hopefully make users more aware of the servers-of-happiness issues in general.) The FTP-and-SFTP docs should point users to other docs such as running.html / using.html which explain how to set up multiple servers, how to see how many servers you have set up, how to configure servers-of-happiness, and how to see what your current servers-of-happiness configuration is.
Then, having written this doc, we'll move this ticket from the "1.7" Milestone to the "soon" Milestone and ship Tahoe-LAFS v1.7 final!
Then we'll see if we can somehow change our code to signal failure reliably to the user of an FTP or SFTP frontend so that they can detect and diagnose failures.