[jira] [Comment Edited] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-10-24 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958601#comment-16958601
 ] 

Zephyr Guo edited comment on CASSANDRA-15295 at 10/24/19 7:04 AM:
--

LGTM (y)
It gets rid of the potential for the bug to be reintroduced completely. Thanks 
for your work [~djoshi] .


was (Author: gzh1992n):
LGTM (y)
It gets rid of the potential for the bug to be reintroduced completely. Thanks 
for your work. 

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: image.png, jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-10-24 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16958601#comment-16958601
 ] 

Zephyr Guo commented on CASSANDRA-15295:


LGTM (y)
It gets rid of the potential for the bug to be reintroduced completely. Thanks 
for your work. 

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: image.png, jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-10-10 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16948268#comment-16948268
 ] 

Zephyr Guo edited comment on CASSANDRA-15295 at 10/10/19 7:49 AM:
--

Hi, [~djoshi] thanks for the review. I agree with most of what you said. Your 
change is very minimal for this issue. But something else I have to remind you.

1. Most of the changes in my patch are to build a UT to check the exception 
case for CommitLog. It's worth it for Cassandra. Not only we have to fix this 
problem but we also need to understand the root cause of the problem (lack of 
exception tests).

2. Your change introduces the risk of starting twice. CommitLog was designed as 
a singleton and It manages lifecycle by itself. When other modules call 
CommitLog.instance, they expect an initialized CommitLog. You change the 
original initialization process.

3. The major change (move to a different class) is very simple. The change DOES 
NOT change any original initialization process.

4. I agree with that "I think it is important to get the correctness issue 
resolved first".  Don't you think that moving the code to another class is the 
easiest?


I respect your decision to incorporate my patch to get a better one. What's 
next?


was (Author: gzh1992n):
Hi, [~djoshi] thanks for the review. I agree with most of what you said. Your 
change is very minimal for this issue. But something else I have to remind you.

1. Most of the changes in my patch are to build a UT to check the exception 
case for CommitLog. It's worth it for Cassandra. Not only we have to fix this 
problem but we also need to understand the root cause of the problem (lack of 
exception tests).

2. Your change introduces the risk of starting twice. CommitLog was designed as 
a singleton and It manages lifecycle by itself. When other modules call 
CommitLog.instance, they expect an initialized CommitLog. You change the 
original initialization process.

3. The major change (move to a different class) is very simple. The change DOES 
NOT change any original initialization process.

4. I agree with that "I think it is important to get the correctness issue 
resolved first".  Don't you think that moving the code to another class is the 
easiest?


I respect your decision, incorporate my patch to get a better one. What's next?

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-10-10 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16948268#comment-16948268
 ] 

Zephyr Guo edited comment on CASSANDRA-15295 at 10/10/19 7:20 AM:
--

Hi, [~djoshi] thanks for the review. I agree with most of what you said. Your 
change is very minimal for this issue. But something else I have to remind you.

1. Most of the changes in my patch are to build a UT to check the exception 
case for CommitLog. It's worth it for Cassandra. Not only we have to fix this 
problem but we also need to understand the root cause of the problem (lack of 
exception tests).

2. Your change introduces the risk of starting twice. CommitLog was designed as 
a singleton and It manages lifecycle by itself. When other modules call 
CommitLog.instance, they expect an initialized CommitLog. You change the 
original initialization process.

3. The major change (move to a different class) is very simple. The change DOES 
NOT change any original initialization process.

4. I agree with that "I think it is important to get the correctness issue 
resolved first".  Don't you think that moving the code to another class is the 
easiest?


I respect your decision, incorporate my patch to get a better one. What's next?


was (Author: gzh1992n):
Hi, [~djoshi] thanks for the review. I agree with most of what you said. Your 
change is very minimal for this issue. But something else I have to remind you.

1. Most of the changes in my patch are to build a UT to check the exception 
case for CommitLog. It's worth it for Cassandra. Not only we have to fix this 
problem but we also need to understand the root cause of the problem (lack of 
exception tests).

