[ https://issues.apache.org/jira/browse/HBASE-19619?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16303061#comment-16303061 ]
Ted Yu commented on HBASE-19619: -------------------------------- If I use the following for creating Map for merging the peer data: {code} data2 = java.util.TreeMap.new(peer_data) {code} I got: {code} Error: ^[[48;5;16;38;5;226;1mtest_update_peer_config:_can_update_peer_config_and_data(Hbase::ReplicationAdminTest)^[[0m: Java::JavaLang::ClassCastException: [B cannot be cast to java.lang.Comparable java.util.TreeMap.compare(java/util/TreeMap.java:1294) java.util.TreeMap.put(java/util/TreeMap.java:538) java.util.AbstractMap.putAll(java/util/AbstractMap.java:281) java.util.TreeMap.putAll(java/util/TreeMap.java:327) java.util.TreeMap.<init>(java/util/TreeMap.java:185) java.lang.reflect.Constructor.newInstance(java/lang/reflect/Constructor.java:423) org.jruby.javasupport.JavaConstructor.newInstanceDirect(org/jruby/javasupport/JavaConstructor.java:278) org.jruby.RubyClass.newInstance(org/jruby/RubyClass.java:1001) org.jruby.RubyClass$INVOKER$i$newInstance.call(org/jruby/RubyClass$INVOKER$i$newInstance.gen) RUBY.update_peer_config(/Users/tyu/trunk/hbase-shell/src/main/ruby/hbase/replication_admin.rb:375) {code} > Modify replication_admin.rb to use ReplicationPeerConfigBuilder > --------------------------------------------------------------- > > Key: HBASE-19619 > URL: https://issues.apache.org/jira/browse/HBASE-19619 > Project: HBase > Issue Type: Bug > Reporter: Ted Yu > Assignee: Ted Yu > Priority: Critical > Attachments: 19619.v1.txt, 19619.v2.txt, 19619.v3.txt > > > Here is the error: > {code} > Error: > test_append_peer_namespaces:_works_with_namespaces_array(Hbase::ReplicationAdminTest): > Java::JavaLang::UnsupportedOperationException: > java.util.Collections$UnmodifiableCollection.add(java/util/Collections.java:1055) > java.lang.reflect.Method.invoke(java/lang/reflect/Method.java:498) > org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(org/jruby/javasupport/JavaMethod.java:453) > org.jruby.javasupport.JavaMethod.invokeDirect(org/jruby/javasupport/JavaMethod.java:314) > RUBY.block in > add_peer_namespaces(/home/jenkins/jenkins-slave/workspace/HBase-Flaky-Tests/hbase-shell/src/main/ruby/hbase/replication_admin.rb:226) > org.jruby.RubyArray.each(org/jruby/RubyArray.java:1734) > org.jruby.RubyArray$INVOKER$i$0$0$each.call(org/jruby/RubyArray$INVOKER$i$0$0$each.gen) > RUBY.add_peer_namespaces(/home/jenkins/jenkins-slave/workspace/HBase-Flaky-Tests/hbase-shell/src/main/ruby/hbase/replication_admin.rb:225) > RUBY.command(/home/jenkins/jenkins-slave/workspace/HBase-Flaky-Tests/hbase-shell/src/main/ruby/shell/commands/append_peer_namespaces.rb:40) > org.jruby.RubyClass.finvoke(org/jruby/RubyClass.java:522) > {code} > The cause was due to adding to UnmodifiableCollection -- This message was sent by Atlassian JIRA (v6.4.14#64029)