default Serializable getEffectiveDefaultValue() {
        Optional<String> value = getDefaultValueFromEnvVar();

        if (!value.isPresent() || value.get().isEmpty()) {
            value = getDefaultValueFromSysProp();
        }

        if (!value.isPresent() || value.get().isEmpty()) {
            return getDefaultValue();
        }

        return fromString(value.get(), (Class<? extends Serializable>) getValueType());
    }
Gets effective default value by considering default value defined in system
property and environment variable. It's same as {@link #getDefaultValue()} if
no system property and environment variable defined.

@return effective default value
clickhouse-data/src/main/java/com/clickhouse/config/ClickHouseOption.java