2. Your change introduces the risk of starting twice. CommitLog was designed to 
a singleton and It manages lifecycle by itself. When other modules call 
CommitLog.instance, they expect an initialized CommitLog. You change the 
original initialization process.

3. The major change (move to a different class) is very simple. The change DOES 
NOT change any original initialization process.

4. I agree with that "I think it is important to get the correctness issue 
resolved first".  Don't you think that moving the code to another class is the 
easiest?


I respect your decision, incorporate my patch to get a better one. What's next?

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-10-10 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16948268#comment-16948268
 ] 

Zephyr Guo edited comment on CASSANDRA-15295 at 10/10/19 7:18 AM:
--

Hi, [~djoshi] thanks for the review. I agree with most of what you said. Your 
change is very minimal for this issue. But something else I have to remind you.

1. Most of the changes in my patch are to build a UT to check the exception 
case for CommitLog. It's worth it for Cassandra. Not only we have to fix this 
problem but we also need to understand the root cause of the problem (lack of 
exception tests).

2. Your change introduces the risk of starting twice. CommitLog was designed to 
a singleton and It manages lifecycle by itself. When other modules call 
CommitLog.instance, they expect an initialized CommitLog. You change the 
original initialization process.

3. The major change (move to a different class) is very simple. The change DOES 
NOT change any original initialization process.

4. I agree with that "I think it is important to get the correctness issue 
resolved first".  Don't you think that moving the code to another class is the 
easiest?


I respect your decision, incorporate my patch to get a better one. What's next?


was (Author: gzh1992n):
Hi, [~djoshi] thanks for the review. I agree with most of what you said. Your 
change is very minimal for this issue. But something else I have to remind you.

1. Most of the changes in my patch are going to build a UT that ensures the 
exception case for CommitLog. It's worth it for Cassandra. Not only we have to 
fix this problem but we also need to understand the root cause of the problem 
(lack of exception tests).

2. Your change introduces the risk of starting twice. CommitLog was designed to 
a singleton and It manages lifecycle by itself. When other modules call 
CommitLog.instance, they expect an initialized CommitLog. You change the 
original initialization process.

3. The major change (move to a different class) is very simple. The change DOES 
NOT change any original initialization process.

4. I agree with that "I think it is important to get the correctness issue 
resolved first".  Don't you think that moving the code to another class is the 
easiest?


I respect your decision, incorporate my patch to get a better one. What's next?

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-10-10 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16948268#comment-16948268
 ] 

Zephyr Guo commented on CASSANDRA-15295:


Hi, [~djoshi] thanks for the review. I agree with most of what you said. Your 
change is very minimal for this issue. But something else I have to remind you.

1. Most of the changes in my patch are going to build a UT that ensures the 
exception case for CommitLog. It's worth it for Cassandra. Not only we have to 
fix this problem but we also need to understand the root cause of the problem 
(lack of exception tests).

2. Your change introduces the risk of starting twice. CommitLog was designed to 
a singleton and It manages lifecycle by itself. When other modules call 
CommitLog.instance, they expect an initialized CommitLog. You change the 
original initialization process.

3. The major change (move to a different class) is very simple. The change DOES 
NOT change any original initialization process.

4. I agree with that "I think it is important to get the correctness issue 
resolved first".  Don't you think that moving the code to another class is the 
easiest?


I respect your decision, incorporate my patch to get a better one. What's next?

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-09-23 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16936351#comment-16936351
 ] 

Zephyr Guo commented on CASSANDRA-15295:


I am sorry to reply you so late [~jrwest]. I had updated the PR. Please see:  
https://github.com/apache/cassandra/pull/347

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-09-18 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16932337#comment-16932337
 ] 

Zephyr Guo commented on CASSANDRA-15295:


Thanks for the comments [~jrwest]. I will update the patch as soon as possible.

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



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

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-09-06 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16924245#comment-16924245
 ] 

