put
Inserts or updates an entry in a data store. If the key does not exist in the data store, the entry is inserted.
If the requested entry is not currently locked by the thread that invoked this service, the put service will automatically attempt to lock the entry for the duration of the put operation.
The service obtains an exclusive lock on the entry and a shared lock on the data store. If the service finds a shared lock from the same thread on the entry, the service will automatically promote the shared lock to an exclusive lock.
This service releases the lock when the put operation has completed.
Input Parameters
storeName | String Name of the data store into which you want to insert or update the entry. |
value | Document Value to be inserted or updated. |
waitLength | String Optional. Length of time, in milliseconds, that you want to wait for this entry to become available if it is already locked by another thread. If the wait length expires before a lock is obtained, the service fails and throws an exception. This parameter is used only when your service did not explicitly lock the entry beforehand. |
key | String Key where you want to insert or update the entry. |
Output Parameters
error | String Error message generated while inserting the new entry into the data store. |
Usage Notes
When storing and retrieving the flow state in the short-term store for checkpoint restart purposes, ensure that the value of key is unique to the transaction.