JDK-8141641 : Runtime: implement range for ErrorLogTimeout
  • Type: Enhancement
  • Component: hotspot
  • Sub-Component: runtime
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2015-11-06
  • Updated: 2015-12-10
  • Resolved: 2015-11-18
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 9
9 b96Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Relates :  
Description
With JDK-8078554, JDK-8078555 and JDK-8078556 (as well as JDK-8138983) we should have all flags ranges implemented, however

jdk_java -XX:+PrintFlagsRanges -version | grep "\[  "

shows that there are in fact some still un-implemented:

GC        uintx AdaptiveSizeMajorGCDecayTimeScale        [ ... ] {product}
GC        uintx AdaptiveSizePolicyCollectionCostMargin   [ ... ] {product}
GC        uintx AdaptiveSizePolicyInitializingSteps      [ ... ] {product}
GC        uintx AdaptiveSizePolicyOutputInterval         [ ... ] {product}
COMPILER   intx AllocatePrefetchDistance                 [ ... ] {product}
COMPILER   intx AllocatePrefetchInstr                    [ ... ] {product}
COMPILER   intx AllocatePrefetchStepSize                 [ ... ] {product}
GC        uintx AutoGCSelectPauseMillis                  [ ... ] {product}
GC       size_t BaseFootPrintEstimate                    [ ... ] {product}
GC        uintx CMSAbortablePrecleanMinWorkPerIteration  [ ... ] {product}
GC        uintx CMSClassUnloadingMaxInterval             [ ... ] {product}
GC        uintx CMSCoordinatorYieldSleepCount            [ ... ] {product}
GC        uintx CMSMaxAbortablePrecleanLoops             [ ... ] {product}
GC        uintx CMSOldPLABReactivityFactor               [ ... ] {product}
GC       size_t CMSScheduleRemarkEdenSizeThreshold       [ ... ] {product}
GC         intx CMSWaitDuration                          [ ... ] {manageable}
GC        uintx CMSYieldSleepCount                       [ ... ] {product}
GC        uintx CMS_FLSPadding                           [ ... ] {product}
GC        uintx CMS_SweepPadding                         [ ... ] {product}
GC        uintx CMS_SweepTimerThresholdMillis            [ ... ] {product}
GC        uintx CPUForCMSThread                          [ ... ] {diagnostic}
COMPILER   intx CompileThreshold                         [ ... ] {pd product}
COMPILER   intx CompilerThreadPriority                   [ ... ] {product}
GC         uint ConcGCThreads                            [ ... ] {product}
RUNTIME  size_t ErgoHeapSizeLimit                        [ ... ] {product}
RUNTIME   uintx ErrorLogTimeout                          [ ... ] {product}
GC         intx G1ConcRefinementThresholdStep            [ ... ] {product}
GC        uintx G1MixedGCCountTarget                     [ ... ] {product}
GC        uintx GCDrainStackTargetSize                   [ ... ] {product}
GC        uintx GCLockerRetryAllocationCount             [ ... ] {diagnostic}
GC       size_t GCLogFileSize                            [ ... ] {product}
GC        uintx GCPauseIntervalMillis                    [ ... ] {product}
GC        uintx GCTimeRatio                              [ ... ] {product}
RUNTIME  size_t HeapBaseMinAddress                       [ ... ] {pd product}
GC        uintx HeapFirstMaximumCompactionCount          [ ... ] {product}
GC        uintx HeapMaximumCompactionInterval            [ ... ] {product}
GC       size_t InitialHeapSize                          [ ... ] {product}
GC        uintx InitialSurvivorRatio                     [ ... ] {product}
COMPILER   intx InteriorEntryAlignment                   [ ... ] {C2 pd product}
RUNTIME  size_t LargePageHeapSizeThreshold               [ ... ] {product}
RUNTIME  size_t LargePageSizeInBytes                     [ ... ] {product}
GC       size_t MarkStackSize                            [ ... ] {product}
GC        uintx MaxGCMinorPauseMillis                    [ ... ] {product}
RUNTIME  size_t MaxHeapSize                              [ ... ] {product}
GC       size_t MaxMetaspaceExpansion                    [ ... ] {product}
GC       size_t MaxMetaspaceSize                         [ ... ] {product}
GC       size_t MaxNewSize                               [ ... ] {product}
GC       size_t MetaspaceSize                            [ ... ] {pd product}
GC       size_t MinHeapDeltaBytes                        [ ... ] {product}
GC       size_t MinMetaspaceExpansion                    [ ... ] {product}
???      size_t NUMAInterleaveGranularity                [ ... ] {product}
???       uintx NUMAPageScanRate                         [ ... ] {product}
???      size_t NUMASpaceResizeRate                      [ ... ] {product}
GC       size_t NewSize                                  [ ... ] {product}
GC       size_t NewSizeThreadIncrease                    [ ... ] {pd product}
COMPILER   intx NodeLimitFudgeFactor                     [ ... ] {C2 product}
GC        uintx NumberOfGCLogFiles                       [ ... ] {product}
GC       size_t OldPLABSize                              [ ... ] {product}
GC       size_t OldSize                                  [ ... ] {product}
COMPILER   intx OnStackReplacePercentage                 [ ... ] {pd product}
COMPILER   intx OptoLoopAlignment                        [ ... ] {pd product}
GC        uintx ParGCDesiredObjsFromOverflowList         [ ... ] {product}
GC         uint ParallelGCThreads                        [ ... ] {product}
GC        uintx PausePadding                             [ ... ] {product}
GC         intx PrefetchCopyIntervalInBytes              [ ... ] {product}
GC         intx PrefetchFieldsAhead                      [ ... ] {product}
GC         intx PrefetchScanIntervalInBytes              [ ... ] {product}
GC       size_t PretenureSizeThreshold                   [ ... ] {product}
GC         intx PrintCMSStatistics                       [ ... ] {product}
GC         intx PrintFLSCensus                           [ ... ] {product}
GC         intx PrintFLSStatistics                       [ ... ] {product}
COMPILER   intx PrintNMethodsAtLevel                     [ ... ] {diagnostic}
???       uintx ProcessDistributionStride                [ ... ] {product}
GC        uintx PromotedPadding                          [ ... ] {product}
GC        uintx QueuedAllocationWarningCount             [ ... ] {product}
GC        uintx SurvivorPadding                          [ ... ] {product}
GC       size_t TLABSize                                 [ ... ] {product}
GC        uintx TLABWasteIncrement                       [ ... ] {product}
COMPILER  uintx TypeProfileLevel                         [ ... ] {pd product}
GC        uintx VerifyGCStartAt                          [ ... ] {diagnostic}
GC       size_t YoungPLABSize                            [ ... ] {product}

