[
https://issues.apache.org/jira/browse/PHOENIX-4489?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Karan Mehta updated PHOENIX-4489:
---------------------------------
Description:
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}}.
[~jmahonin] Any ideas?
[~jamestaylor] [~vincentpoon] Any concerns around this?
was:
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}}.
[~jmahonin] Any ideas?
[~jamestaylor] [~vincentpoon] Any concerns around this?
> HBase Connection leak in Phoenix MR Jobs
> ----------------------------------------
>
> Key: PHOENIX-4489
> URL: https://issues.apache.org/jira/browse/PHOENIX-4489
> Project: Phoenix
> Issue Type: Bug
> Reporter: Karan Mehta
>
> 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}}.
> [~jmahonin] Any ideas?
> [~jamestaylor] [~vincentpoon] Any concerns around this?
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)