Skip to content

Commit 6df3baf

Browse files
committed
requestAllPrices cancels and resends request if new provider
1 parent c908294 commit 6df3baf

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

core/src/main/java/haveno/core/provider/price/PriceFeedService.java

+9-2
Original file line numberDiff line numberDiff line change
@@ -451,9 +451,16 @@ private boolean applyPriceToConsumer() {
451451
}
452452

453453
private void requestAllPrices(PriceProvider provider, Runnable resultHandler, FaultHandler faultHandler) {
454+
455+
// ignore if we have pending request to same provider
454456
if (httpClient.hasPendingRequest()) {
455-
log.warn("We have a pending request open. We ignore that request. httpClient {}", httpClient);
456-
return;
457+
if (httpClient.getBaseUrl().equals(provider.getBaseUrl())) {
458+
log.warn("We have a pending request open. We ignore that request. httpClient {}", httpClient);
459+
return;
460+
} else {
461+
log.warn("Canceling price request and resending to new provider {}", provider.getBaseUrl());
462+
httpClient.cancelPendingRequest();
463+
}
457464
}
458465

459466
priceRequest = new PriceRequest();

0 commit comments

Comments
 (0)