--- old/src/share/vm/opto/escape.cpp 2014-12-02 11:31:33.000000000 -0800 +++ new/src/share/vm/opto/escape.cpp 2014-12-02 11:31:33.000000000 -0800 @@ -1115,6 +1115,9 @@ // Each 4 iterations calculate how much time it will take // to complete graph construction. time.stop(); + // Poll for requests from shutdown mechanism to quiesce compiler + // because Connection graph construction may take long time. + CompileBroker::maybe_block(); double stop_time = time.seconds(); double time_per_iter = (stop_time - start_time) / (double)SAMPLE_SIZE; double time_until_end = time_per_iter * (double)(java_objects_length - next);