[jira] [Updated] (HBASE-18359) CoprocessorHConnection#getConnectionForEnvironment should read config from CoprocessorEnvironment

2018-04-30 Thread stack (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-18359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-18359:
--
Fix Version/s: (was: 2.0.0)
   3.0.0

> CoprocessorHConnection#getConnectionForEnvironment should read config from 
> CoprocessorEnvironment
> -
>
> Key: HBASE-18359
> URL: https://issues.apache.org/jira/browse/HBASE-18359
> Project: HBase
>  Issue Type: Bug
>Reporter: Samarth Jain
>Priority: Major
> Fix For: 3.0.0
>
>
> It seems like the method getConnectionForEnvironment isn't doing the right 
> thing when it is creating a CoprocessorHConnection by reading the config from 
> HRegionServer and not from the env passed in. 
> If coprocessors want to use a CoprocessorHConnection with some custom config 
> settings, then they have no option but to configure it in the hbase-site.xml 
> of the region servers. This isn't ideal as a lot of times these "global" 
> level configs can have side effects. See PHOENIX-3974 as an example where 
> configuring ServerRpcControllerFactory (a Phoenix implementation of 
> RpcControllerFactory) could result in deadlocks. Or PHOENIX-3983 where 
> presence of this global config causes our index rebuild code to incorrectly 
> use handlers it shouldn't.
> If the CoprocessorHConnection created through getConnectionForEnvironment API 
> used the CoprocessorEnvironment config, then it would allow co-processors to 
> pass in their own config without needing to configure them in hbase-site.xml. 
> The change would be simple. Basically change the below
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection((HRegionServer) services);
> }
> {code}
> to
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection(env.getConfiguration(), 
> (HRegionServer) services);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Updated] (HBASE-18359) CoprocessorHConnection#getConnectionForEnvironment should read config from CoprocessorEnvironment

2017-11-16 Thread stack (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-18359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-18359:
--
Fix Version/s: (was: 2.0.0-beta-1)
   2.0.0

> CoprocessorHConnection#getConnectionForEnvironment should read config from 
> CoprocessorEnvironment
> -
>
> Key: HBASE-18359
> URL: https://issues.apache.org/jira/browse/HBASE-18359
> Project: HBase
>  Issue Type: Bug
>Reporter: Samarth Jain
> Fix For: 2.0.0
>
>
> It seems like the method getConnectionForEnvironment isn't doing the right 
> thing when it is creating a CoprocessorHConnection by reading the config from 
> HRegionServer and not from the env passed in. 
> If coprocessors want to use a CoprocessorHConnection with some custom config 
> settings, then they have no option but to configure it in the hbase-site.xml 
> of the region servers. This isn't ideal as a lot of times these "global" 
> level configs can have side effects. See PHOENIX-3974 as an example where 
> configuring ServerRpcControllerFactory (a Phoenix implementation of 
> RpcControllerFactory) could result in deadlocks. Or PHOENIX-3983 where 
> presence of this global config causes our index rebuild code to incorrectly 
> use handlers it shouldn't.
> If the CoprocessorHConnection created through getConnectionForEnvironment API 
> used the CoprocessorEnvironment config, then it would allow co-processors to 
> pass in their own config without needing to configure them in hbase-site.xml. 
> The change would be simple. Basically change the below
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection((HRegionServer) services);
> }
> {code}
> to
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection(env.getConfiguration(), 
> (HRegionServer) services);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (HBASE-18359) CoprocessorHConnection#getConnectionForEnvironment should read config from CoprocessorEnvironment

2017-11-16 Thread stack (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-18359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

stack updated HBASE-18359:
--
Fix Version/s: 2.0.0-beta-1

> CoprocessorHConnection#getConnectionForEnvironment should read config from 
> CoprocessorEnvironment
> -
>
> Key: HBASE-18359
> URL: https://issues.apache.org/jira/browse/HBASE-18359
> Project: HBase
>  Issue Type: Bug
>Reporter: Samarth Jain
> Fix For: 2.0.0-beta-1
>
>
> It seems like the method getConnectionForEnvironment isn't doing the right 
> thing when it is creating a CoprocessorHConnection by reading the config from 
> HRegionServer and not from the env passed in. 
> If coprocessors want to use a CoprocessorHConnection with some custom config 
> settings, then they have no option but to configure it in the hbase-site.xml 
> of the region servers. This isn't ideal as a lot of times these "global" 
> level configs can have side effects. See PHOENIX-3974 as an example where 
> configuring ServerRpcControllerFactory (a Phoenix implementation of 
> RpcControllerFactory) could result in deadlocks. Or PHOENIX-3983 where 
> presence of this global config causes our index rebuild code to incorrectly 
> use handlers it shouldn't.
> If the CoprocessorHConnection created through getConnectionForEnvironment API 
> used the CoprocessorEnvironment config, then it would allow co-processors to 
> pass in their own config without needing to configure them in hbase-site.xml. 
> The change would be simple. Basically change the below
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection((HRegionServer) services);
> }
> {code}
> to
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection(env.getConfiguration(), 
> (HRegionServer) services);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Updated] (HBASE-18359) CoprocessorHConnection#getConnectionForEnvironment should read config from CoprocessorEnvironment

2017-07-10 Thread Samarth Jain (JIRA)

 [ 
https://issues.apache.org/jira/browse/HBASE-18359?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Samarth Jain updated HBASE-18359:
-
Summary: CoprocessorHConnection#getConnectionForEnvironment should read 
config from CoprocessorEnvironment  (was: 
CoprocessorHConnection#getConnectionForEnvironment should read config from 
CoprocessorEnvironment from CoporcessorEnvironment)

> CoprocessorHConnection#getConnectionForEnvironment should read config from 
> CoprocessorEnvironment
> -
>
> Key: HBASE-18359
> URL: https://issues.apache.org/jira/browse/HBASE-18359
> Project: HBase
>  Issue Type: Bug
>Reporter: Samarth Jain
>
> It seems like the method getConnectionForEnvironment isn't doing the right 
> thing when it is creating a CoprocessorHConnection by reading the config from 
> HRegionServer and not from the env passed in. 
> If coprocessors want to use a CoprocessorHConnection with some custom config 
> settings, then they have no option but to configure it in the hbase-site.xml 
> of the region servers. This isn't ideal as a lot of times these "global" 
> level configs can have side effects. See PHOENIX-3974 as an example where 
> configuring ServerRpcControllerFactory (a Phoenix implementation of 
> RpcControllerFactory) could result in deadlocks. Or PHOENIX-3983 where 
> presence of this global config causes our index rebuild code to incorrectly 
> use handlers it shouldn't.
> If the CoprocessorHConnection created through getConnectionForEnvironment API 
> used the CoprocessorEnvironment config, then it would allow co-processors to 
> pass in their own config without needing to configure them in hbase-site.xml. 
> The change would be simple. Basically change the below
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection((HRegionServer) services);
> }
> {code}
> to
> {code}
> if (services instanceof HRegionServer) {
> return new CoprocessorHConnection(env.getConfiguration(), 
> (HRegionServer) services);
> }
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)