> The ResourceHashtable conversion for JDK-8292741 didn't add the resizing > code. The old hashtable code was tuned for resizing in anticipation of large > hashtables for JVMTI tags. This patch ports over the old hashtable resizing > code. It also adds a ResourceHashtable::put_fast() function that prepends to > the bucket list, which is also reclaims the performance of the old hashtable > for this test with 10M tags. The ResourceHashtable put function is really a > put_if_absent. This can be cleaned up in a future change. Also, the remove > function needed a lambda to destroy the WeakHandle, since resizing requires > copying entries. > > Tested with JVMTI and JDI tests locally, and tier1-4 tests.
Coleen Phillimore has updated the pull request incrementally with one additional commit since the last revision: Remove return variable from remove lambda, fix formatting. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/13818/files - new: https://git.openjdk.org/jdk/pull/13818/files/e5e04907..60463042 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=13818&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=13818&range=00-01 Stats: 6 lines in 3 files changed: 0 ins; 3 del; 3 mod Patch: https://git.openjdk.org/jdk/pull/13818.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/13818/head:pull/13818 PR: https://git.openjdk.org/jdk/pull/13818