default <T> T getEffectiveValue(T value) {
        @SuppressWarnings("unchecked")
        T result = value == null ? (T) getEffectiveDefaultValue() : value;
        return result;
    }
Gets effective value by considering default value defined in system property
and environment variable. It's same as {@link #getDefaultValue()} if the
given value is null and no system property and environment variable defined.

@param <T>   type of the value
@param value default value
@return effective value
clickhouse-data/src/main/java/com/clickhouse/config/ClickHouseOption.java