-
net.opentsdb.meta.Annotation.syncToStorage()
Attempts a CompareAndSet storage call, loading the object from storage, synchronizing changes, and attempting a put. Note: If the local object didn't have any fields set by the caller or there weren't any changes, then the data will not be written and an exception will be thrown.
@param tsdb The TSDB to use for storage access
@param overwrite When the RPC method is PUT, will overwrite all useraccessible fields True if the storage call was successful, false if the object was modified in storage during the CAS call. If false, retry the call. Other failures will result in an exception being thrown.
@throws HBaseException if there was an issue
@throws IllegalArgumentException if required data was missing such as the {@code #start_time}
@throws IllegalStateException if the data hasn't changed. This is OK!
@throws JSONException if the object could not be serialized
-
net.opentsdb.meta.TSMeta.syncToStorage()
Attempts a CompareAndSet storage call, loading the object from storage, synchronizing changes, and attempting a put. Also verifies that associated UID name mappings exist before merging. Note: If the local object didn't have any fields set by the caller or there weren't any changes, then the data will not be written and an exception will be thrown. Note: We do not store the UIDMeta information with TSMeta's since users may change a single UIDMeta object and we don't want to update every TSUID that includes that object with the new data. Instead, UIDMetas are merged into the TSMeta on retrieval so we always have canonical data. This also saves space in storage.
@param tsdb The TSDB to use for storage access
@param overwrite When the RPC method is PUT, will overwrite all useraccessible fields
@return True if the storage call was successful, false if the object wasmodified in storage during the CAS call. If false, retry the call. Other failures will result in an exception being thrown.
@throws HBaseException if there was an issue
@throws IllegalArgumentException if parsing failed
@throws NoSuchUniqueId If any of the UID name mappings do not exist
@throws IllegalStateException if the data hasn't changed. This is OK!
@throws JSONException if the object could not be serialized
-
net.opentsdb.meta.UIDMeta.syncToStorage()
Attempts a CompareAndSet storage call, loading the object from storage, synchronizing changes, and attempting a put. Note: If the local object didn't have any fields set by the caller then the data will not be written.
@param tsdb The TSDB to use for storage access
@param overwrite When the RPC method is PUT, will overwrite all useraccessible fields
@return True if the storage call was successful, false if the object wasmodified in storage during the CAS call. If false, retry the call. Other failures will result in an exception being thrown.
@throws HBaseException if there was an issue fetching
@throws IllegalArgumentException if parsing failed
@throws NoSuchUniqueId If the UID does not exist
@throws IllegalStateException if the data hasn't changed. This is OK!
@throws JSONException if the object could not be serialized
-
net.opentsdb.tree.TreeRule.syncToStorage()
Attempts to write the rule to storage via CompareAndSet, merging changes with an existing rule. Note: If the local object didn't have any fields set by the caller or there weren't any changes, then the data will not be written and an exception will be thrown. Note: This method also validates the rule, making sure that proper combinations of data exist before writing to storage.
@param tsdb The TSDB to use for storage access
@param overwrite When the RPC method is PUT, will overwrite all useraccessible fields
@return True if the CAS call succeeded, false if the stored data wasmodified in flight. This should be retried if that happens.
@throws HBaseException if there was an issue
@throws IllegalArgumentException if parsing failed or the tree ID was invalid or validation failed
@throws IllegalStateException if the data hasn't changed. This is OK!
@throws JSONException if the object could not be serialized