diff --git a/modules/ripple_core/functional/ripple_LoadFeeTrack.h b/modules/ripple_core/functional/ripple_LoadFeeTrack.h index 52358f9ec3..db69e8e426 100644 --- a/modules/ripple_core/functional/ripple_LoadFeeTrack.h +++ b/modules/ripple_core/functional/ripple_LoadFeeTrack.h @@ -16,6 +16,7 @@ public: LoadFeeTrack () : mLocalTxnLoadFee (lftNormalFee) , mRemoteTxnLoadFee (lftNormalFee) + , mClusterTxnLoadFee (lftNormalFee) , raiseCount (0) { } diff --git a/src/cpp/ripple/NetworkOPs.cpp b/src/cpp/ripple/NetworkOPs.cpp index 3979f3aa93..b3e28437e2 100644 --- a/src/cpp/ripple/NetworkOPs.cpp +++ b/src/cpp/ripple/NetworkOPs.cpp @@ -1431,12 +1431,19 @@ Json::Value NetworkOPs::getServerInfo (bool human, bool admin) static_cast (getApp().getFeeTrack ().getLoadFactor ()) / getApp().getFeeTrack ().getLoadBase (); if (admin) { - info["load_factor_local"] = - static_cast (getApp().getFeeTrack ().getLocalFee ()) / getApp().getFeeTrack ().getLoadBase (); - info["load_factor_net"] = - static_cast (getApp().getFeeTrack ().getRemoteFee ()) / getApp().getFeeTrack ().getLoadBase (); - info["load_factor_cluster"] = - static_cast (getApp().getFeeTrack ().getClusterFee ()) / getApp().getFeeTrack ().getLoadBase (); + uint32 base = getApp().getFeeTrack().getLoadBase(); + uint32 fee = getApp().getFeeTrack().getLocalFee(); + if (fee != base) + info["load_factor_local"] = + static_cast (fee) / base; + fee = getApp().getFeeTrack ().getRemoteFee(); + if (fee != base) + info["load_factor_net"] = + static_cast (fee) / base; + fee = getApp().getFeeTrack().getClusterFee(); + if (fee != base) + info["load_factor_cluster"] = + static_cast (fee) / base; } }