JDK-2200507 : assert(_inserts <= _insert_limit,"hash table overflow") in NodeHash::hash_insert with debug build
  • Type: Backport
  • Backport of: JDK-6916062
  • Component: hotspot
  • Sub-Component: compiler
  • Priority: P2
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2010-10-04
  • Updated: 2011-04-23
  • Resolved: 2011-04-23
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 6 Other
6u22-revFixed hs20Fixed
Description
See main bug.

Comments
SUGGESTED FIX I decided to go with simplest fix which is easy to backport and leave fixing address type inconsistency for later (I have bug 6715629). I also added asserts to catch such situations.
04-10-2010

EVALUATION Changes for 6711117 put a memory node back on IGVN worklist if address type does not match cached type in a hope that address nodes will be processed and the type will be updated. But it does not check that there are nodes on worklist which will trigger address processing. As result the memory node is pulled from and pushed on IGVN worklist infinitely. On each iteration NodeHash::_inserts value is incremented forcing hash table grow until integer value NodeHash::_max is overflow (became 0) which triggers bug's assert.
04-10-2010