[jira] [Commented] (RATIS-714) Limit the byte size used by the message in pending requests

2019-10-24 Thread Hadoop QA (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959257#comment-16959257
 ] 

Hadoop QA commented on RATIS-714:
-

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue}  0m 
17s{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 1 new or modified test 
files. {color} |
|| || || || {color:brown} master Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  1m  
8s{color} | {color:blue} Maven dependency ordering for branch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  2m 
13s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
50s{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 
40s{color} | {color:green} master passed {color} |
|| || || || {color:brown} Patch Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m  
5s{color} | {color:blue} Maven dependency ordering for patch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  0m 
55s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
50s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  0m 
50s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  0m 
11s{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} javadoc {color} | {color:green}  0m 
34s{color} | {color:green} the patch passed {color} |
|| || || || {color:brown} Other Tests {color} ||
| {color:red}-1{color} | {color:red} unit {color} | {color:red} 18m 11s{color} 
| {color:red} root in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green}  0m 
17s{color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 26m 45s{color} | 
{color:black} {color} |
\\
\\
|| Reason || Tests ||
| Failed junit tests | ratis.logservice.server.TestMetaServer |
|   | ratis.grpc.TestRaftAsyncWithGrpc |
|   | ratis.server.simulation.TestLogAppenderWithSimulatedRpc |
|   | ratis.grpc.TestWatchRequestWithGrpc |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=19.03.4 Server=19.03.4 Image:yetus/ratis:date2019-10-24 |
| JIRA Issue | RATIS-714 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12983964/r714_20191024.patch |
| Optional Tests |  dupname  asflicense  javac  javadoc  unit  findbugs  
checkstyle  compile  |
| uname | Linux a090dac63297 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 
05:24:09 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 / d6d58d0 |
| maven | version: Apache Maven 3.6.2 
(40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T15:06:16Z) |
| Default Java | 1.8.0_222 |
| unit | 
https://builds.apache.org/job/PreCommit-RATIS-Build/1108/artifact/out/patch-unit-root.txt
 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-RATIS-Build/1108/testReport/ |
| Max. process+thread count | 2394 (vs. ulimit of 5000) |
| modules | C: ratis-common ratis-server ratis-test U: . |
| Console output | 
https://builds.apache.org/job/PreCommit-RATIS-Build/1108/console |
| Powered by | Apache Yetus 0.8.0   http://yetus.apache.org |


This message was automatically generated.



> Limit the byte size used by the message in pending requests
> ---
>
> Key: RATIS-714
> URL: https://issues.apache.org/jira/browse/RATIS-714
> Project: Ratis
>  Issue Type: Improvement
>  

[jira] [Commented] (RATIS-714) Limit the byte size used by the message in pending requests

2019-10-24 Thread Tsz-wo Sze (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-714?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959232#comment-16959232
 ] 

Tsz-wo Sze commented on RATIS-714:
--

r714_20191024.patch: adds a test.

> Limit the byte size used by the message in pending requests
> ---
>
> Key: RATIS-714
> URL: https://issues.apache.org/jira/browse/RATIS-714
> Project: Ratis
>  Issue Type: Improvement
>  Components: server
>Reporter: Tsz-wo Sze
>Assignee: Tsz-wo Sze
>Priority: Major
> Attachments: r714_20191014.patch, r714_20191024.patch
>
>
> In PendingRequests, the number of outstanding requests is limited but the 
> byte size is not.   The byte size should also be limited in order to avoid 
> out of memory.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (RATIS-714) Limit the byte size used by the message in pending requests

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-714?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze updated RATIS-714:
-
Attachment: r714_20191024.patch

> Limit the byte size used by the message in pending requests
> ---
>
> Key: RATIS-714
> URL: https://issues.apache.org/jira/browse/RATIS-714
> Project: Ratis
>  Issue Type: Improvement
>  Components: server
>Reporter: Tsz-wo Sze
>Assignee: Tsz-wo Sze
>Priority: Major
> Attachments: r714_20191014.patch, r714_20191024.patch
>
>
> In PendingRequests, the number of outstanding requests is limited but the 
> byte size is not.   The byte size should also be limited in order to avoid 
> out of memory.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (RATIS-696) RaftStorageDirectory.getLogSegmentFiles throws a deep IOException

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze updated RATIS-696:
-
Component/s: server

> RaftStorageDirectory.getLogSegmentFiles throws a deep IOException
> -
>
> Key: RATIS-696
> URL: https://issues.apache.org/jira/browse/RATIS-696
> Project: Ratis
>  Issue Type: Sub-task
>  Components: server
>Reporter: Clay B.
>Assignee: Tsz-wo Sze
>Priority: Major
> Attachments: r696_20191002.patch, r696_20191002b.patch, 
> r696_20191002c.patch, r696_20191024.patch
>
>
> In {{RaftStorageDirectory.getLogSegmentFiles()}} one can hang while creating 
> a {{Files.newDirectoryStream}}. If one gets an {{IOException}} the server 
> will simply hang at this point.
> {code:java}
> Exception in thread "main" java.nio.file.FileSystemException: 
> /home/vagrant/test_data/data2_slowed/64656d6f-5261-6674-4772-6f7570313233/current:
>  Input/output error
> at 
> sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
> at 
> sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
> at 
> sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
> at 
> sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:427)
> at java.nio.file.Files.newDirectoryStream(Files.java:457)
> at 
> org.apache.ratis.server.storage.RaftStorageDirectory.getLogSegmentFiles(RaftStorageDirectory.java:200)
> at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.loadLogSegments(SegmentedRaftLog.java:223)
> at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.openImpl(SegmentedRaftLog.java:204)
> at org.apache.ratis.server.raftlog.RaftLog.open(RaftLog.java:247)
> at 
> org.apache.ratis.server.impl.ServerState.initRaftLog(ServerState.java:191)
> at 
> org.apache.ratis.server.impl.ServerState.(ServerState.java:121)
> at 
> org.apache.ratis.server.impl.RaftServerImpl.(RaftServerImpl.java:110)
> at 
> org.apache.ratis.server.impl.RaftServerProxy.lambda$newRaftServerImpl$2(RaftServerProxy.java:208)
> at 
> java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
> 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) {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-708) Benchmark for toRaftClientRequestProto

2019-10-24 Thread Jitendra Nath Pandey (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-708?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959193#comment-16959193
 ] 

Jitendra Nath Pandey commented on RATIS-708:


+1 for the patch if test failures are not related.

