mirror of
https://github.com/haveno-dex/haveno.git
synced 2025-10-13 19:10:42 -04:00
add random delay to publish trade statistics on startup within 24 hours
This commit is contained in:
parent
723d5cc1dd
commit
cfc62aa9ae
2 changed files with 11 additions and 3 deletions
|
@ -65,6 +65,7 @@ import haveno.core.trade.protocol.ProcessModelServiceProvider;
|
|||
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;
|
||||
|
@ -2476,7 +2477,7 @@ public abstract class Trade extends XmrWalletBase implements Tradable, Model {
|
|||
// publish after random delay within 24 hours
|
||||
UserThread.runAfterRandomDelay(() -> {
|
||||
if (!isShutDownStarted) doPublishTradeStatistics();
|
||||
}, 0, 24 * 60 * 60 * 1000, TimeUnit.MILLISECONDS);
|
||||
}, 0, TradeStatisticsManager.PUBLISH_STATS_RANDOM_DELAY_HOURS * 60 * 60 * 1000, TimeUnit.MILLISECONDS);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -20,6 +20,8 @@ package haveno.core.trade.statistics;
|
|||
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;
|
||||
|
@ -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,
|
||||
|
@ -299,8 +302,12 @@ public class TradeStatisticsManager {
|
|||
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());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue