Limagito Filemover Software Blog and News

  • 27 Dec

    Uploading large files using FTP Multipart option

    Dear users,

    A while ago we received the folllowing support question:

    “I am having problem transfering a big file. The file is 959MB. We get the following error: Exception Error Control channel transfer error 114690.”

    We found out that error 11469 = No data is being transferred via control channel. We asked our FTP code supplier for advice. 

    “Looks like a timeout-related issue. Error 114690 (SB_FTPS_ERROR_CONTROL_CHANNEL_NO_DATA) is returned if no reply was received from the control channel where it was expected to come in.  According to the log, the server does not perform any activity after the file is being sent. I believe there may be a delay between the file is sent to the server and the actual response the server is sending back. This delay may originate, for example, from the server copying the uploaded file from a temporary location to its final destination. The solution is quite straightforward – instead of uploading the file as a whole, upload it in pieces. Please start with splitting the file into 100MB chunks and see how it goes.”

    And that is what we did in version ‘v2018.12.27.0’. The Multipart Upload option was added in the ‘File & Directory’ tab of the FTP destination.

    • Enabled this option using the ‘Use Multipart Upload’ checkbox.
    • Set the part size. Default is 102.400 KiByte (100 MiByte). The minimum is 5 MiByte.
    • Set the treshold size. Default is 512.000 KiByte (500 MiByte).

    So what does this mean. When a source filesize is 500 MiByte or higher then this file will be uploaded in parts (chunks) of 100 MiByte. So not as a whole but in parts. Each part will be appened at the FTP server side. We use the APPE (Append) FTP command to achieve this.

    A second option to achieve a multipart upload is using the COMB command (‘Use COMB’ checkbox). Important, not so many FTP servers support the COMB command (non RFC). The source file is send in segments and afterwards the FTP server will combine them when it receives the COMB command. We tested this using the trial version of Titan FTP server.

    Even better is when you combine this with the Retry option. So if one of the parts would fail during the FTP upload then it will retry to upload this part again (and not the whole file).

    Feedback would be much appreciated,

    Happy Holidays,

    Limagito Team

     

    By Limagito New Option ,
  • 26 Dec

    How do I migrate LimagitoX to another system

    Procedure to migrate your current ‘old’ installation to a ‘new’ system:

    1) On the ‘old’ system:

    • Create a backup of the Settings Directory:
      • Open the ‘Settings Directory’ of the current File Mover installation. Menu Item: Tools > Settings Dir
      • Create a backup of all files (including subdirectories) within this directory (default C:\ProgramData\LimagitoX\*.*)
      • The most important file is LimagitoX.sqlite (contains all settings)

    2) On the ‘new’ system:

    • Install the latest version (v2018 or higher)
    • Start the LimagitoX File Mover Config tool (do not start any other file mover exe yet)
      • Open the ‘Settings Directory’ using the ‘Tools > Settings Directory’ menu item of this Config tool
      • Close Config tool (important !)
      • Copy the complete backup content from the ‘old’ server into this directory (default C:\ProgramData\LimagitoX\)
      • It will ask you to overwrite some files on the new server which is ok to do. All files from the backup (= ‘old’ server) must be copied to the new server.

    3) Open the Intro.pdf file on the new server and start with the ‘First Usage’ section of this document (you can skip the first item of the First Usage section which is ‘Install the latest version’).

    Regards,

    Limagito Team

  • 24 Nov

    Pascal Script, User Request Example No 1

    Dear Users,

    We often get user specific questions. Not every request goes into our file transfer tool as an option. In such cases (and if it is possible) we create a custom Pascal Script for the end user.

    Example No1:

    People are asking a lot to LimagitoX. Today, a user asked me if I can make a LimagitoX rule with a filter on the number of lines in a file.

    Example:  Transfer the file if it contains more than 300 records.  The file type is *.txt

    The rule will be:

    Transfer files with less than 300 lines in weekday.

    Transfer files with more than 300 lines on Sunday.

    No transfer on Saturday.

    Do you think you can add such a kind of filter?

     

    For this request we created the ‘On Destination’ Pascal Script below. IMPORTANT: Be sure you set the file filter to only allow *.txt files

    image.png

    Var
      tmpList: TStringList;
      tmpNow: TDateTime;
    Begin
      psExitCode:= 0;
      // … add your code here
      tmpList := TStringList.Create;
      Try
        Try
          tmpList.LoadFromFile(psFilePath + psFileName);
          tmpNow := Now;
          // Transfer files with less than 300 lines in weekday ( 1 .. 5 ).
          If (tmpList.Count < 300) And (DayOfTheWeek(tmpNow) < 6) Then
          Begin
            psLogWrite(1, ”, ‘Line Count of ‘ + psFilePath + psFileName + ‘ = ‘ + IntToStr(tmpList.Count));
            psLogWrite(1, ”, ‘Day Of The Week is ‘ + IntToStr(DayOfTheWeek(tmpNow)));
            psExitCode := 1;
          End;
          // Transfer files with more than 300 lines on Sunday ( 7 ).
          If (tmpList.Count > 300) And (DayOfTheWeek(tmpNow) = 7) Then
          Begin
            psLogWrite(1, ”, ‘Line Count of ‘ + psFilePath + psFileName + ‘ = ‘ + IntToStr(tmpList.Count));
            psLogWrite(1, ”, ‘Day Of The Week is ‘ + IntToStr(DayOfTheWeek(tmpNow)));
            psExitCode := 1;
          End;
        Except
          psLogWrite(1, ”, ‘Exception error on loading ‘ + psFilePath + psFileName);
        End;
      Finally
        tmpList.free;
      End;
    End.
1 2 3 4 5 6 7 33