> Benchmark for toRaftClientRequestProto
> --
>
> Key: RATIS-708
> URL: https://issues.apache.org/jira/browse/RATIS-708
> Project: Ratis
>  Issue Type: Test
>  Components: client
>Affects Versions: 0.4.0
>Reporter: Mukul Kumar Singh
>Assignee: Tsz-wo Sze
>Priority: Minor
> Attachments: r708_20191014.patch
>
>
> ClientProtoUtils#toRaftClientRequestProto in the profiling is taking a lot of 
> time to process.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (RATIS-708) Benchmark for toRaftClientRequestProto

2019-10-24 Thread Jitendra Nath Pandey (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jitendra Nath Pandey updated RATIS-708:
---
Summary: Benchmark for toRaftClientRequestProto  (was: 
ClientProtoUtils#toRaftClientRequestProto for Ozone takes close to 36ms)

> Benchmark for toRaftClientRequestProto
> --
>
> Key: RATIS-708
> URL: https://issues.apache.org/jira/browse/RATIS-708
> Project: Ratis
>  Issue Type: Test
>  Components: client
>Affects Versions: 0.4.0
>Reporter: Mukul Kumar Singh
>Assignee: Tsz-wo Sze
>Priority: Minor
> Attachments: r708_20191014.patch
>
>
> ClientProtoUtils#toRaftClientRequestProto in the profiling is taking a lot of 
> time to process.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Reopened] (RATIS-734) TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze reopened RATIS-734:
--

> TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s
> -
>
> Key: RATIS-734
> URL: https://issues.apache.org/jira/browse/RATIS-734
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (RATIS-734) TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze resolved RATIS-734.
--
Resolution: Duplicate

> TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s
> -
>
> Key: RATIS-734
> URL: https://issues.apache.org/jira/browse/RATIS-734
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Reopened] (RATIS-734) TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze reopened RATIS-734:
--

> TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s
> -
>
> Key: RATIS-734
> URL: https://issues.apache.org/jira/browse/RATIS-734
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (RATIS-734) TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze resolved RATIS-734.
--
Resolution: Duplicate

> TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s
> -
>
> Key: RATIS-734
> URL: https://issues.apache.org/jira/browse/RATIS-734
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (RATIS-734) TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-734?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze resolved RATIS-734.
--
Resolution: Fixed

Jenkins has confirmed that this was fixed by RATIS-704; see 
https://builds.apache.org/job/PreCommit-RATIS-Build/1107/testReport/

> TestRaftServerWithGrpc.testRaftClientMetrics times out after 100s
> -
>
> Key: RATIS-734
> URL: https://issues.apache.org/jira/browse/RATIS-734
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (RATIS-733) TestRaftOutputStreamWithGrpc.testSimpleWrite times out after 30s

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-733?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze resolved RATIS-733.
--
Resolution: Duplicate

Jenkins has confirmed that this was fixed by RATIS-704; see 
https://builds.apache.org/job/PreCommit-RATIS-Build/1107/testReport/

> TestRaftOutputStreamWithGrpc.testSimpleWrite times out after 30s
> 
>
> Key: RATIS-733
> URL: https://issues.apache.org/jira/browse/RATIS-733
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (RATIS-732) TestRaftAsyncExceptionWithGrpc.testTimeoutException times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-732?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze resolved RATIS-732.
--
Resolution: Duplicate

Jenkins has confirmed that this was fixed; see 
https://builds.apache.org/job/PreCommit-RATIS-Build/1107/testReport/

> TestRaftAsyncExceptionWithGrpc.testTimeoutException times out after 100s
> 
>
> Key: RATIS-732
> URL: https://issues.apache.org/jira/browse/RATIS-732
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (RATIS-457) gRPC timed out append entry reply should update follower match index

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-457?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze updated RATIS-457:
-
Component/s: gRPC
 Issue Type: Improvement  (was: Bug)
Summary: gRPC timed out append entry reply should update follower match 
index  (was: Timed out append entry reply should update follower match index, 
commit index)

> gRPC timed out append entry reply should update follower match index
> 
>
> Key: RATIS-457
> URL: https://issues.apache.org/jira/browse/RATIS-457
> Project: Ratis
>  Issue Type: Improvement
>  Components: gRPC
>Reporter: Lokesh Jain
>Assignee: Lokesh Jain
>Priority: Major
>  Labels: ozone
> Attachments: RATIS-457.001.patch, RATIS-457.002.patch, 
> RATIS-457.003.patch, RATIS-457.004.patch
>
>
> Currently all the timed out append entry replies are ignored by the leader. 
> These replies have information like match index which can be updated by 
> leader.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-457) Timed out append entry reply should update follower match index, commit index

2019-10-24 Thread Tsz-wo Sze (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-457?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959115#comment-16959115
 ] 

Tsz-wo Sze commented on RATIS-457:
--

[~ljain], the 004 patch no longer applies.  Could you update it?

> Timed out append entry reply should update follower match index, commit index
> -
>
> Key: RATIS-457
> URL: https://issues.apache.org/jira/browse/RATIS-457
> Project: Ratis
>  Issue Type: Bug
>Reporter: Lokesh Jain
>Assignee: Lokesh Jain
>Priority: Major
>  Labels: ozone
> Attachments: RATIS-457.001.patch, RATIS-457.002.patch, 
> RATIS-457.003.patch, RATIS-457.004.patch
>
>
> Currently all the timed out append entry replies are ignored by the leader. 
> These replies have information like match index which can be updated by 
> leader.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (RATIS-603) Add a method to StateMachine for printing StateMachineLogEntryProto

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-603?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze updated RATIS-603:
-
Summary: Add a method to StateMachine for printing 
StateMachineLogEntryProto  (was: Add a logStringSupplier for RaftServerImpl to 
optionally print SmLogEntry on errors)

> Add a method to StateMachine for printing StateMachineLogEntryProto
> ---
>
> Key: RATIS-603
> URL: https://issues.apache.org/jira/browse/RATIS-603
> Project: Ratis
>  Issue Type: New Feature
>  Components: server
>Affects Versions: 0.4.0
>Reporter: Mukul Kumar Singh
>Assignee: Mukul Kumar Singh
>Priority: Major
>  Labels: ozone
> Attachments: RATIS-603.001.patch, RATIS-603.002.patch, 
> RATIS-603.003.patch, RATIS-603.004.patch, RATIS-603.005.patch, 
> RATIS-603.006.patch, RATIS-603.007.patch, RATIS-603.008.patch
>
>
> This jira proposes to add a SmLogEntryProto to toString converter so that 
> logEntry information can be printed on errors/exceptions.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-603) Add a logStringSupplier for RaftServerImpl to optionally print SmLogEntry on errors

2019-10-24 Thread Tsz-wo Sze (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-603?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959105#comment-16959105
 ] 

Tsz-wo Sze commented on RATIS-603:
--

+1 the 008 patch looks good.

> Add a logStringSupplier for RaftServerImpl to optionally print SmLogEntry on 
> errors
> ---
>
> Key: RATIS-603
> URL: https://issues.apache.org/jira/browse/RATIS-603
> Project: Ratis
>  Issue Type: New Feature
>  Components: server
>Affects Versions: 0.4.0
>Reporter: Mukul Kumar Singh
>Assignee: Mukul Kumar Singh
>Priority: Major
>  Labels: ozone
> Attachments: RATIS-603.001.patch, RATIS-603.002.patch, 
> RATIS-603.003.patch, RATIS-603.004.patch, RATIS-603.005.patch, 
> RATIS-603.006.patch, RATIS-603.007.patch, RATIS-603.008.patch
>
>
> This jira proposes to add a SmLogEntryProto to toString converter so that 
> logEntry information can be printed on errors/exceptions.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-696) RaftStorageDirectory.getLogSegmentFiles throws a deep IOException

2019-10-24 Thread Hadoop QA (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959050#comment-16959050
 ] 

Hadoop QA commented on RATIS-696:
-

| (x) *{color:red}-1 overall{color}* |
\\
\\
|| Vote || Subsystem || Runtime || Comment ||
| {color:blue}0{color} | {color:blue} reexec {color} | {color:blue}  0m 
20s{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:red}-1{color} | {color:red} test4tests {color} | {color:red}  0m  
0s{color} | {color:red} The patch doesn't appear to include any new or modified 
tests. Please justify why no new tests are needed for this patch. Also please 
list what manual steps were performed to verify this patch. {color} |
|| || || || {color:brown} master Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m 
56s{color} | {color:blue} Maven dependency ordering for branch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  2m 
13s{color} | {color:green} master passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
50s{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 
40s{color} | {color:green} master passed {color} |
|| || || || {color:brown} Patch Compile Tests {color} ||
| {color:blue}0{color} | {color:blue} mvndep {color} | {color:blue}  0m  
4s{color} | {color:blue} Maven dependency ordering for patch {color} |
| {color:green}+1{color} | {color:green} mvninstall {color} | {color:green}  0m 
56s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} compile {color} | {color:green}  0m 
52s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} javac {color} | {color:green}  0m 
52s{color} | {color:green} the patch passed {color} |
| {color:green}+1{color} | {color:green} checkstyle {color} | {color:green}  0m 
12s{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} javadoc {color} | {color:green}  0m 
34s{color} | {color:green} the patch passed {color} |
|| || || || {color:brown} Other Tests {color} ||
| {color:red}-1{color} | {color:red} unit {color} | {color:red} 19m 14s{color} 
| {color:red} root in the patch failed. {color} |
| {color:green}+1{color} | {color:green} asflicense {color} | {color:green}  0m 
18s{color} | {color:green} The patch does not generate ASF License warnings. 
{color} |
| {color:black}{color} | {color:black} {color} | {color:black} 27m 54s{color} | 
{color:black} {color} |
\\
\\
|| Reason || Tests ||
| Failed junit tests | ratis.grpc.TestRaftAsyncWithGrpc |
|   | ratis.grpc.TestWatchRequestWithGrpc |
\\
\\
|| Subsystem || Report/Notes ||
| Docker | Client=19.03.4 Server=19.03.4 Image:yetus/ratis:date2019-10-24 |
| JIRA Issue | RATIS-696 |
| JIRA Patch URL | 
https://issues.apache.org/jira/secure/attachment/12983949/r696_20191024.patch |
| Optional Tests |  dupname  asflicense  javac  javadoc  unit  findbugs  
checkstyle  compile  |
| uname | Linux 28a6ec84826f 4.15.0-66-generic #75-Ubuntu SMP Tue Oct 1 
05:24:09 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 / debf50a |
| maven | version: Apache Maven 3.6.2 
(40f52333136460af0dc0d7232c0dc0bcf0d9e117; 2019-08-27T15:06:16Z) |
| Default Java | 1.8.0_222 |
| unit | 
https://builds.apache.org/job/PreCommit-RATIS-Build/1107/artifact/out/patch-unit-root.txt
 |
|  Test Results | 
https://builds.apache.org/job/PreCommit-RATIS-Build/1107/testReport/ |
| Max. process+thread count | 1588 (vs. ulimit of 5000) |
| modules | C: ratis-common ratis-server U: . |
| Console output | 
https://builds.apache.org/job/PreCommit-RATIS-Build/1107/console |
| Powered by | Apache Yetus 0.8.0   http://yetus.apache.org |


This message was automatically generated.



> RaftStorageDirectory.getLogSegmentFiles throws a deep IOException
> -
>
> Key: RATIS-696
> URL: https://issues.apache.org/jira/browse/RATIS-696
> Project: Ratis
>  Issue Type: Sub-task

[jira] [Commented] (RATIS-732) TestRaftAsyncExceptionWithGrpc.testTimeoutException times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-732?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959025#comment-16959025
 ] 

Tsz-wo Sze commented on RATIS-732:
--

Could you also check the other JIRAs such as RATIS-733.  They may also be fixed 
by m RATIS-704.  The bug was from RATIS-726.

> TestRaftAsyncExceptionWithGrpc.testTimeoutException times out after 100s
> 
>
> Key: RATIS-732
> URL: https://issues.apache.org/jira/browse/RATIS-732
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-732) TestRaftAsyncExceptionWithGrpc.testTimeoutException times out after 100s

2019-10-24 Thread Tsz-wo Sze (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-732?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959022#comment-16959022
 ] 

Tsz-wo Sze commented on RATIS-732:
--

This should be already fixed by RATIS-704.  Could you check?

> TestRaftAsyncExceptionWithGrpc.testTimeoutException times out after 100s
> 
>
> Key: RATIS-732
> URL: https://issues.apache.org/jira/browse/RATIS-732
> Project: Ratis
>  Issue Type: Bug
>  Components: test
>Affects Versions: 0.4.0
>Reporter: Dinesh Chitlangia
>Priority: Major
> Attachments: stdout.txt
>
>
> Attached the stdout.
>  
> Originally seen during CI run of RATIS-694



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-696) RaftStorageDirectory.getLogSegmentFiles throws a deep IOException

2019-10-24 Thread Tsz-wo Sze (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16959013#comment-16959013
 ] 

Tsz-wo Sze commented on RATIS-696:
--

r696_20191024.patch: updated with master.

