Phoenix MR jobs uses a custom class PhoenixInputFormat to determine the splits and the parallelism of the work. The class directly opens up a HBase connection, which is not closed after the usage. Independently running MR jobs should not have any concern, however jobs that run through Phoenix-Spark can cause leak issues if this is left unclosed (since those jobs run as a part of same JVM).
Apart from this, the connection should be instantiated with HBaseFactoryProvider.getHConnectionFactory() instead of the default one. It can be useful if a separate client is trying to run jobs and wants to provide a custom implementation of HConnection.