-
Notifications
You must be signed in to change notification settings - Fork 57
Comparing changes
Open a pull request
base repository: awslabs/aws-elasticache-cluster-client-memcached-for-java
base: 1.2.2
head repository: awslabs/aws-elasticache-cluster-client-memcached-for-java
compare: 1.2.3
- 9 commits
- 9 files changed
- 7 contributors
Commits on Apr 3, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 262991a - Browse repository at this point
Copy the full SHA 262991aView commit details
Commits on Jan 31, 2025
-
Fix ConcurrentModificationException for getStats Op
If the result of MemcachedClient.getStats() is immediately iterated over, a ConcurrentModificationException can be thrown if the operationTimeout value has been exceeded before mutations to the Map have completed. Example: * blatch.await(operationTimeout, TimeUnit.MILLISECONDS); returns false after waiting `operationTimeout`, resulting in MemcachedClient.getStats() returning the `rv` Map. * While the caller starts to iterate over the Map, the StatsOperation.Callback's gotStat mutates the Map, resulting in a ConcurrentModificationException. How to Reproduce: ``` public static void main(String[] args) throws Exception { ConnectionFactory connectionFactory = new ConnectionFactoryBuilder() .setProtocol(Protocol.TEXT) .setFailureMode(FailureMode.Cancel) .setOpTimeout(1) .build(); MemcachedClient client = new MemcachedClient( connectionFactory, AddrUtil.getAddresses("localhost:11211")); while(true) { Map<SocketAddress, Map<String, String>> allStats = client.getStats(); if (allStats.isEmpty()) continue; Map<String, String> stats = allStats.entrySet().iterator().next().getValue(); for(Entry<String,String> stat : stats.entrySet()) { System.out.println(stat.getKey() + " => " + stat.getValue()); } } } ``` Output: ``` 2017-11-02 14:37:52.269 WARN net.spy.memcached.MemcachedClient: Unsuccessful stat fetch: {OperationStatus success=false: timed out} Exception in thread "main" java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(HashMap.java:922) at java.util.HashMap$EntryIterator.next(HashMap.java:962) at java.util.HashMap$EntryIterator.next(HashMap.java:960) at com.xxx.xxx.xxx.xxx.xxx.StatsBug.main(StatsBug.java:31) ``` Notes: * Written in a way to be completely backwards compatible. * Guarantees that the caller only sees the entire stats result for a SocketAddress, or no result at all. Converting the Maps to ConcurrentHashMaps alone would result in partially complete Maps. Change-Id: If51e074a13f809581c8bad119b393edb2c4d4788 Reviewed-on: http://review.couchbase.org/91953 Reviewed-by: Matt Ingenthron <[email protected]> Tested-by: Matt Ingenthron <[email protected]>Configuration menu - View commit details
-
Copy full SHA for a215b82 - Browse repository at this point
Copy the full SHA a215b82View commit details
Commits on Feb 24, 2025
-
Update README with troubleshooting TLS connection issues
Signed-off-by: VanessaTang <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for abd3ba5 - Browse repository at this point
Copy the full SHA abd3ba5View commit details -
Merge pull request #46 from YueTang-Vanessa/master
Update README with troubleshooting Memcached client issues
Configuration menu - View commit details
-
Copy full SHA for c57e78c - Browse repository at this point
Copy the full SHA c57e78cView commit details
Commits on Mar 12, 2025
-
Configuration menu - View commit details
-
Copy full SHA for 2ecbf93 - Browse repository at this point
Copy the full SHA 2ecbf93View commit details -
Merge pull request #47 from EranAs/fix-reconnects-on-dns-failures
fix: reconnects keeps retrying on DNS resolution failures
Configuration menu - View commit details
-
Copy full SHA for ed02a25 - Browse repository at this point
Copy the full SHA ed02a25View commit details -
Propagate
TimeoutExceptions fromOperationFutures as `OperationTi……meoutException`s fixes #48
Jovan Attisha 🥃 committedMar 12, 2025 Configuration menu - View commit details
-
Copy full SHA for ea8a14f - Browse repository at this point
Copy the full SHA ea8a14fView commit details
Commits on Apr 26, 2025
-
Merge pull request #49 from jattisha/master
Propagate `TimeoutException`s from `OperationFuture`s as `OperationTimeoutException`s
Configuration menu - View commit details
-
Copy full SHA for 6c22307 - Browse repository at this point
Copy the full SHA 6c22307View commit details
Commits on Jun 30, 2025
-
Configuration menu - View commit details
-
Copy full SHA for 48d18f4 - Browse repository at this point
Copy the full SHA 48d18f4View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 1.2.2...1.2.3