> RaftStorageDirectory.getLogSegmentFiles throws a deep IOException
> -
>
> Key: RATIS-696
> URL: https://issues.apache.org/jira/browse/RATIS-696
> Project: Ratis
>  Issue Type: Sub-task
>Reporter: Clay B.
>Assignee: Tsz-wo Sze
>Priority: Major
> Attachments: r696_20191002.patch, r696_20191002b.patch, 
> r696_20191002c.patch, r696_20191024.patch
>
>
> In {{RaftStorageDirectory.getLogSegmentFiles()}} one can hang while creating 
> a {{Files.newDirectoryStream}}. If one gets an {{IOException}} the server 
> will simply hang at this point.
> {code:java}
> Exception in thread "main" java.nio.file.FileSystemException: 
> /home/vagrant/test_data/data2_slowed/64656d6f-5261-6674-4772-6f7570313233/current:
>  Input/output error
> at 
> sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
> at 
> sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
> at 
> sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
> at 
> sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:427)
> at java.nio.file.Files.newDirectoryStream(Files.java:457)
> at 
> org.apache.ratis.server.storage.RaftStorageDirectory.getLogSegmentFiles(RaftStorageDirectory.java:200)
> at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.loadLogSegments(SegmentedRaftLog.java:223)
> at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.openImpl(SegmentedRaftLog.java:204)
> at org.apache.ratis.server.raftlog.RaftLog.open(RaftLog.java:247)
> at 
> org.apache.ratis.server.impl.ServerState.initRaftLog(ServerState.java:191)
> at 
> org.apache.ratis.server.impl.ServerState.(ServerState.java:121)
> at 
> org.apache.ratis.server.impl.RaftServerImpl.(RaftServerImpl.java:110)
> at 
> org.apache.ratis.server.impl.RaftServerProxy.lambda$newRaftServerImpl$2(RaftServerProxy.java:208)
> at 
> java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
> 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) {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Updated] (RATIS-696) RaftStorageDirectory.getLogSegmentFiles throws a deep IOException

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-696?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze updated RATIS-696:
-
Attachment: r696_20191024.patch

> RaftStorageDirectory.getLogSegmentFiles throws a deep IOException
> -
>
> Key: RATIS-696
> URL: https://issues.apache.org/jira/browse/RATIS-696
> Project: Ratis
>  Issue Type: Sub-task
>Reporter: Clay B.
>Assignee: Tsz-wo Sze
>Priority: Major
> Attachments: r696_20191002.patch, r696_20191002b.patch, 
> r696_20191002c.patch, r696_20191024.patch
>
>
> In {{RaftStorageDirectory.getLogSegmentFiles()}} one can hang while creating 
> a {{Files.newDirectoryStream}}. If one gets an {{IOException}} the server 
> will simply hang at this point.
> {code:java}
> Exception in thread "main" java.nio.file.FileSystemException: 
> /home/vagrant/test_data/data2_slowed/64656d6f-5261-6674-4772-6f7570313233/current:
>  Input/output error
> at 
> sun.nio.fs.UnixException.translateToIOException(UnixException.java:91)
> at 
> sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
> at 
> sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
> at 
> sun.nio.fs.UnixFileSystemProvider.newDirectoryStream(UnixFileSystemProvider.java:427)
> at java.nio.file.Files.newDirectoryStream(Files.java:457)
> at 
> org.apache.ratis.server.storage.RaftStorageDirectory.getLogSegmentFiles(RaftStorageDirectory.java:200)
> at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.loadLogSegments(SegmentedRaftLog.java:223)
> at 
> org.apache.ratis.server.raftlog.segmented.SegmentedRaftLog.openImpl(SegmentedRaftLog.java:204)
> at org.apache.ratis.server.raftlog.RaftLog.open(RaftLog.java:247)
> at 
> org.apache.ratis.server.impl.ServerState.initRaftLog(ServerState.java:191)
> at 
> org.apache.ratis.server.impl.ServerState.(ServerState.java:121)
> at 
> org.apache.ratis.server.impl.RaftServerImpl.(RaftServerImpl.java:110)
> at 
> org.apache.ratis.server.impl.RaftServerProxy.lambda$newRaftServerImpl$2(RaftServerProxy.java:208)
> at 
> java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
> 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) {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-694) Fix checkstyle violations in ratis-metrics

2019-10-24 Thread Dinesh Chitlangia (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958996#comment-16958996
 ] 

Dinesh Chitlangia commented on RATIS-694:
-

Thanks [~szetszwo] for review & commit.

