...
Note | ||
---|---|---|
| ||
Created or updated Couchbase profiles that are used for PCC do not become effective until you restart the EC/ECSAs. |
Configuration
To create a new Couchbase profile, click on the New Configuration button in the upper left part of the Desktop window, and then select Couchbase Profile from the menu.
...
Item | Desciption |
---|---|
External References | Select this menu item to Enable External References in an agent profile field. This can be used to configure the use of the following fields, and the respective external reference keys available:
For further information, see 8.10.4 Using External Reference in Agent Profile Fields and 8.10 External Reference Profile. |
In a Couchbase profile, there are three tabs: Connectivity, Management, and Advanced.
Connectivity Tab
The Connectivity tab is displayed by default.
...
Tip | ||
---|---|---|
| ||
The Operation Timeout, Retry Interval Time, and Max Number Of Retries settings together with the Advanced tab setting mz.cb.lock.timeout.in.secs, work jointly. To understand how, see the following explanation. If you for example use the lookup function with transaction, a LOCK ERROR means that the lookup failed because there was already a transaction lock held on the object that the lookup was trying to get from Couchbase. That is, the lookup was not able to get a lock on the object. What is most important here is how the communication between and Couchbase works. In case you use the lookup function it works like this:
This is why the Operation Timeout parameter does not play a crucial role here. The Operation Timeout parameter is only used when Couchbase is stalling and does not send an answer for a long time. Assuming that the object is locked and received answer with LOCK_ERROR, will wait for the amont of time specified in Retry Interval Time and then retry the request towards Couchbase. This process is repeated until Max Number Of Retries is exhausted or the answer contains a successful result code and the object is retrieved from Couchbase. So, if you for example set Retry Interval Time to 100 ms and Max Number of Retries to 10, you get 100 ms * 10 retries = 1000 ms. However, from a MZ perspective, the timeout of 1000 ms is just for a single lookup attempt and not for the whole lookup operation. To clarify, if you get a failed lookupMany with LOCK_ERROR in the system log, it means that the lookup failed because it tried to get an object with a lock but failed after Max Number Of Retries. That is, some other process (or thread) was holding a lock on that particular object for longer than 1000 ms. This is possible if the Advanced tab setting mz.cb.lock.timeout.in.secs is larger than 1000 ms. In other words, you need to decide what is more important - that the operation succeeds or that the operation is fast. |
Management Tab
The Management tab contains Cluster Management and Monitoring settings.
...
If the bucket you want to access in Couchbase does not exist, the Couchbase profile can be used for creating the bucket in runtime for you, provided that the Admin User Name and Admin Password for your Couchbase cluster have been entered in the Management tab. If the bucket you want to access already exists in your cluster, these two fields do not have to be filled in.
Advanced Tab
In the Advanced tab you can configure additional properties. These can typically be left unchanged in the standard Couchbase configuration.
...
See the text in the Properties field for further information about the properties that you can set.
Logging Couchbase Statistics
You can use the property mz.cb.statistics.class
if you want to log Couchbase statistics to file. The default value is com.digitalroute.mimexposer.statistics.NoDbStatistics
.
...