от
Я проверяю файлы CSV и затем записываю их в базу данных. Текущая настройка - File.pipe (validationStream) .pipe (DBWriteStream); Как можно обернуть все записи в моем DBWriteStream в транзакцию, которую можно отменить, если в validationStream обнаружены ошибки? Если ошибки найдены, я хочу отменить весь файл. Node.js 7, как использовать sequelize транзакции с async / await? Приведенный выше пример, а также приведенный в документации, зависят от цепочек обещаний и асинхронных функций, однако мой поток является функцией записи потока преобразования и не использует обещание.
async function getWriteStream(params) {
  const rowLimit = 2000;
  let rowsToWrite = [];

  const writeStream = through2.obj(write, end);

  // I'd like to rollback this report creation
  const result = await createReportId(params);
  const reportId = result.id;

  // buffer = {isValid: bool, data: rowData}
  // if I receive an "isValid: false" from the validation stream,
  // i'd like to stop writing and rollback everything
  function write(buffer, encoding, next) {
    let rollBack = false;

    if (buffer.isValid

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.
...