> Fix checkstyle violations in ratis-metrics
> --
>
> Key: RATIS-694
> URL: https://issues.apache.org/jira/browse/RATIS-694
> Project: Ratis
>  Issue Type: Sub-task
>  Components: metrics
>Reporter: Dinesh Chitlangia
>Assignee: Dinesh Chitlangia
>Priority: Minor
> Fix For: 0.5.0
>
> Attachments: RATIS-694.001.patch
>
>
> Checkstyle found 78 item(s) in 30 file(s)
> BaseStateMachine.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (49:49) 
> [VisibilityModifierCheck]
> Variable 'groupId' must be private and have accessor methods. (50:34) 
> [VisibilityModifierCheck]
> Variable 'lifeCycle' must be private and have accessor methods. (51:29) 
> [VisibilityModifierCheck]
> 'server' hides a field. (67:37) [HiddenFieldCheck]
> 'groupId' hides a field. (67:57) [HiddenFieldCheck]
> BufferedChannelBase.java : 1 item(s)
> Variable 'fileChannel' must be private and have accessor methods. (25:31) 
> [VisibilityModifierCheck]
> LeaderElection.java : 3 item(s)
> Variable 'result' must be private and have accessor methods. (70:18) 
> [VisibilityModifierCheck]
> Variable 'term' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> switch without "default" clause. (208:0) [MissingSwitchDefaultCheck]
> LeaderState.java : 9 item(s)
> Variable 'type' must be private and have accessor methods. (70:16) 
> [VisibilityModifierCheck]
> Variable 'newTerm' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> Variable 'handler' must be private and have accessor methods. (72:20) 
> [VisibilityModifierCheck]
> Definition of 'equals()' without corresponding definition of 'hashCode()'. 
> (84:5) [EqualsHashCodeCheck]
> 'for' construct must use '{}'s. (129:0) [NeedBracesCheck]
> Empty statement. (129:52) [EmptyStatementCheck]
> Name 'UPDATE_COMMIT_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (178:34) 
> [MemberNameCheck]
> Name 'CHECK_STAGING_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (180:34) 
> [MemberNameCheck]
> 'stagingState' hides a field. (296:31) [HiddenFieldCheck]
> LogAppender.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (122:34) 
> [VisibilityModifierCheck]
> Variable 'raftLog' must be private and have accessor methods. (124:27) 
> [VisibilityModifierCheck]
> Variable 'follower' must be private and have accessor methods. (125:32) 
> [VisibilityModifierCheck]
> Variable 'halfMinTimeoutMs' must be private and have accessor methods. 
> (129:24) [VisibilityModifierCheck]
> switch without "default" clause. (483:0) [MissingSwitchDefaultCheck]
> LogSegment.java : 1 item(s)
> Class LogSegment should be declared as final. (53:0) [FinalClassCheck]
> MemoryRaftLog.java : 1 item(s)
> 'entries' hides a field. (161:68) [HiddenFieldCheck]
> MetaFile.java : 2 item(s)
> 'term' hides a field. (88:23) [HiddenFieldCheck]
> 'votedFor' hides a field. (88:36) [HiddenFieldCheck]
> PendingRequests.java : 2 item(s)
> Line is longer than 120 characters (found 123). (112:0) [LineLengthCheck]
> Line is longer than 120 characters (found 122). (201:0) [LineLengthCheck]
> RaftConfiguration.java : 2 item(s)
> Class RaftConfiguration should be declared as final. (36:0) [FinalClassCheck]
> Class Builder should be declared as final. (43:0) [FinalClassCheck]
> RaftLog.java : 1 item(s)
> Line is longer than 120 characters (found 131). (321:0) [LineLengthCheck]
> RaftServer.java : 1 item(s)
> Line is longer than 120 characters (found 128). (79:0) [LineLengthCheck]
> RaftServerConstants.java : 1 item(s)
> interfaces should describe a type and hence have methods. (22:0) 
> [InterfaceIsTypeCheck]
> RaftServerImpl.java : 5 item(s)
> Line is longer than 120 characters (found 136). (82:0) [LineLengthCheck]
> 'state' hides a field. (124:19) [HiddenFieldCheck]
> 'stateMachine' hides a field. (545:24) [HiddenFieldCheck]
> More than 7 parameters (found 8). (885:54) [ParameterNumberCheck]
> 'stateMachine' hides a field. (1,250:24) [HiddenFieldCheck]
> RaftServerProxy.java : 2 item(s)
> Name '_1' must match pattern '^[a-z][a-zA-Z0-9]*$'. (385:24) 
> [ParameterNameCheck]
> Line is longer than 120 characters (found 123). (397:0) [LineLengthCheck]
> RaftServerRpc.java : 1 item(s)
> 'server' hides a field. (45:35) [HiddenFieldCheck]
> RaftStorage.java : 1 item(s)
> 'metaFile' hides a field. (89:14) [HiddenFieldCheck]
> RaftStorageDirectory.java : 3 item(s)
> Variable 'startIndex' must be private and have accessor methods. (66:23) 
> [VisibilityModifierCheck]
> Variable 'endIndex' must be private and have accessor 

[jira] [Updated] (RATIS-694) Fix checkstyle violations in ratis-metrics

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-694?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze updated RATIS-694:
-
Component/s: metrics

> Fix checkstyle violations in ratis-metrics
> --
>
> Key: RATIS-694
> URL: https://issues.apache.org/jira/browse/RATIS-694
> Project: Ratis
>  Issue Type: Sub-task
>  Components: metrics
>Reporter: Dinesh Chitlangia
>Assignee: Dinesh Chitlangia
>Priority: Minor
> Attachments: RATIS-694.001.patch
>
>
> Checkstyle found 78 item(s) in 30 file(s)
> BaseStateMachine.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (49:49) 
> [VisibilityModifierCheck]
> Variable 'groupId' must be private and have accessor methods. (50:34) 
> [VisibilityModifierCheck]
> Variable 'lifeCycle' must be private and have accessor methods. (51:29) 
> [VisibilityModifierCheck]
> 'server' hides a field. (67:37) [HiddenFieldCheck]
> 'groupId' hides a field. (67:57) [HiddenFieldCheck]
> BufferedChannelBase.java : 1 item(s)
> Variable 'fileChannel' must be private and have accessor methods. (25:31) 
> [VisibilityModifierCheck]
> LeaderElection.java : 3 item(s)
> Variable 'result' must be private and have accessor methods. (70:18) 
> [VisibilityModifierCheck]
> Variable 'term' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> switch without "default" clause. (208:0) [MissingSwitchDefaultCheck]
> LeaderState.java : 9 item(s)
> Variable 'type' must be private and have accessor methods. (70:16) 
> [VisibilityModifierCheck]
> Variable 'newTerm' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> Variable 'handler' must be private and have accessor methods. (72:20) 
> [VisibilityModifierCheck]
> Definition of 'equals()' without corresponding definition of 'hashCode()'. 
> (84:5) [EqualsHashCodeCheck]
> 'for' construct must use '{}'s. (129:0) [NeedBracesCheck]
> Empty statement. (129:52) [EmptyStatementCheck]
> Name 'UPDATE_COMMIT_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (178:34) 
> [MemberNameCheck]
> Name 'CHECK_STAGING_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (180:34) 
> [MemberNameCheck]
> 'stagingState' hides a field. (296:31) [HiddenFieldCheck]
> LogAppender.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (122:34) 
> [VisibilityModifierCheck]
> Variable 'raftLog' must be private and have accessor methods. (124:27) 
> [VisibilityModifierCheck]
> Variable 'follower' must be private and have accessor methods. (125:32) 
> [VisibilityModifierCheck]
> Variable 'halfMinTimeoutMs' must be private and have accessor methods. 
> (129:24) [VisibilityModifierCheck]
> switch without "default" clause. (483:0) [MissingSwitchDefaultCheck]
> LogSegment.java : 1 item(s)
> Class LogSegment should be declared as final. (53:0) [FinalClassCheck]
> MemoryRaftLog.java : 1 item(s)
> 'entries' hides a field. (161:68) [HiddenFieldCheck]
> MetaFile.java : 2 item(s)
> 'term' hides a field. (88:23) [HiddenFieldCheck]
> 'votedFor' hides a field. (88:36) [HiddenFieldCheck]
> PendingRequests.java : 2 item(s)
> Line is longer than 120 characters (found 123). (112:0) [LineLengthCheck]
> Line is longer than 120 characters (found 122). (201:0) [LineLengthCheck]
> RaftConfiguration.java : 2 item(s)
> Class RaftConfiguration should be declared as final. (36:0) [FinalClassCheck]
> Class Builder should be declared as final. (43:0) [FinalClassCheck]
> RaftLog.java : 1 item(s)
> Line is longer than 120 characters (found 131). (321:0) [LineLengthCheck]
> RaftServer.java : 1 item(s)
> Line is longer than 120 characters (found 128). (79:0) [LineLengthCheck]
> RaftServerConstants.java : 1 item(s)
> interfaces should describe a type and hence have methods. (22:0) 
> [InterfaceIsTypeCheck]
> RaftServerImpl.java : 5 item(s)
> Line is longer than 120 characters (found 136). (82:0) [LineLengthCheck]
> 'state' hides a field. (124:19) [HiddenFieldCheck]
> 'stateMachine' hides a field. (545:24) [HiddenFieldCheck]
> More than 7 parameters (found 8). (885:54) [ParameterNumberCheck]
> 'stateMachine' hides a field. (1,250:24) [HiddenFieldCheck]
> RaftServerProxy.java : 2 item(s)
> Name '_1' must match pattern '^[a-z][a-zA-Z0-9]*$'. (385:24) 
> [ParameterNameCheck]
> Line is longer than 120 characters (found 123). (397:0) [LineLengthCheck]
> RaftServerRpc.java : 1 item(s)
> 'server' hides a field. (45:35) [HiddenFieldCheck]
> RaftStorage.java : 1 item(s)
> 'metaFile' hides a field. (89:14) [HiddenFieldCheck]
> RaftStorageDirectory.java : 3 item(s)
> Variable 'startIndex' must be private and have accessor methods. (66:23) 
> [VisibilityModifierCheck]
> Variable 'endIndex' must be private and have accessor methods. (67:23) 
> [VisibilityModifierCheck]
> 'if' construct must use '{}'s. (355:0) [NeedBracesCheck]
> 

[jira] [Updated] (RATIS-694) Fix checkstyle violations in ratis-metrics

2019-10-24 Thread Tsz-wo Sze (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-694?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Tsz-wo Sze updated RATIS-694:
-
Fix Version/s: 0.5.0

> Fix checkstyle violations in ratis-metrics
> --
>
> Key: RATIS-694
> URL: https://issues.apache.org/jira/browse/RATIS-694
> Project: Ratis
>  Issue Type: Sub-task
>  Components: metrics
>Reporter: Dinesh Chitlangia
>Assignee: Dinesh Chitlangia
>Priority: Minor
> Fix For: 0.5.0
>
> Attachments: RATIS-694.001.patch
>
>
> Checkstyle found 78 item(s) in 30 file(s)
> BaseStateMachine.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (49:49) 
> [VisibilityModifierCheck]
> Variable 'groupId' must be private and have accessor methods. (50:34) 
> [VisibilityModifierCheck]
> Variable 'lifeCycle' must be private and have accessor methods. (51:29) 
> [VisibilityModifierCheck]
> 'server' hides a field. (67:37) [HiddenFieldCheck]
> 'groupId' hides a field. (67:57) [HiddenFieldCheck]
> BufferedChannelBase.java : 1 item(s)
> Variable 'fileChannel' must be private and have accessor methods. (25:31) 
> [VisibilityModifierCheck]
> LeaderElection.java : 3 item(s)
> Variable 'result' must be private and have accessor methods. (70:18) 
> [VisibilityModifierCheck]
> Variable 'term' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> switch without "default" clause. (208:0) [MissingSwitchDefaultCheck]
> LeaderState.java : 9 item(s)
> Variable 'type' must be private and have accessor methods. (70:16) 
> [VisibilityModifierCheck]
> Variable 'newTerm' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> Variable 'handler' must be private and have accessor methods. (72:20) 
> [VisibilityModifierCheck]
> Definition of 'equals()' without corresponding definition of 'hashCode()'. 
> (84:5) [EqualsHashCodeCheck]
> 'for' construct must use '{}'s. (129:0) [NeedBracesCheck]
> Empty statement. (129:52) [EmptyStatementCheck]
> Name 'UPDATE_COMMIT_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (178:34) 
> [MemberNameCheck]
> Name 'CHECK_STAGING_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (180:34) 
> [MemberNameCheck]
> 'stagingState' hides a field. (296:31) [HiddenFieldCheck]
> LogAppender.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (122:34) 
> [VisibilityModifierCheck]
> Variable 'raftLog' must be private and have accessor methods. (124:27) 
> [VisibilityModifierCheck]
> Variable 'follower' must be private and have accessor methods. (125:32) 
> [VisibilityModifierCheck]
> Variable 'halfMinTimeoutMs' must be private and have accessor methods. 
> (129:24) [VisibilityModifierCheck]
> switch without "default" clause. (483:0) [MissingSwitchDefaultCheck]
> LogSegment.java : 1 item(s)
> Class LogSegment should be declared as final. (53:0) [FinalClassCheck]
> MemoryRaftLog.java : 1 item(s)
> 'entries' hides a field. (161:68) [HiddenFieldCheck]
> MetaFile.java : 2 item(s)
> 'term' hides a field. (88:23) [HiddenFieldCheck]
> 'votedFor' hides a field. (88:36) [HiddenFieldCheck]
> PendingRequests.java : 2 item(s)
> Line is longer than 120 characters (found 123). (112:0) [LineLengthCheck]
> Line is longer than 120 characters (found 122). (201:0) [LineLengthCheck]
> RaftConfiguration.java : 2 item(s)
> Class RaftConfiguration should be declared as final. (36:0) [FinalClassCheck]
> Class Builder should be declared as final. (43:0) [FinalClassCheck]
> RaftLog.java : 1 item(s)
> Line is longer than 120 characters (found 131). (321:0) [LineLengthCheck]
> RaftServer.java : 1 item(s)
> Line is longer than 120 characters (found 128). (79:0) [LineLengthCheck]
> RaftServerConstants.java : 1 item(s)
> interfaces should describe a type and hence have methods. (22:0) 
> [InterfaceIsTypeCheck]
> RaftServerImpl.java : 5 item(s)
> Line is longer than 120 characters (found 136). (82:0) [LineLengthCheck]
> 'state' hides a field. (124:19) [HiddenFieldCheck]
> 'stateMachine' hides a field. (545:24) [HiddenFieldCheck]
> More than 7 parameters (found 8). (885:54) [ParameterNumberCheck]
> 'stateMachine' hides a field. (1,250:24) [HiddenFieldCheck]
> RaftServerProxy.java : 2 item(s)
> Name '_1' must match pattern '^[a-z][a-zA-Z0-9]*$'. (385:24) 
> [ParameterNameCheck]
> Line is longer than 120 characters (found 123). (397:0) [LineLengthCheck]
> RaftServerRpc.java : 1 item(s)
> 'server' hides a field. (45:35) [HiddenFieldCheck]
> RaftStorage.java : 1 item(s)
> 'metaFile' hides a field. (89:14) [HiddenFieldCheck]
> RaftStorageDirectory.java : 3 item(s)
> Variable 'startIndex' must be private and have accessor methods. (66:23) 
> [VisibilityModifierCheck]
> Variable 'endIndex' must be private and have accessor methods. (67:23) 
> [VisibilityModifierCheck]
> 'if' construct must use 

[jira] [Commented] (RATIS-694) Fix checkstyle violations in ratis-metrics

2019-10-24 Thread Tsz-wo Sze (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-694?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958992#comment-16958992
 ] 

Tsz-wo Sze commented on RATIS-694:
--

+1 patch looks good.

> Fix checkstyle violations in ratis-metrics
> --
>
> Key: RATIS-694
> URL: https://issues.apache.org/jira/browse/RATIS-694
> Project: Ratis
>  Issue Type: Sub-task
>Reporter: Dinesh Chitlangia
>Assignee: Dinesh Chitlangia
>Priority: Minor
> Attachments: RATIS-694.001.patch
>
>
> Checkstyle found 78 item(s) in 30 file(s)
> BaseStateMachine.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (49:49) 
> [VisibilityModifierCheck]
> Variable 'groupId' must be private and have accessor methods. (50:34) 
> [VisibilityModifierCheck]
> Variable 'lifeCycle' must be private and have accessor methods. (51:29) 
> [VisibilityModifierCheck]
> 'server' hides a field. (67:37) [HiddenFieldCheck]
> 'groupId' hides a field. (67:57) [HiddenFieldCheck]
> BufferedChannelBase.java : 1 item(s)
> Variable 'fileChannel' must be private and have accessor methods. (25:31) 
> [VisibilityModifierCheck]
> LeaderElection.java : 3 item(s)
> Variable 'result' must be private and have accessor methods. (70:18) 
> [VisibilityModifierCheck]
> Variable 'term' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> switch without "default" clause. (208:0) [MissingSwitchDefaultCheck]
> LeaderState.java : 9 item(s)
> Variable 'type' must be private and have accessor methods. (70:16) 
> [VisibilityModifierCheck]
> Variable 'newTerm' must be private and have accessor methods. (71:16) 
> [VisibilityModifierCheck]
> Variable 'handler' must be private and have accessor methods. (72:20) 
> [VisibilityModifierCheck]
> Definition of 'equals()' without corresponding definition of 'hashCode()'. 
> (84:5) [EqualsHashCodeCheck]
> 'for' construct must use '{}'s. (129:0) [NeedBracesCheck]
> Empty statement. (129:52) [EmptyStatementCheck]
> Name 'UPDATE_COMMIT_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (178:34) 
> [MemberNameCheck]
> Name 'CHECK_STAGING_EVENT' must match pattern '^[a-z][a-zA-Z0-9]*$'. (180:34) 
> [MemberNameCheck]
> 'stagingState' hides a field. (296:31) [HiddenFieldCheck]
> LogAppender.java : 5 item(s)
> Variable 'server' must be private and have accessor methods. (122:34) 
> [VisibilityModifierCheck]
> Variable 'raftLog' must be private and have accessor methods. (124:27) 
> [VisibilityModifierCheck]
> Variable 'follower' must be private and have accessor methods. (125:32) 
> [VisibilityModifierCheck]
> Variable 'halfMinTimeoutMs' must be private and have accessor methods. 
> (129:24) [VisibilityModifierCheck]
> switch without "default" clause. (483:0) [MissingSwitchDefaultCheck]
> LogSegment.java : 1 item(s)
> Class LogSegment should be declared as final. (53:0) [FinalClassCheck]
> MemoryRaftLog.java : 1 item(s)
> 'entries' hides a field. (161:68) [HiddenFieldCheck]
> MetaFile.java : 2 item(s)
> 'term' hides a field. (88:23) [HiddenFieldCheck]
> 'votedFor' hides a field. (88:36) [HiddenFieldCheck]
> PendingRequests.java : 2 item(s)
> Line is longer than 120 characters (found 123). (112:0) [LineLengthCheck]
> Line is longer than 120 characters (found 122). (201:0) [LineLengthCheck]
> RaftConfiguration.java : 2 item(s)
> Class RaftConfiguration should be declared as final. (36:0) [FinalClassCheck]
> Class Builder should be declared as final. (43:0) [FinalClassCheck]
> RaftLog.java : 1 item(s)
> Line is longer than 120 characters (found 131). (321:0) [LineLengthCheck]
> RaftServer.java : 1 item(s)
> Line is longer than 120 characters (found 128). (79:0) [LineLengthCheck]
> RaftServerConstants.java : 1 item(s)
> interfaces should describe a type and hence have methods. (22:0) 
> [InterfaceIsTypeCheck]
> RaftServerImpl.java : 5 item(s)
> Line is longer than 120 characters (found 136). (82:0) [LineLengthCheck]
> 'state' hides a field. (124:19) [HiddenFieldCheck]
> 'stateMachine' hides a field. (545:24) [HiddenFieldCheck]
> More than 7 parameters (found 8). (885:54) [ParameterNumberCheck]
> 'stateMachine' hides a field. (1,250:24) [HiddenFieldCheck]
> RaftServerProxy.java : 2 item(s)
> Name '_1' must match pattern '^[a-z][a-zA-Z0-9]*$'. (385:24) 
> [ParameterNameCheck]
> Line is longer than 120 characters (found 123). (397:0) [LineLengthCheck]
> RaftServerRpc.java : 1 item(s)
> 'server' hides a field. (45:35) [HiddenFieldCheck]
> RaftStorage.java : 1 item(s)
> 'metaFile' hides a field. (89:14) [HiddenFieldCheck]
> RaftStorageDirectory.java : 3 item(s)
> Variable 'startIndex' must be private and have accessor methods. (66:23) 
> [VisibilityModifierCheck]
> Variable 'endIndex' must be private and have accessor methods. (67:23) 
> [VisibilityModifierCheck]
> 'if' construct must use '{}'s. (355:0) 

[jira] [Commented] (RATIS-728) TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till it times out even though request succeeds

2019-10-24 Thread Lokesh Jain (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958921#comment-16958921
 ] 

Lokesh Jain commented on RATIS-728:
---

[~adoroszlai] Yes, RATIS-715 is also fixed by this. I have resolved it.

> TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till 
> it times out even though request succeeds
> --
>
> Key: RATIS-728
> URL: https://issues.apache.org/jira/browse/RATIS-728
> Project: Ratis
>  Issue Type: Bug
>  Components: gRPC
>Reporter: Shashikant Banerjee
>Assignee: Tsz-wo Sze
>Priority: Major
> Fix For: 0.5.0
>
> Attachments: r728_20191023.patch, r728_20191023b.patch
>
>
> As discussed in RATIS-726, we need a similar fix for Append Request in 
> GrpcLogAppender to remove the references to appendEntryRequest as soon as the 
> response is received, thereby avoiding any memory pressure creation on the 
> server.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Resolved] (RATIS-715) GrpcLogAppender holds references to state machine data

