Как обеспечить правильную очистку диска при быстрой записи большого количества файлов в Ubuntu?

Я создаю много файлов в моем скрипте node.js.

Я делаю что-то вроде этого для миллионов файлов:

    if(!fs.existsSync(path)){
        var empty = {};
        fs.writeFileSync(path,JSON.stringify(empty,null,3));
    }

    var data = fs.readFileSync(path);
    var file = JSON.parse(data);
    file[aKey] = "someadata";
    fs.unlinkSync(path);
    fs.writeFileSync(path, JSON.stringify(file,null,3));

И в некоторых местах я пытаюсь прочитать файлы

    if(!fs.existsSync(previousPath)){
        var file = {};
        fs.writeFileSync(previousPath,JSON.stringify(file,null,3));
    }
    var data = fs.readFileSync(previousPath);

Это работает без проблем на OSX. Но на версии узла в Ubuntu кажется, что синхронные методы не всегда являются синхронными - иногда происходит сбой node.js при попытке readFileSync, говоря, что путь не существует (даже если он должен существовать, так как я вызываю fs.writeFileSync на нем как раз перед)

версия узла в Ubuntu: v0.10.33 для Mac: v0.13.0-pre

Какие-либо предложения? v0.10.33, кажется, является последним в репозитории в Ubuntu.

0 ответов

Другие вопросы по тегам