> 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: Rename and comment put_when_absent. ------------- Changes: - all: https://git.openjdk.org/jdk/pull/13818/files - new: https://git.openjdk.org/jdk/pull/13818/files/60463042..e9b5af0e Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=13818&range=02 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=13818&range=01-02 Stats: 8 lines in 2 files changed: 4 ins; 0 del; 4 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