This check is here because of the existence of spark.executor.memory. We always set a value of Xmx and Xms when starting executors (a default if no value specified), so this would conflict if the user adds these options.