Comments
The following also belong to GC: RUNTIME size_t NUMAInterleaveGranularity [ ... ] {product} RUNTIME uintx NUMAPageScanRate [ ... ] {product} RUNTIME size_t NUMASpaceResizeRate [ ... ] {product} RUNTIME uintx ProcessDistributionStride [ ... ] {product} so we're only left with RUNTIME uintx ErrorLogTimeout [ ... ] {product}
10-11-2015

Apparently these also belong to GC team: GC size_t NUMAInterleaveGranularity [ ... ] {product} GC uintx NUMAPageScanRate [ ... ] {product} GC size_t NUMASpaceResizeRate [ ... ] {product} GC uintx ProcessDistributionStride [ ... ] {product} so that leaves us only with 1 flag: RUNTIME uintx ErrorLogTimeout [ ... ] {product} which is a new one.
10-11-2015

Actually all Heap related flags seem to belong to GC: GC size_t ErgoHeapSizeLimit [ ... ] {product} GC size_t HeapBaseMinAddress [ ... ] {pd product} GC size_t LargePageHeapSizeThreshold [ ... ] {product} GC size_t LargePageSizeInBytes [ ... ] {product} GC size_t MaxHeapSize [ ... ] {product} That leaves the Runtime flags with: RUNTIME uintx ErrorLogTimeout [ ... ] {product} RUNTIME size_t NUMAInterleaveGranularity [ ... ] {product} RUNTIME uintx NUMAPageScanRate [ ... ] {product} RUNTIME size_t NUMASpaceResizeRate [ ... ] {product} RUNTIME uintx ProcessDistributionStride [ ... ] {product}
10-11-2015

This issue will cover Runtime flags. The flags with just constraint, but no range, if any should have a default(MIN, MAX) range specified.
09-11-2015

Please split the Compiler and GC issues into separate RFE's.
09-11-2015

??? size_t NUMAInterleaveGranularity [ ... ] {product} ??? uintx NUMAPageScanRate [ ... ] {product} ??? size_t NUMASpaceResizeRate [ ... ] {product} ??? uintx ProcessDistributionStride [ ... ] {product}
06-11-2015

COMPILER intx AllocatePrefetchDistance [ ... ] {product} COMPILER intx AllocatePrefetchInstr [ ... ] {product} COMPILER intx AllocatePrefetchStepSize [ ... ] {product} COMPILER intx CompileThreshold [ ... ] {pd product} COMPILER intx CompilerThreadPriority [ ... ] {product} COMPILER intx InteriorEntryAlignment [ ... ] {C2 pd product} COMPILER intx NodeLimitFudgeFactor [ ... ] {C2 product} COMPILER intx OnStackReplacePercentage [ ... ] {pd product} COMPILER intx OptoLoopAlignment [ ... ] {pd product} COMPILER intx PrintNMethodsAtLevel [ ... ] {diagnostic} COMPILER uintx TypeProfileLevel [ ... ] {pd product}
06-11-2015