Zephyr Guo commented on CASSANDRA-15295:


Thanks for review [~jrwest].

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-09-03 Thread Zephyr Guo (Jira)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16921193#comment-16921193
 ] 

Zephyr Guo commented on CASSANDRA-15295:


Thank you [~jjirsa] for your review and I look forward to your feedback.

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Description: 
Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a long 
time.
 I used jstack to saw what happened. The main thread stuck in 
*AbstractCommitLogSegmentManager.awaitAvailableSegment*
 !screenshot-1.png! 

The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it was 
not actually running.  
 !screenshot-2.png! 

And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
java class initialization.
  !screenshot-3.png! 

This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
initializing. In this moment, the CommitLog class is not initialized and the 
main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog class 
is still initializing.



 

 

  was:
Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a long 
time.
 I used jstack to saw what happened. The main thread stuck in 
*AbstractCommitLogSegmentManager.awaitAvailableSegment*
 !screenshot-1.png! 

The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it was 
not actually running.  
 !screenshot-2.png! 

And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
java class initialization.
  !screenshot-3.png! 

This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
initializing. In this moment, the CommitLog class is not initialized and the 
main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog class 
is still initializing.



 

 


> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will block on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: screenshot-3.png

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Description: 
Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a long 
time.
 I used jstack to saw what happened. The main thread stuck in 
*AbstractCommitLogSegmentManager.awaitAvailableSegment*
 !screenshot-1.png! 

The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it was 
not actually running.  
 !screenshot-2.png! 

And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
java class initialization.
  !screenshot-3.png! 

This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
initializing. In this moment, the CommitLog class is not initialized and the 
main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog class 
is still initializing.



 

 

  was:
Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a long 
time.
 I used jstack to saw what happened. The main thread stuck in 
*AbstractCommitLogSegmentManager.awaitAvailableSegment*
 !image-2019-08-30-21-40-43-748.png|thumbnail! 

The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it was 
not actually running.  
 !image-2019-08-30-21-30-11-683.png|thumbnail! 

And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
java class initialization.
 !image-2019-08-30-21-25-17-638.png|thumbnail! 

This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
initializing. In this moment, the CommitLog class is not initialized and the 
main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog class 
is still initializing.



 

 


> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !screenshot-1.png! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !screenshot-2.png! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>   !screenshot-3.png! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: screenshot-2.png

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png, 
> screenshot-2.png, screenshot-3.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: (was: image-2019-08-30-21-30-11-683.png)

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: (was: image-2019-08-30-21-40-43-748.png)

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: screenshot-1.png

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: jstack.log, pstack.log, screenshot-1.png
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: (was: image-2019-08-30-21-29-48-623.png)

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: image-2019-08-30-21-40-43-748.png, jstack.log, pstack.log
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: (was: image-2019-08-30-21-25-17-638.png)

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: image-2019-08-30-21-40-43-748.png, jstack.log, pstack.log
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: pstack.log

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: image-2019-08-30-21-25-17-638.png, 
> image-2019-08-30-21-29-48-623.png, image-2019-08-30-21-30-11-683.png, 
> image-2019-08-30-21-40-43-748.png, jstack.log, pstack.log
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)


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

Zephyr Guo updated CASSANDRA-15295:
---
Attachment: jstack.log

> Running into deadlock when do CommitLog initialization
> --
>
> Key: CASSANDRA-15295
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
> Project: Cassandra
>  Issue Type: Bug
>  Components: Local/Commit Log
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: image-2019-08-30-21-25-17-638.png, 
> image-2019-08-30-21-29-48-623.png, image-2019-08-30-21-30-11-683.png, 
> image-2019-08-30-21-40-43-748.png, jstack.log
>
>
> Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a 
> long time.
>  I used jstack to saw what happened. The main thread stuck in 
> *AbstractCommitLogSegmentManager.awaitAvailableSegment*
>  !image-2019-08-30-21-40-43-748.png|thumbnail! 
> The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it 
> was not actually running.  
>  !image-2019-08-30-21-30-11-683.png|thumbnail! 
> And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
> java class initialization.
>  !image-2019-08-30-21-25-17-638.png|thumbnail! 
> This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
> initializing. In this moment, the CommitLog class is not initialized and the 
> main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
> CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
> method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog 
> class is still initializing.
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Created] (CASSANDRA-15295) Running into deadlock when do CommitLog initialization

