2017-01-23 5 views
0

Я новичок в marklogic. Как откат документа, который я удалил. Я использую функцию xdmp:rollback() от https://docs.marklogic.com/xdmp:rollback. но я не видел, чтобы документ возвращался в базу данных. Заранее спасибо.Marklogic - Как откат документа

xdmp:document-delete("/data/edu/GMU.xml"), 
xdmp:rollback() 
+0

Вы удалили документ и выполнили откат в той же транзакции при первом удалении? Потому что вы не можете отменить транзакцию, которая уже совершена. Существует вероятность того, что он все еще существует в структуре данных в базе данных, но, вероятно, нет, если прошло много времени с момента удаления. – wst

ответ

2

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

+0

Рекомендуемое чтение: [Общие сведения о транзакциях на сервере MarkLogic] (http://docs.marklogic.com/guide/app-dev/transactions#chapter). –

Смежные вопросы