2017-03-15 25 views
0

Luigiのドキュメントには、ターゲットへの書き込みのpotential problems regarding atomicityが記載されています。彼らはこれが一般的な落とし穴であり、最終的に目標の場所に移動される一時的なディレクトリを使って処理されるべきだと言います。LocalTargetsでは、アトミシティを自分で処理する必要がありますか?

ターゲットが単一ファイルLocalTargetの場合は、これも自分で処理する必要がありますか?

luigi.local_targetモジュールは、これが自動的に行われることを示していると思われるatomic_fileクラスを、含まれており、設計目標include “atomic file system operations”。しかし、私はLocalTargetがそのように使用するのが安全であることを示す文書は見つかりませんでした。

答えて

1

あなたはルイージルイージ/ local_target.pyクラスLocalTargetのコードが表示される場合:

def open(self, mode='r'): 
    rwmode = mode.replace('b', '').replace('t', '') 
    if rwmode == 'w': 
     self.makedirs() 
     return self.format.pipe_writer(atomic_file(self.path)) 

ルイージは一時ファイルを作成し、それを閉じていたときに、最終的な名前に変更されます。

+0

はい、これが私の見た目です。しかし、私は、この行動がどこかに記録されているので、私はそのようにとどまることに頼ることができると期待していました。 – user4235730

関連する問題