2019-08-30 Thread Zephyr Guo (Jira)
Zephyr Guo created CASSANDRA-15295:
--

 Summary: Running into deadlock when do CommitLog initialization
 Key: CASSANDRA-15295
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15295
 Project: Cassandra
  Issue Type: Bug
  Components: Local/Commit Log
Reporter: Zephyr Guo
Assignee: Zephyr Guo
 Attachments: image-2019-08-30-21-25-17-638.png, 
image-2019-08-30-21-29-48-623.png, image-2019-08-30-21-30-11-683.png, 
image-2019-08-30-21-40-43-748.png

Recently, I found a cassandra(3.11.4) node stuck in STARTING status for a long 
time.
 I used jstack to saw what happened. The main thread stuck in 
*AbstractCommitLogSegmentManager.awaitAvailableSegment*
 !image-2019-08-30-21-40-43-748.png|thumbnail! 

The strange thing is COMMIT-LOG-ALLOCATOR thread state was runnable but it was 
not actually running.  
 !image-2019-08-30-21-30-11-683.png|thumbnail! 

And then I used pstack to troubleshoot. I found COMMIT-LOG-ALLOCATOR block on 
java class initialization.
 !image-2019-08-30-21-25-17-638.png|thumbnail! 

This is a deadlock obviously. CommitLog waits for a CommitLogSegment when 
initializing. In this moment, the CommitLog class is not initialized and the 
main thread holds the class lock. After that, COMMIT-LOG-ALLOCATOR creates a 
CommitLogSegment with exception and call *CommitLog.handleCommitError*(static 
method).  COMMIT-LOG-ALLOCATOR will stick on this line because CommitLog class 
is still initializing.



 

 



--
This message was sent by Atlassian Jira
(v8.3.2#803003)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15198) Preventing RuntimeException when the username or password is empty

2019-07-05 Thread Zephyr Guo (JIRA)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15198?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16879104#comment-16879104
 ] 

Zephyr Guo commented on CASSANDRA-15198:


Thanks [~bdeggleston] for review.

> Preventing RuntimeException when the username or password is empty
> --
>
> Key: CASSANDRA-15198
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15198
> Project: Cassandra
>  Issue Type: Bug
>  Components: Feature/Authorization
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
>  Labels: pull-request-available
> Fix For: 4.0, 3.0.x, 3.11.x
>
> Attachments: CASSANDRA-15198-v1.patch, empty_username_error.jpg
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
>  !empty_username_error.jpg! 
> Although this does not affect the service, it's necessary to improve code 
> robustness.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15198) Preventing RuntimeException when the username or password is empty

2019-07-03 Thread Zephyr Guo (JIRA)


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

Zephyr Guo updated CASSANDRA-15198:
---
Description: 
 !empty_username_error.jpg! 

Although this does not affect the service, it's necessary to improve code 
robustness.

  was:
 !empty_username_error.jpg! 

Although this does not affect the service, but it's necessary to improve code 
robustness.


> Preventing RuntimeException when the username or password is empty
> --
>
> Key: CASSANDRA-15198
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15198
> Project: Cassandra
>  Issue Type: Bug
>  Components: Feature/Authorization
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
>  Labels: pull-request-available
> Attachments: CASSANDRA-15198-v1.patch, empty_username_error.jpg
>
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
>  !empty_username_error.jpg! 
> Although this does not affect the service, it's necessary to improve code 
> robustness.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15198) Preventing RuntimeException when the username or password is empty

