MarkLogic версия: 9.0-6.2
У нас есть согласованный поток, в котором мы готовим переменную 'source' в content.sjs для передачи в writer.sjs.У меня есть сценарий, в котором я должен пропустить программу записи (например, если документ уже содержит конечную базу данных, а отметка времени подготовки документа меньше, чем отметка времени в итоговом документе, то я не хочу записывать в окончательную версию)
Вот фрагмент кода в content.sjs
let source;
//logic to populate source
options.headers = source.envelope.headers;
return extractInstanceCustomer(source.envelope.instance);
Мы заметили, что иногда пропускается писатель, когда источник пуст.Как бы то ни было, в некоторых случаях Writer вызывается с пустым исходным кодом, и, следовательно, конверт создается с заголовками, но экземпляр пуст.
Мы пробовали ниже логику, но все еще не видели согласованного поведения.
let source;
//logic to populate source
if (fn.empty(source)) {
}
else {
options.headers = source.envelope.headers;
return extractInstanceCustomer(source.envelope.instance);
}
Каков наилучший способ пропустить программу записи, когда мы не хотим писать документ из постановки во время согласования потока.