Hello, Igniters.

For now, we have dozens of the `IgniteSystemProperties` [1]  that can tweak 
Ignite behaviour in the very wide limits.
But, the issue, for the administrator is the following

- Documentation about existing properties can be outdated.
- The only place of the truth is the source code.
- It’s hard to understand what flag is supported in what version.

I propose to implement output of all available properties with it’s 
descriptions in the `ignite.sh -X` command.

Example of the JVM output:

```
[16:25:49]~/src/ignite:[master]$ java -X

    -Xbatch           disable background compilation
    -Xbootclasspath/a:<directories and zip/jar files separated by :>
                      append to end of bootstrap class path
    -Xcheck:jni       perform additional checks for JNI functions
    -Xcomp            forces compilation of methods on first invocation
    -Xdebug           provided for backward compatibility
    -Xdiag            show additional diagnostic messages
    -Xfuture          enable strictest checks, anticipating future default
    -Xint             interpreted mode execution only
    -Xinternalversion
                      displays more detailed JVM version information than the

[16:28:45]~/src/ignite:[master]$ java -XX:+UnlockDiagnosticVMOptions 
-XX:+PrintFlagsFinal -version

[Global flags]
ccstrlist AOTLibrary                               =                            
               {product} {default}
     bool AbortVMOnCompilationFailure              = false                      
            {diagnostic} {default}
    ccstr AbortVMOnException                       =                            
            {diagnostic} {default}
    ccstr AbortVMOnExceptionMessage                =                            
            {diagnostic} {default}
     bool AbortVMOnSafepointTimeout                = false                      
            {diagnostic} {default}
     bool AbortVMOnVMOperationTimeout              = false                      
            {diagnostic} {default}
     intx AbortVMOnVMOperationTimeoutDelay         = 1000                       
            {diagnostic} {default}
      int ActiveProcessorCount                     = -1                         
               {product} {default}

```

Example of the Ignite output:

````
> ignite.sh -X
IGNITE_CONFIG_URL                                                               
-       System property to hold optional configuration URL.
IGNITE_SSH_HOST                                                         -       
System property to hold SSH host for visor-started nodes.
IGNITE_MIN_BUFFERED_COMMUNICATION_MSG_CNT       -       [DEPRECATED] System 
property to disable buffered communication if node sends less messages count 
than specified by this property. Default value is {@code 512}.

…

```

WDYT?

[1] 
https://github.com/apache/ignite/blob/master/modules/core/src/main/java/org/apache/ignite/IgniteSystemProperties.java#L56

Reply via email to