[
https://issues.apache.org/jira/browse/HBASE-27657?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bryan Beaudreault reopened HBASE-27657:
---------------------------------------
Assignee: Bryan Beaudreault (was: Ray Mattingly)
Reopening for addendum. We accidentally dropped the following method from
ConnectionFactory:
{code:java}
ConnectionFactory.createConnection ( Configuration conf, ExecutorService pool,
User user ) [static] : Connection {code}
> Connection and Request Attributes
> ---------------------------------
>
> Key: HBASE-27657
> URL: https://issues.apache.org/jira/browse/HBASE-27657
> Project: HBase
> Issue Type: New Feature
> Reporter: Bryan Beaudreault
> Assignee: Bryan Beaudreault
> Priority: Major
> Fix For: 2.6.0, 3.0.0-beta-1
>
>
> Currently we have the ability to set Operation attributes, via
> Get.setAttribute, etc. It would be useful to be able to set attributes at the
> request and connection level.
> These levels can result in less duplication. For example, send some
> attributes once per connection instead of for every one of the millions of
> requests a connection might send. Or send once for the request, instead of
> duplicating on every operation in a multi request.
> Additionally, the Connection and RequestHeader are more globally available on
> the server side. Both can be accessed via RpcServer.getCurrentCall(), which
> is useful in various integration points – coprocessors, custom queues,
> quotas, slow log, etc. Operation attributes are harder to access because you
> need to parse the raw Message into the appropriate type to get access to the
> getter.
> I was thinking adding two new methods to Connection interface:
> - setAttribute (and getAttribute/getAttributes)
> - setRequestAttributeProvider
> Any Connection attributes would be set onto the ConnectionHeader during
> initialization. The RequestAttributeProvider would be called when creating
> each RequestHeader.
> An alternative to setRequestAttributeProvider would be to add this into
> HBaseRpcController, which can already be customized via site configuration.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)