2019-07-03 Thread Zephyr Guo (JIRA)


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

Zephyr Guo updated CASSANDRA-15198:
---
 Severity: Low
   Complexity: Low Hanging Fruit
Discovered By: User Report
 Bug Category: Parent values: Security(12985)Level 1 values: Remote Code 
Execution(13002)
  Component/s: Feature/Authorization
   Status: Open  (was: Triage Needed)

> Preventing RuntimeException when the username or password is empty
> --
>
> Key: CASSANDRA-15198
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15198
> Project: Cassandra
>  Issue Type: Bug
>  Components: Feature/Authorization
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15198-v1.patch, empty_username_error.jpg
>
>
>  !empty_username_error.jpg! 
> Although this does not affect the service, but it's necessary to improve code 
> robustness.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15198) Preventing RuntimeException when the username or password is empty

2019-07-03 Thread Zephyr Guo (JIRA)


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

Zephyr Guo updated CASSANDRA-15198:
---
Attachment: CASSANDRA-15198-v1.patch

> Preventing RuntimeException when the username or password is empty
> --
>
> Key: CASSANDRA-15198
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15198
> Project: Cassandra
>  Issue Type: Bug
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15198-v1.patch, empty_username_error.jpg
>
>
>  !empty_username_error.jpg! 
> Although this does not affect the service, but it's necessary to improve code 
> robustness.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Created] (CASSANDRA-15198) Preventing RuntimeException when the username or password is empty

2019-07-03 Thread Zephyr Guo (JIRA)
Zephyr Guo created CASSANDRA-15198:
--

 Summary: Preventing RuntimeException when the username or password 
is empty
 Key: CASSANDRA-15198
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15198
 Project: Cassandra
  Issue Type: Bug
Reporter: Zephyr Guo
Assignee: Zephyr Guo
 Attachments: empty_username_error.jpg

 !empty_username_error.jpg! 

Although this does not affect the service, but it's necessary to improve code 
robustness.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15090) Customize cassandra log directory

2019-05-13 Thread Zephyr Guo (JIRA)


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

Zephyr Guo updated CASSANDRA-15090:
---
Test and Documentation Plan: Documentation could be found in annotation.
 Status: Patch Available  (was: Open)

> Customize cassandra log directory
> -
>
> Key: CASSANDRA-15090
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
> Project: Cassandra
>  Issue Type: New Feature
>  Components: Local/Config
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15090-v1.patch
>
>
> Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that 
> we could customize log directory such as ‘/var/log/cassandra’ .
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15090) Customize cassandra log directory

2019-05-13 Thread Zephyr Guo (JIRA)


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

Zephyr Guo updated CASSANDRA-15090:
---
 Complexity: Low Hanging Fruit
Change Category: Operability
Component/s: Local/Config
 Status: Open  (was: Triage Needed)

> Customize cassandra log directory
> -
>
> Key: CASSANDRA-15090
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
> Project: Cassandra
>  Issue Type: New Feature
>  Components: Local/Config
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15090-v1.patch
>
>
> Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that 
> we could customize log directory such as ‘/var/log/cassandra’ .
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15090) Customize cassandra log directory

2019-05-09 Thread Zephyr Guo (JIRA)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16836409#comment-16836409
 ] 

Zephyr Guo edited comment on CASSANDRA-15090 at 5/10/19 4:00 AM:
-

Thank you for your review. [~michaelsembwever]

1.Take a look on startup command, we put cassandra_parms after JVM_OPTS, so 
cassandra.logdir would override by  cassandra_parms. I mean that we cannot set 
cassandra.logdir by adding it to jvm.options.

{code:sh}
exec $NUMACTL "$JAVA" $JVM_OPTS $cassandra_parms -cp "$CLASSPATH" $props 
"$class"
{code}

2.We could put CASSANDRA_CONF CASSANDRA_LOG_DIR to /etc/profile.d, so that 
others(script, daemon, tool) could find cassandra log dir conveniently such as 
collectting log events agent.