2019-10-24 Thread Lokesh Jain (Jira)


 [ 
https://issues.apache.org/jira/browse/RATIS-715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lokesh Jain resolved RATIS-715.
---
Resolution: Duplicate

The issue has been fixed as part of RATIS-728.

> GrpcLogAppender holds references to state machine data
> --
>
> Key: RATIS-715
> URL: https://issues.apache.org/jira/browse/RATIS-715
> Project: Ratis
>  Issue Type: Bug
>  Components: gRPC, server
>Reporter: Lokesh Jain
>Assignee: Lokesh Jain
>Priority: Major
>
> The pendingRequestsMap currently maintains all the AppendEntryRequests sent 
> to a follower until they timeout. These contain LogEntryProto and hence 
> contain references to the state machine data. Only the metadata of the 
> request should be stored in the log appender map.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-728) TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till it times out even though request succeeds

2019-10-24 Thread Attila Doroszlai (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958779#comment-16958779
 ] 

Attila Doroszlai commented on RATIS-728:


Thanks [~szetszwo] and [~shashikant].  If I read correctly, RATIS-715 is also 
fixed by this.

> TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till 
> it times out even though request succeeds
> --
>
> Key: RATIS-728
> URL: https://issues.apache.org/jira/browse/RATIS-728
> Project: Ratis
>  Issue Type: Bug
>  Components: gRPC
>Reporter: Shashikant Banerjee
>Assignee: Tsz-wo Sze
>Priority: Major
> Fix For: 0.5.0
>
> Attachments: r728_20191023.patch, r728_20191023b.patch
>
>
> As discussed in RATIS-726, we need a similar fix for Append Request in 
> GrpcLogAppender to remove the references to appendEntryRequest as soon as the 
> response is received, thereby avoiding any memory pressure creation on the 
> server.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-728) TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till it times out even though request succeeds

