forked from Qortal/qortal
Revert "Synchronize arbitrary data list removals, as it seems that SynchronizedList and SynchronizedMap aren't overriding removeIf() with a thread-safe version."
This reverts commit e5f88fe2f4
.
This commit is contained in:
parent
df0a9701ba
commit
c65de74d13
@ -75,13 +75,9 @@ public class ArbitraryDataBuildManager extends Thread {
|
|||||||
if (now == null) {
|
if (now == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
synchronized (arbitraryDataBuildQueue) {
|
|
||||||
arbitraryDataBuildQueue.entrySet().removeIf(entry -> entry.getValue().hasReachedBuildTimeout(now));
|
arbitraryDataBuildQueue.entrySet().removeIf(entry -> entry.getValue().hasReachedBuildTimeout(now));
|
||||||
}
|
|
||||||
synchronized (arbitraryDataFailedBuilds) {
|
|
||||||
arbitraryDataFailedBuilds.entrySet().removeIf(entry -> entry.getValue().hasReachedFailureTimeout(now));
|
arbitraryDataFailedBuilds.entrySet().removeIf(entry -> entry.getValue().hasReachedFailureTimeout(now));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
// Build queue
|
// Build queue
|
||||||
|
|
||||||
|
@ -84,10 +84,8 @@ public class ArbitraryDataFileListManager {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final long requestMinimumTimestamp = now - ArbitraryDataManager.ARBITRARY_REQUEST_TIMEOUT;
|
final long requestMinimumTimestamp = now - ArbitraryDataManager.ARBITRARY_REQUEST_TIMEOUT;
|
||||||
synchronized (arbitraryDataFileListRequests) {
|
|
||||||
arbitraryDataFileListRequests.entrySet().removeIf(entry -> entry.getValue().getC() == null || entry.getValue().getC() < requestMinimumTimestamp);
|
arbitraryDataFileListRequests.entrySet().removeIf(entry -> entry.getValue().getC() == null || entry.getValue().getC() < requestMinimumTimestamp);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Track file list lookups by signature
|
// Track file list lookups by signature
|
||||||
|
@ -101,23 +101,15 @@ public class ArbitraryDataFileManager extends Thread {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final long requestMinimumTimestamp = now - ArbitraryDataManager.getInstance().ARBITRARY_REQUEST_TIMEOUT;
|
final long requestMinimumTimestamp = now - ArbitraryDataManager.getInstance().ARBITRARY_REQUEST_TIMEOUT;
|
||||||
synchronized (arbitraryDataFileRequests) {
|
|
||||||
arbitraryDataFileRequests.entrySet().removeIf(entry -> entry.getValue() == null || entry.getValue() < requestMinimumTimestamp);
|
arbitraryDataFileRequests.entrySet().removeIf(entry -> entry.getValue() == null || entry.getValue() < requestMinimumTimestamp);
|
||||||
}
|
|
||||||
|
|
||||||
final long relayMinimumTimestamp = now - ArbitraryDataManager.getInstance().ARBITRARY_RELAY_TIMEOUT;
|
final long relayMinimumTimestamp = now - ArbitraryDataManager.getInstance().ARBITRARY_RELAY_TIMEOUT;
|
||||||
synchronized (arbitraryRelayMap) {
|
|
||||||
arbitraryRelayMap.removeIf(entry -> entry == null || entry.getTimestamp() == null || entry.getTimestamp() < relayMinimumTimestamp);
|
arbitraryRelayMap.removeIf(entry -> entry == null || entry.getTimestamp() == null || entry.getTimestamp() < relayMinimumTimestamp);
|
||||||
}
|
|
||||||
synchronized (arbitraryDataFileHashResponses) {
|
|
||||||
arbitraryDataFileHashResponses.removeIf(entry -> entry.getTimestamp() < relayMinimumTimestamp);
|
arbitraryDataFileHashResponses.removeIf(entry -> entry.getTimestamp() < relayMinimumTimestamp);
|
||||||
}
|
|
||||||
|
|
||||||
final long directConnectionInfoMinimumTimestamp = now - ArbitraryDataManager.getInstance().ARBITRARY_DIRECT_CONNECTION_INFO_TIMEOUT;
|
final long directConnectionInfoMinimumTimestamp = now - ArbitraryDataManager.getInstance().ARBITRARY_DIRECT_CONNECTION_INFO_TIMEOUT;
|
||||||
synchronized (directConnectionInfo) {
|
|
||||||
directConnectionInfo.removeIf(entry -> entry.getTimestamp() < directConnectionInfoMinimumTimestamp);
|
directConnectionInfo.removeIf(entry -> entry.getTimestamp() < directConnectionInfoMinimumTimestamp);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -492,10 +484,8 @@ public class ArbitraryDataFileManager extends Thread {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void removeFromRelayMap(ArbitraryRelayInfo entry) {
|
private void removeFromRelayMap(ArbitraryRelayInfo entry) {
|
||||||
synchronized (arbitraryRelayMap) {
|
|
||||||
arbitraryRelayMap.removeIf(relayInfo -> relayInfo.equals(entry));
|
arbitraryRelayMap.removeIf(relayInfo -> relayInfo.equals(entry));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Network handlers
|
// Network handlers
|
||||||
|
@ -56,10 +56,8 @@ public class ArbitraryDataRenderManager extends Thread {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final long minimumTimestamp = now - AUTHORIZATION_TIMEOUT;
|
final long minimumTimestamp = now - AUTHORIZATION_TIMEOUT;
|
||||||
synchronized (this.authorizedResources) {
|
|
||||||
this.authorizedResources.entrySet().removeIf(entry -> entry.getValue() == null || entry.getValue() < minimumTimestamp);
|
this.authorizedResources.entrySet().removeIf(entry -> entry.getValue() == null || entry.getValue() < minimumTimestamp);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isAuthorized(ArbitraryDataResource resource) {
|
public boolean isAuthorized(ArbitraryDataResource resource) {
|
||||||
ArbitraryDataResource broadResource = new ArbitraryDataResource(resource.getResourceId(), null, null, null);
|
ArbitraryDataResource broadResource = new ArbitraryDataResource(resource.getResourceId(), null, null, null);
|
||||||
|
@ -73,10 +73,8 @@ public class ArbitraryMetadataManager {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
final long requestMinimumTimestamp = now - ArbitraryDataManager.ARBITRARY_REQUEST_TIMEOUT;
|
final long requestMinimumTimestamp = now - ArbitraryDataManager.ARBITRARY_REQUEST_TIMEOUT;
|
||||||
synchronized (arbitraryMetadataRequests) {
|
|
||||||
arbitraryMetadataRequests.entrySet().removeIf(entry -> entry.getValue().getC() == null || entry.getValue().getC() < requestMinimumTimestamp);
|
arbitraryMetadataRequests.entrySet().removeIf(entry -> entry.getValue().getC() == null || entry.getValue().getC() < requestMinimumTimestamp);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public ArbitraryDataTransactionMetadata fetchMetadata(ArbitraryDataResource arbitraryDataResource, boolean useRateLimiter) {
|
public ArbitraryDataTransactionMetadata fetchMetadata(ArbitraryDataResource arbitraryDataResource, boolean useRateLimiter) {
|
||||||
|
Loading…
Reference in New Issue
Block a user