3.All of cassandra‘s tools could take advantage of CASSANDRA_LOG_DIR, 
outputting log of tool to uniform place if necessary.



was (Author: gzh1992n):
Thank you for your review. [~michaelsembwever]

1.Take a look on Startup command, we put cassandra_parms after JVM_OPTS, so 
cassandra.logdir would override by  cassandra_parms. I mean that we cannot set 
cassandra.logdir by adding it to jvm.options.

{code:sh}
exec $NUMACTL "$JAVA" $JVM_OPTS $cassandra_parms -cp "$CLASSPATH" $props 
"$class"
{code}

2.We could put CASSANDRA_CONF CASSANDRA_LOG_DIR to /etc/profile.d, so that 
others(script, daemon, tool) could find cassandra log dir conveniently such as 
collectting log events agent.

3.All of cassandra‘s tools could take advantage of CASSANDRA_LOG_DIR, 
outputting log of tool to uniform place if necessary.


> Customize cassandra log directory
> -
>
> Key: CASSANDRA-15090
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15090-v1.patch
>
>
> Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that 
> we could customize log directory such as ‘/var/log/cassandra’ .
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15090) Customize cassandra log directory

2019-05-09 Thread Zephyr Guo (JIRA)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16836409#comment-16836409
 ] 

Zephyr Guo edited comment on CASSANDRA-15090 at 5/9/19 2:03 PM:


Thank you for your review. [~michaelsembwever]

1.Take a look on Startup command, we put cassandra_parms after JVM_OPTS, so 
cassandra.logdir would override by  cassandra_parms. I mean that we cannot set 
cassandra.logdir by adding it to jvm.options.

{code:sh}
exec $NUMACTL "$JAVA" $JVM_OPTS $cassandra_parms -cp "$CLASSPATH" $props 
"$class"
{code}

2.We could put CASSANDRA_CONF CASSANDRA_LOG_DIR to /etc/profile.d, so that 
others(script, daemon, tool) could find cassandra log dir conveniently such as 
collectting log events agent.

3.All of cassandra‘s tools could take advantage of CASSANDRA_LOG_DIR, 
outputting log of tool to uniform place if necessary.



was (Author: gzh1992n):
Thank you for your review. [~michaelsembwever]

1.Take a look on Startup command, we put cassandra_parms after JVM_OPTS, so 
cassandra.logdir would override by  cassandra_parms. I mean that we cannot set 
cassandra.logdir by adding it to jvm.options.

{code: sh}
exec $NUMACTL "$JAVA" $JVM_OPTS $cassandra_parms -cp "$CLASSPATH" $props 
"$class"
{code}

2.We could put CASSANDRA_CONF CASSANDRA_LOG_DIR to /etc/profile.d, so that 
others(script, daemon, tool) could find cassandra log dir conveniently such as 
collectting log events agent.

3.All of cassandra‘s tools could take advantage of CASSANDRA_LOG_DIR, 
outputting log of tool to uniform place if necessary.


> Customize cassandra log directory
> -
>
> Key: CASSANDRA-15090
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15090-v1.patch
>
>
> Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that 
> we could customize log directory such as ‘/var/log/cassandra’ .
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Comment Edited] (CASSANDRA-15090) Customize cassandra log directory

2019-05-09 Thread Zephyr Guo (JIRA)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16836409#comment-16836409
 ] 

Zephyr Guo edited comment on CASSANDRA-15090 at 5/9/19 2:02 PM:


Thank you for your review. [~michaelsembwever]

1.Take a look on Startup command, we put cassandra_parms after JVM_OPTS, so 
cassandra.logdir would override by  cassandra_parms. I mean that we cannot set 
cassandra.logdir by adding it to jvm.options.

{code: sh}
exec $NUMACTL "$JAVA" $JVM_OPTS $cassandra_parms -cp "$CLASSPATH" $props 
"$class"
{code}

