[jira] [Commented] (RATIS-827) Ratis example is leaking to the ratis-tools classpath
[ https://issues.apache.org/jira/browse/RATIS-827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17060493#comment-17060493 ] Xiaoyu Yao commented on RATIS-827: -- LGTM, +1. Thanks [~elek] for reporting the issue and providing the fix. > Ratis example is leaking to the ratis-tools classpath > - > > Key: RATIS-827 > URL: https://issues.apache.org/jira/browse/RATIS-827 > Project: Ratis > Issue Type: Improvement >Reporter: Marton Elek >Assignee: Marton Elek >Priority: Critical > Attachments: RATIS-827.001.patch, RATIS-827.002.patch, > RATIS-827.003.patch > > > ratis-tools depends on ratis-example project which means that all the > projects using ratis-tools can get unexpected dependencies from the example > project: > For example I see the following ozone. > {code} > SLF4J: Class path contains multiple SLF4J bindings. > SLF4J: Found binding in > [jar:file:/opt/hadoop/share/ozone/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] > SLF4J: Found binding in > [jar:file:/opt/hadoop/share/ozone/lib/ratis-examples-0.6.0-a320ae0-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] > SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an > explanation. > SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] > {code} > I propose to move the example dependent tools implementation to the example > project and make the example project depends on the tools instead of the > opposite direction. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Assigned] (RATIS-828) Logs cluttered by AlreadyExistsException
[ https://issues.apache.org/jira/browse/RATIS-828?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Siddharth Wagle reassigned RATIS-828: - Assignee: Siddharth Wagle > Logs cluttered by AlreadyExistsException > > > Key: RATIS-828 > URL: https://issues.apache.org/jira/browse/RATIS-828 > Project: Ratis > Issue Type: Wish > Components: server >Reporter: Attila Doroszlai >Assignee: Siddharth Wagle >Priority: Major > > Follow-up for HDDS-3148: > Ozone startup logs are cluttered by printing stack trace of > AlreadyExistsException related to group addition. Example: > {code} > 2020-03-09 13:53:01,563 [grpc-default-executor-0] WARN impl.RaftServerProxy > (RaftServerProxy.java:lambda$groupAddAsync$11(390)) - > 7a07f161-9144-44b2-8baa-73f0e9299675: Failed groupAdd* > GroupManagementRequest:client-27FB1A91809E->7a07f161-9144-44b2-8baa-73f0e9299675@group-E151028E3AC0, > cid=2, seq=0, RW, null, > Add:group-E151028E3AC0:[18f4e257-bf09-482e-b1bb-a2408a093ff7:172.17.0.2:43845, > 7a07f161-9144-44b2-8baa-73f0e9299675:172.17.0.2:41551, > 8a66c80e-ab55-4975-92a9-8aaf06ab418a:172.17.0.2:36921] > java.util.concurrent.CompletionException: > org.apache.ratis.protocol.AlreadyExistsException: > 7a07f161-9144-44b2-8baa-73f0e9299675: Failed to add > group-E151028E3AC0:[18f4e257-bf09-482e-b1bb-a2408a093ff7:172.17.0.2:43845, > 7a07f161-9144-44b2-8baa-73f0e9299675:172.17.0.2:41551, > 8a66c80e-ab55-4975-92a9-8aaf06ab418a:172.17.0.2:36921] since the group > already exists in the map. > at > java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:292) > at > java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:308) > at > java.util.concurrent.CompletableFuture.uniApply(CompletableFuture.java:607) > at > java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:591) > at > java.util.concurrent.CompletableFuture.uniApplyStage(CompletableFuture.java:631) > at > java.util.concurrent.CompletableFuture.thenApplyAsync(CompletableFuture.java:2006) > at > org.apache.ratis.server.impl.RaftServerProxy.groupAddAsync(RaftServerProxy.java:379) > at > org.apache.ratis.server.impl.RaftServerProxy.groupManagementAsync(RaftServerProxy.java:363) > at > org.apache.ratis.grpc.server.GrpcAdminProtocolService.lambda$groupManagement$0(GrpcAdminProtocolService.java:42) > at org.apache.ratis.grpc.GrpcUtil.asyncCall(GrpcUtil.java:160) > at > org.apache.ratis.grpc.server.GrpcAdminProtocolService.groupManagement(GrpcAdminProtocolService.java:42) > at > org.apache.ratis.proto.grpc.AdminProtocolServiceGrpc$MethodHandlers.invoke(AdminProtocolServiceGrpc.java:358) > at > org.apache.ratis.thirdparty.io.grpc.stub.ServerCalls$UnaryServerCallHandler$UnaryServerCallListener.onHalfClose(ServerCalls.java:172) > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerCallImpl$ServerStreamListenerImpl.halfClosed(ServerCallImpl.java:331) > at > org.apache.ratis.thirdparty.io.grpc.internal.ServerImpl$JumpToApplicationThreadServerStreamListener$1HalfClosed.runInContext(ServerImpl.java:814) > at > org.apache.ratis.thirdparty.io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) > at > org.apache.ratis.thirdparty.io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: org.apache.ratis.protocol.AlreadyExistsException: > 7a07f161-9144-44b2-8baa-73f0e9299675: Failed to add > group-E151028E3AC0:[18f4e257-bf09-482e-b1bb-a2408a093ff7:172.17.0.2:43845, > 7a07f161-9144-44b2-8baa-73f0e9299675:172.17.0.2:41551, > 8a66c80e-ab55-4975-92a9-8aaf06ab418a:172.17.0.2:36921] since the group > already exists in the map. > at > org.apache.ratis.server.impl.RaftServerProxy$ImplMap.addNew(RaftServerProxy.java:83) > at > org.apache.ratis.server.impl.RaftServerProxy.groupAddAsync(RaftServerProxy.java:378) > ... 13 more > {code} > Since these are "normal", I think stack trace should be suppressed. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (RATIS-827) Ratis example is leaking to the ratis-tools classpath
[ https://issues.apache.org/jira/browse/RATIS-827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17060197#comment-17060197 ] Hadoop QA commented on RATIS-827: - | (x) *{color:red}-1 overall{color}* | \\ \\ || Vote || Subsystem || Runtime || Comment || | {color:blue}0{color} | {color:blue} reexec {color} | {color:blue} 2m 45s{color} | {color:blue} Docker mode activated. {color} | || || || || {color:brown} Prechecks {color} || | {color:blue}0{color} | {color:blue} findbugs {color} | {color:blue} 0m 0s{color} | {color:blue} Findbugs executables are not available. {color} | | {color:green}+1{color} | {color:green} @author {color} | {color:green} 0m 0s{color} | {color:green} The patch does not contain any @author tags. {color} | | {color:green}+1{color} | {color:green} test4tests {color} | {color:green} 0m 0s{color} | {color:green} The patch appears to include 2 new or modified test files. {color} | || || || || {color:brown} master Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 1m 1s{color} | {color:blue} Maven dependency ordering for branch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 3m 51s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 55s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 18s{color} | {color:green} master passed {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 44s{color} | {color:green} master passed {color} | || || || || {color:brown} Patch Compile Tests {color} || | {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue} 0m 6s{color} | {color:blue} Maven dependency ordering for patch {color} | | {color:green}+1{color} | {color:green} mvninstall {color} | {color:green} 0m 57s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} compile {color} | {color:green} 0m 53s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} javac {color} | {color:green} 0m 53s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} checkstyle {color} | {color:green} 0m 10s{color} | {color:green} the patch passed {color} | | {color:green}+1{color} | {color:green} whitespace {color} | {color:green} 0m 0s{color} | {color:green} The patch has no whitespace issues. {color} | | {color:green}+1{color} | {color:green} xml {color} | {color:green} 0m 3s{color} | {color:green} The patch has no ill-formed XML file. {color} | | {color:green}+1{color} | {color:green} javadoc {color} | {color:green} 0m 38s{color} | {color:green} the patch passed {color} | || || || || {color:brown} Other Tests {color} || | {color:red}-1{color} | {color:red} unit {color} | {color:red} 18m 23s{color} | {color:red} root in the patch failed. {color} | | {color:green}+1{color} | {color:green} asflicense {color} | {color:green} 0m 21s{color} | {color:green} The patch does not generate ASF License warnings. {color} | | {color:black}{color} | {color:black} {color} | {color:black} 31m 23s{color} | {color:black} {color} | \\ \\ || Reason || Tests || | Failed junit tests | ratis.logservice.server.TestMetaServer | | | ratis.TestMultiRaftGroup | | | ratis.examples.filestore.TestFileStoreWithNetty | | | ratis.netty.TestRaftStateMachineExceptionWithNetty | | | ratis.grpc.TestWatchRequestWithGrpc | | | ratis.netty.TestRaftSnapshotWithNetty | | | ratis.netty.TestRaftReconfigurationWithNetty | | | ratis.grpc.TestRaftSnapshotWithGrpc | | | ratis.netty.TestRaftExceptionWithNetty | | | ratis.server.simulation.TestRaftSnapshotWithSimulatedRpc | | | ratis.netty.TestGroupManagementWithNetty | | | ratis.netty.TestRaftWithNetty | \\ \\ || Subsystem || Report/Notes || | Docker | Client=19.03.8 Server=19.03.8 Image:yetus/ratis:date2020-03-16 | | JIRA Issue | RATIS-827 | | JIRA Patch URL | https://issues.apache.org/jira/secure/attachment/12996825/RATIS-827.003.patch | | Optional Tests | dupname asflicense javac javadoc unit xml compile findbugs checkstyle | | uname | Linux 236e9f42a213 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux | | Build tool | maven | | Personality | /home/jenkins/jenkins-slave/workspace/PreCommit-RATIS-Build/yetus-personality.sh | | git revision | master / 636239f | | maven | version: Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f) | | Default Java | 1.8.0_242 | | unit | https://builds.apache.org/job/PreCommit-RATIS-Build/1261/artifact/out/patch-unit-root.txt | | Test Results | https://builds.apache.org/job/PreCommit-RATIS-Build/1261/testReport/ | | Max. process+thread count | 1114 (vs. ulimit of 5000) | | modules | C: ratis-tools ratis-examples U: .
[jira] [Updated] (RATIS-827) Ratis example is leaking to the ratis-tools classpath
[ https://issues.apache.org/jira/browse/RATIS-827?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Marton Elek updated RATIS-827: -- Attachment: RATIS-827.003.patch > Ratis example is leaking to the ratis-tools classpath > - > > Key: RATIS-827 > URL: https://issues.apache.org/jira/browse/RATIS-827 > Project: Ratis > Issue Type: Improvement >Reporter: Marton Elek >Assignee: Marton Elek >Priority: Critical > Attachments: RATIS-827.001.patch, RATIS-827.002.patch, > RATIS-827.003.patch > > > ratis-tools depends on ratis-example project which means that all the > projects using ratis-tools can get unexpected dependencies from the example > project: > For example I see the following ozone. > {code} > SLF4J: Class path contains multiple SLF4J bindings. > SLF4J: Found binding in > [jar:file:/opt/hadoop/share/ozone/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] > SLF4J: Found binding in > [jar:file:/opt/hadoop/share/ozone/lib/ratis-examples-0.6.0-a320ae0-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] > SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an > explanation. > SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] > {code} > I propose to move the example dependent tools implementation to the example > project and make the example project depends on the tools instead of the > opposite direction. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (RATIS-827) Ratis example is leaking to the ratis-tools classpath
[ https://issues.apache.org/jira/browse/RATIS-827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17060114#comment-17060114 ] Lokesh Jain commented on RATIS-827: --- [~elek] The patch needs to be rebased. > Ratis example is leaking to the ratis-tools classpath > - > > Key: RATIS-827 > URL: https://issues.apache.org/jira/browse/RATIS-827 > Project: Ratis > Issue Type: Improvement >Reporter: Marton Elek >Assignee: Marton Elek >Priority: Critical > Attachments: RATIS-827.001.patch, RATIS-827.002.patch > > > ratis-tools depends on ratis-example project which means that all the > projects using ratis-tools can get unexpected dependencies from the example > project: > For example I see the following ozone. > {code} > SLF4J: Class path contains multiple SLF4J bindings. > SLF4J: Found binding in > [jar:file:/opt/hadoop/share/ozone/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class] > SLF4J: Found binding in > [jar:file:/opt/hadoop/share/ozone/lib/ratis-examples-0.6.0-a320ae0-SNAPSHOT.jar!/org/slf4j/impl/StaticLoggerBinder.class] > SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an > explanation. > SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory] > {code} > I propose to move the example dependent tools implementation to the example > project and make the example project depends on the tools instead of the > opposite direction. -- This message was sent by Atlassian Jira (v8.3.4#803005)