2019-10-24 Thread Shashikant Banerjee (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958735#comment-16958735
 ] 

Shashikant Banerjee commented on RATIS-728:
---

+1

> TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till 
> it times out even though request succeeds
> --
>
> Key: RATIS-728
> URL: https://issues.apache.org/jira/browse/RATIS-728
> Project: Ratis
>  Issue Type: Bug
>  Components: gRPC
>Reporter: Shashikant Banerjee
>Assignee: Tsz-wo Sze
>Priority: Major
> Attachments: r728_20191023.patch, r728_20191023b.patch
>
>
> As discussed in RATIS-726, we need a similar fix for Append Request in 
> GrpcLogAppender to remove the references to appendEntryRequest as soon as the 
> response is received, thereby avoiding any memory pressure creation on the 
> server.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-728) TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till it times out even though request succeeds

2019-10-24 Thread Shashikant Banerjee (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958736#comment-16958736
 ] 

Shashikant Banerjee commented on RATIS-728:
---

Thanks [~szetszwo] for working on this. I have committed this.

> TimeoutScheduler for GrpcLogAppender holds on to the AppendEntryRequest till 
> it times out even though request succeeds
> --
>
> Key: RATIS-728
> URL: https://issues.apache.org/jira/browse/RATIS-728
> Project: Ratis
>  Issue Type: Bug
>  Components: gRPC
>Reporter: Shashikant Banerjee
>Assignee: Tsz-wo Sze
>Priority: Major
> Attachments: r728_20191023.patch, r728_20191023b.patch
>
>
> As discussed in RATIS-726, we need a similar fix for Append Request in 
> GrpcLogAppender to remove the references to appendEntryRequest as soon as the 
> response is received, thereby avoiding any memory pressure creation on the 
> server.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-704) Invoke sendAsync as soon as OrderedAsync is created

2019-10-24 Thread Lokesh Jain (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958612#comment-16958612
 ] 

Lokesh Jain commented on RATIS-704:
---

[~szetszwo] Thanks for the contribution! I have committed the patch to master 
branch.

> Invoke sendAsync as soon as OrderedAsync is created
> ---
>
> Key: RATIS-704
> URL: https://issues.apache.org/jira/browse/RATIS-704
> Project: Ratis
>  Issue Type: Improvement
>  Components: client
>Reporter: Tsz-wo Sze
>Assignee: Tsz-wo Sze
>Priority: Major
>  Labels: ozone
> Fix For: 0.5.0
>
> Attachments: r704_20191009.patch, r704_20191011.patch, 
> r704_20191018.patch, r704_20191022.patch, r704_20191023.patch
>
>
> In OrderedAsync, the messages are sent asynchronously except for the first 
> message.  The first message is used to establish the connection.  
> OrderedAsync will wait for the first message to complete before sending the 
> following messages.
> Note that, when sending only two messages, the performance of sending the 
> messages asynchronously is degenerated to sending them sequentially 
> [~msingh] has discovered a case that can be optimized: an application may 
> send two or more messages and the first message may take a long time to 
> process.  In this case, we may send a dummy lightweighted message establish 
> the connection, and then send real messages.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (RATIS-704) Invoke sendAsync as soon as OrderedAsync is created

2019-10-24 Thread Lokesh Jain (Jira)


[ 
https://issues.apache.org/jira/browse/RATIS-704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958559#comment-16958559
 ] 

Lokesh Jain commented on RATIS-704:
---

[~szetszwo] Thanks for updating the patch! The changes look good to me. +1.

> Invoke sendAsync as soon as OrderedAsync is created
> ---
>
> Key: RATIS-704
> URL: https://issues.apache.org/jira/browse/RATIS-704
> Project: Ratis
>  Issue Type: Improvement
>  Components: client
>Reporter: Tsz-wo Sze
>Assignee: Tsz-wo Sze
>Priority: Major
>  Labels: ozone
> Attachments: r704_20191009.patch, r704_20191011.patch, 
> r704_20191018.patch, r704_20191022.patch, r704_20191023.patch
>
>
> In OrderedAsync, the messages are sent asynchronously except for the first 
> message.  The first message is used to establish the connection.  
> OrderedAsync will wait for the first message to complete before sending the 
> following messages.
> Note that, when sending only two messages, the performance of sending the 
> messages asynchronously is degenerated to sending them sequentially 
> [~msingh] has discovered a case that can be optimized: an application may 
> send two or more messages and the first message may take a long time to 
> process.  In this case, we may send a dummy lightweighted message establish 
> the connection, and then send real messages.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)