2.We could put CASSANDRA_CONF CASSANDRA_LOG_DIR to /etc/profile.d, so that 
others(script, daemon, tool) could find cassandra log dir conveniently such as 
collectting log events agent.

3.All of cassandra‘s tools could take advantage of CASSANDRA_LOG_DIR, 
outputting log of tool to uniform place if necessary.



was (Author: gzh1992n):
Thank you for your review. [~michaelsembwever]

1.Take a look on Startup command, we put cassandra_parms after JVM_OPTS, so 
cassandra.logdir would override by  cassandra_parms. I mean that we cannot set 
cassandra.logdir by adding it to jvm.options.

{code:shell}
exec $NUMACTL "$JAVA" $JVM_OPTS $cassandra_parms -cp "$CLASSPATH" $props 
"$class"
{code}

2.We could put CASSANDRA_CONF CASSANDRA_LOG_DIR to /etc/profile.d, so that 
others(script, daemon, tool) could find cassandra log dir conveniently such as 
collectting log events agent.

3.All of cassandra‘s tools could take advantage of CASSANDRA_LOG_DIR, 
outputting log of tool to uniform place if necessary.


> Customize cassandra log directory
> -
>
> Key: CASSANDRA-15090
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15090-v1.patch
>
>
> Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that 
> we could customize log directory such as ‘/var/log/cassandra’ .
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Commented] (CASSANDRA-15090) Customize cassandra log directory

2019-05-09 Thread Zephyr Guo (JIRA)


[ 
https://issues.apache.org/jira/browse/CASSANDRA-15090?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16836409#comment-16836409
 ] 

Zephyr Guo commented on CASSANDRA-15090:


Thank you for your review. [~michaelsembwever]

1.Take a look on Startup command, we put cassandra_parms after JVM_OPTS, so 
cassandra.logdir would override by  cassandra_parms. I mean that we cannot set 
cassandra.logdir by adding it to jvm.options.

{code:shell}
exec $NUMACTL "$JAVA" $JVM_OPTS $cassandra_parms -cp "$CLASSPATH" $props 
"$class"
{code}

2.We could put CASSANDRA_CONF CASSANDRA_LOG_DIR to /etc/profile.d, so that 
others(script, daemon, tool) could find cassandra log dir conveniently such as 
collectting log events agent.

3.All of cassandra‘s tools could take advantage of CASSANDRA_LOG_DIR, 
outputting log of tool to uniform place if necessary.


> Customize cassandra log directory
> -
>
> Key: CASSANDRA-15090
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15090-v1.patch
>
>
> Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that 
> we could customize log directory such as ‘/var/log/cassandra’ .
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Updated] (CASSANDRA-15090) Customize cassandra log directory

2019-04-17 Thread Zephyr Guo (JIRA)


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

Zephyr Guo updated CASSANDRA-15090:
---
Attachment: CASSANDRA-15090-v1.patch

> Customize cassandra log directory
> -
>
> Key: CASSANDRA-15090
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
> Project: Cassandra
>  Issue Type: New Feature
>Reporter: Zephyr Guo
>Assignee: Zephyr Guo
>Priority: Normal
> Attachments: CASSANDRA-15090-v1.patch
>
>
> Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that 
> we could customize log directory such as ‘/var/log/cassandra’ .
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org



[jira] [Created] (CASSANDRA-15090) Customize cassandra log directory

2019-04-17 Thread Zephyr Guo (JIRA)
Zephyr Guo created CASSANDRA-15090:
--

 Summary: Customize cassandra log directory
 Key: CASSANDRA-15090
 URL: https://issues.apache.org/jira/browse/CASSANDRA-15090
 Project: Cassandra
  Issue Type: New Feature
Reporter: Zephyr Guo
Assignee: Zephyr Guo


Add a new variable CASSANDRA_LOG_DIR (default: $CASSANDRA_HOME/logs) so that we 
could customize log directory such as ‘/var/log/cassandra’ .

 

 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

-
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org