--- old/src/hotspot/share/classfile/classLoaderData.cpp 2018-08-24 13:29:49.223320497 -0400 +++ new/src/hotspot/share/classfile/classLoaderData.cpp 2018-08-24 13:29:47.831240132 -0400 @@ -655,7 +655,7 @@ size = _default_loader_dictionary_size; resizable = true; } - if (!DynamicallyResizeSystemDictionaries || DumpSharedSpaces || UseSharedSpaces) { + if (!DynamicallyResizeSystemDictionaries || DumpSharedSpaces) { resizable = false; } return new Dictionary(this, size, resizable); --- old/src/hotspot/share/classfile/dictionary.cpp 2018-08-24 13:29:53.107544735 -0400 +++ new/src/hotspot/share/classfile/dictionary.cpp 2018-08-24 13:29:51.711464139 -0400 @@ -592,8 +592,8 @@ ResourceMark rm; assert(loader_data() != NULL, "loader data should not be null"); - st->print_cr("Java dictionary (table_size=%d, classes=%d)", - table_size(), number_of_entries()); + st->print_cr("Java dictionary (table_size=%d, classes=%d, resizable=%s)", + table_size(), number_of_entries(), BOOL_TO_STR(_resizable)); st->print_cr("^ indicates that initiating loader is different from defining loader"); for (int index = 0; index < table_size(); index++) { --- old/src/hotspot/share/classfile/systemDictionary.cpp 2018-08-24 13:29:56.987768741 -0400 +++ new/src/hotspot/share/classfile/systemDictionary.cpp 2018-08-24 13:29:55.571686991 -0400 @@ -1160,10 +1160,12 @@ #if INCLUDE_CDS void SystemDictionary::set_shared_dictionary(HashtableBucket* t, int length, int number_of_entries) { + assert(!DumpSharedSpaces, "Should not be called with DumpSharedSpaces"); assert(length == _shared_dictionary_size * sizeof(HashtableBucket), "bad shared dictionary size."); _shared_dictionary = new Dictionary(ClassLoaderData::the_null_class_loader_data(), - _shared_dictionary_size, t, number_of_entries); + _shared_dictionary_size, t, number_of_entries, + false /* explicitly set _resizable to false */); }