GC uintx AdaptiveSizeMajorGCDecayTimeScale [ ... ] {product} GC uintx AdaptiveSizePolicyCollectionCostMargin [ ... ] {product} GC uintx AdaptiveSizePolicyInitializingSteps [ ... ] {product} GC uintx AdaptiveSizePolicyOutputInterval [ ... ] {product} GC uintx AutoGCSelectPauseMillis [ ... ] {product} GC size_t BaseFootPrintEstimate [ ... ] {product} GC uintx CMSAbortablePrecleanMinWorkPerIteration [ ... ] {product} GC uintx CMSClassUnloadingMaxInterval [ ... ] {product} GC uintx CMSCoordinatorYieldSleepCount [ ... ] {product} GC uintx CMSMaxAbortablePrecleanLoops [ ... ] {product} GC uintx CMSOldPLABReactivityFactor [ ... ] {product} GC size_t CMSScheduleRemarkEdenSizeThreshold [ ... ] {product} GC intx CMSWaitDuration [ ... ] {manageable} GC uintx CMSYieldSleepCount [ ... ] {product} GC uintx CMS_FLSPadding [ ... ] {product} GC uintx CMS_SweepPadding [ ... ] {product} GC uintx CMS_SweepTimerThresholdMillis [ ... ] {product} GC uintx CPUForCMSThread [ ... ] {diagnostic} GC uint ConcGCThreads [ ... ] {product} GC intx G1ConcRefinementThresholdStep [ ... ] {product} GC uintx G1MixedGCCountTarget [ ... ] {product} GC uintx GCDrainStackTargetSize [ ... ] {product} GC uintx GCLockerRetryAllocationCount [ ... ] {diagnostic} GC size_t GCLogFileSize [ ... ] {product} GC uintx GCPauseIntervalMillis [ ... ] {product} GC uintx GCTimeRatio [ ... ] {product} GC uintx HeapFirstMaximumCompactionCount [ ... ] {product} GC uintx HeapMaximumCompactionInterval [ ... ] {product} GC size_t InitialHeapSize [ ... ] {product} GC uintx InitialSurvivorRatio [ ... ] {product} GC size_t MarkStackSize [ ... ] {product} GC uintx MaxGCMinorPauseMillis [ ... ] {product} GC size_t MaxMetaspaceExpansion [ ... ] {product} GC size_t MaxMetaspaceSize [ ... ] {product} GC size_t MaxNewSize [ ... ] {product} GC size_t MetaspaceSize [ ... ] {pd product} GC size_t MinHeapDeltaBytes [ ... ] {product} GC size_t MinMetaspaceExpansion [ ... ] {product} GC size_t NewSize [ ... ] {product} GC size_t NewSizeThreadIncrease [ ... ] {pd product} GC uintx NumberOfGCLogFiles [ ... ] {product} GC size_t OldPLABSize [ ... ] {product} GC size_t OldSize [ ... ] {product} GC uintx ParGCDesiredObjsFromOverflowList [ ... ] {product} GC uint ParallelGCThreads [ ... ] {product} GC uintx PausePadding [ ... ] {product} GC intx PrefetchCopyIntervalInBytes [ ... ] {product} GC intx PrefetchFieldsAhead [ ... ] {product} GC intx PrefetchScanIntervalInBytes [ ... ] {product} GC size_t PretenureSizeThreshold [ ... ] {product} GC intx PrintCMSStatistics [ ... ] {product} GC intx PrintFLSCensus [ ... ] {product} GC intx PrintFLSStatistics [ ... ] {product} GC uintx PromotedPadding [ ... ] {product} GC uintx QueuedAllocationWarningCount [ ... ] {product} GC uintx SurvivorPadding [ ... ] {product} GC size_t TLABSize [ ... ] {product} GC uintx TLABWasteIncrement [ ... ] {product} GC uintx VerifyGCStartAt [ ... ] {diagnostic} GC size_t YoungPLABSize [ ... ] {product}
06-11-2015

RUNTIME size_t ErgoHeapSizeLimit [ ... ] {product} RUNTIME uintx ErrorLogTimeout [ ... ] {product} RUNTIME size_t HeapBaseMinAddress [ ... ] {pd product} RUNTIME size_t LargePageHeapSizeThreshold [ ... ] {product} RUNTIME size_t LargePageSizeInBytes [ ... ] {product} RUNTIME size_t MaxHeapSize [ ... ] {product} MaxHeapSize has a constraint constraint(MaxHeapSizeConstraintFunc,AfterErgo)
06-11-2015

Some of these flags have constraints, but not ranges - those probably need trivial ranges(min_value, max_value)
06-11-2015