[ 
https://issues.apache.org/jira/browse/HBASE-4835?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13154790#comment-13154790
 ] 

stack commented on HBASE-4835:
------------------------------

There's a few per JVM:

{code}
src/main/java/org/apache/hadoop/hbase/master/HMaster.java:    this.zooKeeper = 
new ZooKeeperWatcher(conf, MASTER + ":" + isa.getPort(), this, true);
src/main/java/org/apache/hadoop/hbase/master/HMaster.java:    this.zooKeeper = 
new ZooKeeperWatcher(conf, MASTER + ":"
src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java:    
this.zooKeeper = new ZooKeeperWatcher(conf, REGIONSERVER + ":" +
src/main/java/org/apache/hadoop/hbase/replication/master/ReplicationLogCleaner.java:
          new ZooKeeperWatcher(this.conf, "replicationLogCleaner", null);
src/main/java/org/apache/hadoop/hbase/replication/ReplicationPeer.java:    zkw 
= new ZooKeeperWatcher(conf,
src/main/java/org/apache/hadoop/hbase/catalog/CatalogTracker.java:        new 
ZooKeeperWatcher(conf, "catalogtracker-on-" + connection.toString(),
src/main/java/org/apache/hadoop/hbase/client/HConnectionManager.java:          
this.zooKeeper = new ZooKeeperWatcher(conf, "hconnection", this);
{code}

When you say:

bq. The concern I have about cloning in makeZKProps is the same hashmap 
iteration will happen for that.

You are afraid that the clone is not a deep clone so we'll just be iterating 
the same map of configuration items?

That seems valid enough though why won't we have same issue if we make a clone 
in ZKW?

I'm wary cloning Configuration.   I did that 'fixing' our issues w/ tests where 
we were sharing an HConnection and I manufactured the issue where we had too 
many connections against the zk ensemble.

Odd we see this now.

                
> ConcurrentModificationException out of ZKConfig.makeZKProps
> -----------------------------------------------------------
>
>                 Key: HBASE-4835
>                 URL: https://issues.apache.org/jira/browse/HBASE-4835
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.92.0, 0.94.0
>            Reporter: Andrew Purtell
>            Assignee: Andrew Purtell
>         Attachments: HBASE-4835.patch
>
>
> Mikhail reported this from a five-node, three-RS cluster test:
> {code}
> 2011-11-21 01:30:15,188 FATAL 
> org.apache.hadoop.hbase.regionserver.HRegionServer: ABORTING region server 
> <machine_name>,60020,1321867814890: Initialization of RS failed. Hence 
> aborting RS.
> java.util.ConcurrentModificationException
> at java.util.Hashtable$Enumerator.next(Hashtable.java:1031)
> at org.apache.hadoop.conf.Configuration.iterator(Configuration.java:1042)
> at org.apache.hadoop.hbase.zookeeper.ZKConfig.makeZKProps(ZKConfig.java:75)
> at 
> org.apache.hadoop.hbase.zookeeper.ZKConfig.getZKQuorumServersString(ZKConfig.java:245)
> at 
> org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher.<init>(ZooKeeperWatcher.java:144)
> at 
> org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher.<init>(ZooKeeperWatcher.java:124)
> at 
> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getZooKeeperWatcher(HConnectionManager.java:1262)
> at 
> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.setupZookeeperTrackers(HConnectionManager.java:568)
> at 
> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.<init>(HConnectionManager.java:559)
> at 
> org.apache.hadoop.hbase.client.HConnectionManager.getConnection(HConnectionManager.java:183)
> at 
> org.apache.hadoop.hbase.catalog.CatalogTracker.<init>(CatalogTracker.java:177)
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer.initializeZooKeeper(HRegionServer.java:575)
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer.preRegistrationInitialization(HRegionServer.java:534)
> at 
> org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:642)
> at java.lang.Thread.run(Thread.java:619)
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to