SFTP:名前変更/削除コマンドが断続的に失敗する

SFTP:名前変更/削除コマンドが断続的に失敗する

複数のSFTPサーバーに接続し、いくつかのファイルをダウンロードし、最後にダウンロードしたファイルをSFTPサーバーの別のフォルダーに移動するRubyで書かれたバックグラウンドタスクがあります。

問題は、rename1つのサーバーでのみコマンドが失敗することです。

この質問で興味深い点はubuntuのsftpライブラリまたはRubyの対話型コンソールを使用してサーバーに接続し、バックグラウンドジョブで使用するのと同じコードを実行しても失敗しません。したがって、権限の問題ではありません。


2番目の方法:

次の回避策で実装を更新しましたが、これがうまくいくremoveと思います。

  def move(from_path, to_path)
    sftp.rename(from_path, to_path) do |response|
      sftp.remove(from_path) unless response.ok?
    end
  end

上記のコードはファイルの約75%を削除して処理します。

ここで何が間違っているのかというアイデアはありますか?

ここで使用されるライブラリは次のとおりです。 https://github.com/net-ssh/net-sftp https://github.com/resque/resque

ベストアンサー1

おすすめ記事