ci issues

Signed-off-by: Pratik Mankawde <3397372+pratikmankawde@users.noreply.github.com>
This commit is contained in:
Pratik Mankawde
2026-07-06 15:19:57 +01:00
parent 34a579e744
commit dcfdb60e9f
3 changed files with 15 additions and 8 deletions

View File

@@ -371,6 +371,12 @@ LedgerHistory::handleMismatch(
return;
}
// Tracks whether the mismatch reason has already been recorded. The
// consensus tx-set hash disagreement is the root cause, so it is counted
// once here; the tx-level comparison below still logs its diagnostics but
// must not record a second reason for the same mismatch event.
bool reasonRecorded = false;
if (builtConsensusHash && validatedConsensusHash)
{
if (builtConsensusHash != validatedConsensusHash)
@@ -378,11 +384,8 @@ LedgerHistory::handleMismatch(
JLOG(j_.error()) << "MISMATCH on consensus transaction set "
<< " built: " << to_string(*builtConsensusHash)
<< " validated: " << to_string(*validatedConsensusHash);
// The consensus tx-set hashes disagree — this is the root cause,
// so record it as the single reason and stop. The tx-level
// comparison below would otherwise double-count the same mismatch.
recordReason("consensus_txset");
return;
reasonRecorded = true;
}
else
{
@@ -398,13 +401,15 @@ LedgerHistory::handleMismatch(
if (builtTx == validTx)
{
JLOG(j_.error()) << "MISMATCH with same " << builtTx.size() << " transactions";
recordReason("same_txset_diff_result");
if (!reasonRecorded)
recordReason("same_txset_diff_result");
}
else
{
JLOG(j_.error()) << "MISMATCH with " << builtTx.size() << " built and " << validTx.size()
<< " valid transactions.";
recordReason("different_txset");
if (!reasonRecorded)
recordReason("different_txset");
}
JLOG(j_.error()) << "built\n" << getJson({*builtLedger, {}});

View File

@@ -22,11 +22,11 @@
#include <xrpl/nodestore/Database.h>
#include <xrpl/nodestore/NodeObject.h>
#include <xrpl/protocol/HashPrefix.h>
#include <xrpl/protocol/Indexes.h>
#include <xrpl/protocol/Indexes.h> // IWYU pragma: keep
#include <xrpl/protocol/LedgerHeader.h>
#include <xrpl/protocol/Rules.h>
#include <xrpl/protocol/Serializer.h>
#include <xrpl/protocol/SystemParameters.h>
#include <xrpl/protocol/SystemParameters.h> // IWYU pragma: keep
#include <xrpl/protocol/jss.h>
#include <xrpl/resource/Fees.h>
#include <xrpl/shamap/SHAMapNodeID.h>

View File

@@ -79,10 +79,12 @@
#include <xrpl/protocol/ApiVersion.h>
#include <xrpl/protocol/BuildInfo.h>
#include <xrpl/protocol/Feature.h>
#include <xrpl/protocol/Indexes.h> // IWYU pragma: keep
#include <xrpl/protocol/Protocol.h>
#include <xrpl/protocol/PublicKey.h>
#include <xrpl/protocol/STParsedJSON.h>
#include <xrpl/protocol/Serializer.h>
#include <xrpl/protocol/SystemParameters.h> // IWYU pragma: keep
#include <xrpl/protocol/jss.h>
#include <xrpl/protocol/tokens.h>
#include <xrpl/rdb/DatabaseCon.h>