Please review 7178670: runtime/7158800/BadUtf8.java fails in SymbolTable::rehash_table
coleen.phillimore at oracle.com
Fri Jun 22 19:07:52 PDT 2012
On 6/22/2012 12:57 AM, Vladimir Kozlov wrote:
> With your changes all shared entries will be unlinked if rehashing is
> enabled. Do you want that? Or you just want to skip a shared entry?
Yes, these entries still have to be removed from the old table and put
on the new one, because I delete the old table. It has to create new
links for this.
> Coleen Phillimore wrote:
>> After some discussions about the preserving shared state in move_to,
>> it occurred to me that after rehashing, the shared entries were no
>> longer last in the buckets. The walking in StringTable and
>> SymbolTable assumed this. I also added more of a comment about
>> preserving the state. It could be nicer code and safer but it would
>> also introduce some risk or possible performance impact. These are
>> the latest webrevs which I've tested with rehash_count=2 and
>> rehash_multipier=1 to make it rehash a lot.
>> open webrev at http://cr.openjdk.java.net/~coleenp/hashmap_cds2
>> open webrev at http://cr.openjdk.java.net/~coleenp/hashmap_7u6_cds2/
>> On 6/21/2012 3:25 PM, Coleen Phillimore wrote:
>>> Summary: Cannot delete _buckets and HashtableEntries in shared space
>>> Tested with the tests that I added using Class Data Sharing (on and
>>> off). This is both a patch for 7u6 and main.
>>> open webrev at http://cr.openjdk.java.net/~coleenp/hashmap_cds/
>>> open webrev at http://cr.openjdk.java.net/~coleenp/hashmap_7u6_cds/
More information about the hotspot-runtime-dev