Uploaded image for project: 'Camel'
  1. Camel
  2. CAMEL-14506

came-ftp - streamDownload=true and stepwise=true for larger files could cause deadlock

Agile BoardAttach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 3.1.0
    • Fix Version/s: 3.1.0
    • Component/s: camel-ftp
    • Labels:
      None
    • Estimated Complexity:
      Unknown

      Description

      If downloading files of size bigger then about 0,5 MB (differs on other parameters) with option streamDownload=true and stepwise=true (default values), operation could freeze (on my local environment it freezes with 100% certainty), because retrieved inputstream has to be closed before calling other commands .
      See https://commons.apache.org/proper/commons-net/apidocs/org/apache/commons/net/ftp/FTPClient.html#retrieveFileStream(java.lang.String)

      To finalize the file transfer you must call completePendingCommand and check its return value to verify success. If this is not done, subsequent commands may behave unexpectedly.

      Problem happens if retrieval of file is immediately followed by change of directory.

      I can imagine fix, which doesn't make change of directory, if is not necessary and it would be nice to add note to documentation, that streamDownload and stepWise options together could cause unexpected behavior for larger filespossibly (possible freeze of component)

        Attachments

        Issue Links

          Activity

            People

            • Assignee:
              jondruse Jiri Ondrusek
              Reporter:
              jondruse Jiri Ondrusek

              Dates

              • Created:
                Updated:
                Resolved:

              Time Tracking

              Estimated:
              Original Estimate - Not Specified
              Not Specified
              Remaining:
              Remaining Estimate - 0h
              0h
              Logged:
              Time Spent - 20m
              20m

                Issue deployment