Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion core/src/main/java/haveno/core/trade/Trade.java
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@
import haveno.core.trade.protocol.TradeListener;
import haveno.core.trade.protocol.TradePeer;
import haveno.core.trade.protocol.TradeProtocol;
import haveno.core.trade.statistics.TradeStatisticsManager;
import haveno.core.util.PriceUtil;
import haveno.core.util.VolumeUtil;
import haveno.core.xmr.model.XmrAddressEntry;
Expand Down Expand Up @@ -2476,7 +2477,7 @@ public void maybePublishTradeStatistics() {
// publish after random delay within 24 hours
UserThread.runAfterRandomDelay(() -> {
if (!isShutDownStarted) doPublishTradeStatistics();
}, 0, 24, TimeUnit.HOURS);
}, 0, TradeStatisticsManager.PUBLISH_STATS_RANDOM_DELAY_HOURS * 60 * 60 * 1000, TimeUnit.MILLISECONDS);
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@
import com.google.inject.Inject;
import com.google.inject.Singleton;
import com.google.inject.name.Named;

import haveno.common.UserThread;
import haveno.common.config.Config;
import haveno.common.file.JsonFileManager;
import haveno.core.locale.CurrencyTuple;
Expand Down Expand Up @@ -55,6 +57,7 @@ public class TradeStatisticsManager {
private final boolean dumpStatistics;
private final ObservableSet<TradeStatistics3> observableTradeStatisticsSet = FXCollections.observableSet();
private JsonFileManager jsonFileManager;
public static final int PUBLISH_STATS_RANDOM_DELAY_HOURS = 24;

@Inject
public TradeStatisticsManager(P2PService p2PService,
Expand Down Expand Up @@ -299,8 +302,12 @@ public void maybePublishTradeStatistics(Set<Trade> trades,
return;
}

log.info("Publishing trade statistics for {} {}", trade.getClass().getSimpleName(), trade.getShortId());
p2PService.addPersistableNetworkPayload(tradeStatistics3V2, true);
// publish after random delay within 24 hours
log.info("Scheduling to publish trade statistics at random time for {} {}", trade.getClass().getSimpleName(), trade.getShortId());
TradeStatistics3 tradeStatistics3V2Final = tradeStatistics3V2;
UserThread.runAfterRandomDelay(() -> {
p2PService.addPersistableNetworkPayload(tradeStatistics3V2Final, true);
}, 0, PUBLISH_STATS_RANDOM_DELAY_HOURS * 60 * 60 * 1000, TimeUnit.MILLISECONDS);
});
log.info("maybeRepublishTradeStatistics took {} ms. Number of tradeStatistics: {}. Number of own trades: {}",
System.currentTimeMillis() - ts, hashes.size(), trades.size());
Expand Down
Loading