Fix race in multiple DB mirroring configurations.

This commit is contained in:
Adam Ierymenko 2019-08-08 15:29:13 -05:00
parent ad2a7c2590
commit 28d0070ce2
No known key found for this signature in database
GPG key ID: 1657198823E52A61
5 changed files with 30 additions and 20 deletions

View file

@ -369,7 +369,7 @@ bool LFDB::save(nlohmann::json &record,bool notifyListeners)
if (nwid) {
nlohmann::json old;
get(nwid,old);
if ((!old.is_object())||(old != record)) {
if ((!old.is_object())||(!_compareRecords(old,record))) {
record["revision"] = OSUtils::jsonInt(record["revision"],0ULL) + 1ULL;
_networkChanged(old,record,notifyListeners);
{
@ -385,7 +385,7 @@ bool LFDB::save(nlohmann::json &record,bool notifyListeners)
if ((id)&&(nwid)) {
nlohmann::json network,old;
get(nwid,network,id,old);
if ((!old.is_object())||(old != record)) {
if ((!old.is_object())||(!_compareRecords(old,record))) {
record["revision"] = OSUtils::jsonInt(record["revision"],0ULL) + 1ULL;
_memberChanged(old,record,notifyListeners);
{