Я понимаю, что для getlasterror это гарантирует, что запись была сделана в файл.
Это означает, что, даже если компьютер выключен, предыдущая запись все еще в порядке.
Но какая польза от fsync: true?
По сути, getLastError проверяет наличие ошибки в последней операции с базой данных для текущего соединения.Если вы запустите эту команду с опцией fsync, она также будет сбрасывать данные в файлы данных (по умолчанию mongodb делает это каждые 60 секунд).
Подробнее вы можете найти здесь и здесь