This PR adds a KV store that can be used to share data between frames.
The user can call pipeless_kvs_set and pipeless_kvs_get to set and get KV pairs.
The internal keys are automatically converted to the format stage_name:pipeline_id:user_key to avoid conflicts when running multiple streams and multiple stages per stream.
Finally, the pipeless_kvs_get function will return an empty value by default, including when the key does not exist. Since frames are executed in parallel, a key could not exist at the time of getting it, users need to take this into account.
The pipeless_kvs_set function converts any value to string before inserting it into the store.
Description of the change
This PR adds a KV store that can be used to share data between frames.
The user can call
pipeless_kvs_set
andpipeless_kvs_get
to set and get KV pairs.The internal keys are automatically converted to the format
stage_name:pipeline_id:user_key
to avoid conflicts when running multiple streams and multiple stages per stream.Finally, the
pipeless_kvs_get
function will return an empty value by default, including when the key does not exist. Since frames are executed in parallel, a key could not exist at the time of getting it, users need to take this into account. Thepipeless_kvs_set
function converts any value to string before inserting it into the store.Benefits
Possible drawbacks
Applicable issues
Additional information