You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Keith Turner (JIRA)" <ji...@apache.org> on 2014/02/19 17:49:20 UTC
[jira] [Commented] (ACCUMULO-2362) Reduce blocking in client API
(Tables)
[ https://issues.apache.org/jira/browse/ACCUMULO-2362?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13905664#comment-13905664 ]
Keith Turner commented on ACCUMULO-2362:
----------------------------------------
I think a first step on this issue would be to create some test code that
creates many client threads accessing Accumulo and see what problems arise.
> Reduce blocking in client API (Tables)
> --------------------------------------
>
> Key: ACCUMULO-2362
> URL: https://issues.apache.org/jira/browse/ACCUMULO-2362
> Project: Accumulo
> Issue Type: New Feature
> Components: client
> Affects Versions: 1.4.4, 1.5.0
> Reporter: Josh Elser
> Fix For: 1.7.0
>
>
> Presently, the {{Tables}} class contains a static map of instance to ZooCache that *many* of the classes in the client API use. The problem with this is that many of the methods on ZooCache ultimately are synchronized. When multiple threads using Connectors, TableOperations, Scanners/BatchScanners, and BatchWriters against the same Accumulo instance, you currently have a massive synchronization problem.
> We should give some thought to heavy, concurrent access to Accumulo client API calls within the same JVM. Consideration should also be given to the consistency of wrapping zookeeper with a cache like is presently done.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)