Commit 52ee6793 authored by jan.koester's avatar jan.koester
Browse files

test

parent 9d7cbb57
Loading
Loading
Loading
Loading
+3 −1
Original line number Diff line number Diff line
mediadb (20260503+4) unstable; urgency=medium
mediadb (20260503+5) unstable; urgency=medium

  * cluster: recreate import_client_ on retry to reset paritypp node error
    counters when cluster recovers (reset_import_client vs warmup-only)
@@ -17,6 +17,8 @@ mediadb (20260503+4) unstable; urgency=medium
    recover from broken partial groups
  * sync: block sync_from_cluster while global import flag is active;
    also block /api/cluster/sync during import to avoid import/sync races
  * cluster: always log replicate/replicate_import exception details
    (key, gid, size, error) in release builds for timeout diagnosis

 -- Jan Koester <jan.koester@tuxist.de>  Sat, 03 May 2026 17:00:00 +0200

+12 −4
Original line number Diff line number Diff line
@@ -246,10 +246,14 @@ bool Cluster::replicate(const std::string& key, const uint8_t* data, size_t len)
        pclient_->store(gid, data, len);
        DBG_LOG("[CLUSTER] replicate key=" << key << " store done\n");
    } catch (const netplus::NetException& e) {
        DBG_LOG("[CLUSTER] replicate NetException key=" << key << ": " << e.what() << "\n");
        std::cerr << "[CLUSTER] replicate NetException key=" << key
                  << " gid=" << gid << " size=" << len
                  << ": " << e.what() << "\n";
        return false;
    } catch (const std::exception& e) {
        DBG_LOG("[CLUSTER] replicate exception key=" << key << ": " << e.what() << "\n");
        std::cerr << "[CLUSTER] replicate exception key=" << key
                  << " gid=" << gid << " size=" << len
                  << ": " << e.what() << "\n";
        return false;
    }
    return true;
@@ -264,10 +268,14 @@ bool Cluster::replicate_import(const std::string& key, const uint8_t* data, size
        import_client_->store(gid, data, len);
        DBG_LOG("[CLUSTER] replicate_import key=" << key << " store done\n");
    } catch (const netplus::NetException& e) {
        DBG_LOG("[CLUSTER] replicate_import NetException key=" << key << ": " << e.what() << "\n");
        std::cerr << "[CLUSTER] replicate_import NetException key=" << key
                  << " gid=" << gid << " size=" << len
                  << ": " << e.what() << "\n";
        return false;
    } catch (const std::exception& e) {
        DBG_LOG("[CLUSTER] replicate_import exception key=" << key << ": " << e.what() << "\n");
        std::cerr << "[CLUSTER] replicate_import exception key=" << key
                  << " gid=" << gid << " size=" << len
                  << ": " << e.what() << "\n";
        return false;
    }
    return true;