В более ранней версии Couchbase Java SDK было несколько методов проверки и настройки (CAS) для реализации оптимистической блокировки. Но что такое соответствующий API в более новой версии SDK (> = 2.0)?
Исходный код:
JsonDocument doc = bucket.get("myKey");
Long casValue = doc.cas();
// some method to set new value for "myKey" only if CAS value
// has not been changed
Как вы уже видели, значение CAS встроено в документ. Большинство методов API будут учитывать это, если CAS не равен 0, например, replace(Document)
будет CASMismatchException
если данный документ имеет другое значение CAS, чем то, что находится на сервере.
JsonDocument.create
существует перегрузка, позволяющая установить