File RedisStateKeyValue.h
-
namespace faabric
-
namespace state
WARNING - key-value objects are shared between threads, BUT hiredis is not thread-safe, so make sure you always retrieve the reference to Redis inline rather than sharing a reference within the class.
-
class RedisStateKeyValue : public faabric::state::StateKeyValue
Public Functions
-
RedisStateKeyValue(const std::string &userIn, const std::string &keyIn, size_t sizeIn)
-
RedisStateKeyValue(const std::string &userIn, const std::string &keyIn)
Public Static Functions
-
static size_t getStateSizeFromRemote(const std::string &userIn, const std::string &keyIn)
-
static void deleteFromRemote(const std::string &userIn, const std::string &keyIn)
-
static void clearAll(bool global)
Private Functions
-
virtual void pullFromRemote() override
-
virtual void pullChunkFromRemote(long offset, size_t length) override
-
virtual void pushToRemote() override
-
virtual void pushPartialToRemote(const std::vector<StateChunk> &dirtyChunks) override
-
virtual void appendToRemote(const uint8_t *data, size_t length) override
-
virtual void pullAppendedFromRemote(uint8_t *data, size_t length, long nValues) override
-
virtual void clearAppendedFromRemote() override
Private Members
-
const std::string joinedKey
-
RedisStateKeyValue(const std::string &userIn, const std::string &keyIn, size_t sizeIn)
-
class RedisStateKeyValue : public faabric::state::StateKeyValue
-
namespace state