Use seconds since epoch as base value for the Source session versions to have increasing version upon daemon restarts
This commit is contained in:
parent
cd0d7b6210
commit
cbd4640f27
@ -25,6 +25,7 @@
|
|||||||
#include <map>
|
#include <map>
|
||||||
#include <shared_mutex>
|
#include <shared_mutex>
|
||||||
#include <thread>
|
#include <thread>
|
||||||
|
#include <chrono>
|
||||||
|
|
||||||
#include "config.hpp"
|
#include "config.hpp"
|
||||||
#include "driver_interface.hpp"
|
#include "driver_interface.hpp"
|
||||||
@ -114,6 +115,8 @@ class SessionManager {
|
|||||||
bool init() {
|
bool init() {
|
||||||
if (!running_) {
|
if (!running_) {
|
||||||
running_ = true;
|
running_ = true;
|
||||||
|
g_session_version = std::chrono::system_clock::now().time_since_epoch() /
|
||||||
|
std::chrono::seconds(1);
|
||||||
// to have an increasing session versions between restarts
|
// to have an increasing session versions between restarts
|
||||||
res_ = std::async(std::launch::async, &SessionManager::worker, this);
|
res_ = std::async(std::launch::async, &SessionManager::worker, this);
|
||||||
}
|
}
|
||||||
@ -245,7 +248,7 @@ class SessionManager {
|
|||||||
uint32_t last_sink_update_{0};
|
uint32_t last_sink_update_{0};
|
||||||
|
|
||||||
/* used to handle session versioning */
|
/* used to handle session versioning */
|
||||||
inline static std::atomic<uint16_t> g_session_version{0};
|
inline static std::atomic<uint32_t> g_session_version{0};
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user