You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Yang Yang (Created) (JIRA)" <ji...@apache.org> on 2011/10/19 23:01:10 UTC

[jira] [Created] (CASSANDRA-3387) unnecessary locking in hint path due to InetAddress.getLocalhost()

unnecessary locking in hint path due to InetAddress.getLocalhost()
------------------------------------------------------------------

                 Key: CASSANDRA-3387
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3387
             Project: Cassandra
          Issue Type: Bug
            Reporter: Yang Yang
            Priority: Minor


in tests we found locking contention also due to the following




Stacks at 01:49:19 PM (uptime 10:54)


MutationStage:62 [BLOCKED] CPU time: 0:06
java.net.InetAddress.getLocalHost()
org.apache.cassandra.utils.UUIDGen.getClockSeqAndNode()
org.apache.cassandra.utils.UUIDGen.createTimeUUIDBytes(long)
org.apache.cassandra.utils.UUIDGen.getTimeUUIDBytes()
org.apache.cassandra.db.RowMutation.hintFor(RowMutation, ByteBuffer)
org.apache.cassandra.service.StorageProxy$4.run()
java.lang.Thread.run()





we can easily change every getLocalHost() call to use a cached value

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

        

[jira] [Resolved] (CASSANDRA-3387) unnecessary locking in hint path due to InetAddress.getLocalhost()

Posted by "Jonathan Ellis (Resolved) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-3387?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis resolved CASSANDRA-3387.
---------------------------------------

       Resolution: Fixed
    Fix Version/s: 1.0.1
         Reviewer: jbellis
         Assignee: Yang Yang

committed, thanks!
                
> unnecessary locking in hint path due to InetAddress.getLocalhost()
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-3387
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3387
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Yang Yang
>            Assignee: Yang Yang
>            Priority: Minor
>             Fix For: 1.0.1
>
>         Attachments: 3387.diff, 3387_v2.diff
>
>
> in tests we found locking contention also due to the following
> Stacks at 01:49:19 PM (uptime 10:54)
> MutationStage:62 [BLOCKED] CPU time: 0:06
> java.net.InetAddress.getLocalHost()
> org.apache.cassandra.utils.UUIDGen.getClockSeqAndNode()
> org.apache.cassandra.utils.UUIDGen.createTimeUUIDBytes(long)
> org.apache.cassandra.utils.UUIDGen.getTimeUUIDBytes()
> org.apache.cassandra.db.RowMutation.hintFor(RowMutation, ByteBuffer)
> org.apache.cassandra.service.StorageProxy$4.run()
> java.lang.Thread.run()
> we can easily change every getLocalHost() call to use a cached value

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

        

[jira] [Updated] (CASSANDRA-3387) unnecessary locking in hint path due to InetAddress.getLocalhost()

Posted by "Yang Yang (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-3387?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Yang Yang updated CASSANDRA-3387:
---------------------------------

    Attachment: 3387_v2.diff

version 2 , using fb utils
                
> unnecessary locking in hint path due to InetAddress.getLocalhost()
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-3387
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3387
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Yang Yang
>            Priority: Minor
>         Attachments: 3387.diff, 3387_v2.diff
>
>
> in tests we found locking contention also due to the following
> Stacks at 01:49:19 PM (uptime 10:54)
> MutationStage:62 [BLOCKED] CPU time: 0:06
> java.net.InetAddress.getLocalHost()
> org.apache.cassandra.utils.UUIDGen.getClockSeqAndNode()
> org.apache.cassandra.utils.UUIDGen.createTimeUUIDBytes(long)
> org.apache.cassandra.utils.UUIDGen.getTimeUUIDBytes()
> org.apache.cassandra.db.RowMutation.hintFor(RowMutation, ByteBuffer)
> org.apache.cassandra.service.StorageProxy$4.run()
> java.lang.Thread.run()
> we can easily change every getLocalHost() call to use a cached value

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

        

[jira] [Updated] (CASSANDRA-3387) unnecessary locking in hint path due to InetAddress.getLocalhost()

Posted by "Yang Yang (Updated) (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-3387?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Yang Yang updated CASSANDRA-3387:
---------------------------------

    Attachment: 3387.diff

use cached value , do not call getLocalhost() every time when we try to construct a hint

                
> unnecessary locking in hint path due to InetAddress.getLocalhost()
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-3387
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3387
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Yang Yang
>            Priority: Minor
>         Attachments: 3387.diff
>
>
> in tests we found locking contention also due to the following
> Stacks at 01:49:19 PM (uptime 10:54)
> MutationStage:62 [BLOCKED] CPU time: 0:06
> java.net.InetAddress.getLocalHost()
> org.apache.cassandra.utils.UUIDGen.getClockSeqAndNode()
> org.apache.cassandra.utils.UUIDGen.createTimeUUIDBytes(long)
> org.apache.cassandra.utils.UUIDGen.getTimeUUIDBytes()
> org.apache.cassandra.db.RowMutation.hintFor(RowMutation, ByteBuffer)
> org.apache.cassandra.service.StorageProxy$4.run()
> java.lang.Thread.run()
> we can easily change every getLocalHost() call to use a cached value

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

        

[jira] [Commented] (CASSANDRA-3387) unnecessary locking in hint path due to InetAddress.getLocalhost()

Posted by "Yang Yang (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-3387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13131011#comment-13131011 ] 

Yang Yang commented on CASSANDRA-3387:
--------------------------------------

oh, I didn't know that one.

yes, FBUtilities.getLocalAddress() is better
                
> unnecessary locking in hint path due to InetAddress.getLocalhost()
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-3387
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3387
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Yang Yang
>            Priority: Minor
>         Attachments: 3387.diff
>
>
> in tests we found locking contention also due to the following
> Stacks at 01:49:19 PM (uptime 10:54)
> MutationStage:62 [BLOCKED] CPU time: 0:06
> java.net.InetAddress.getLocalHost()
> org.apache.cassandra.utils.UUIDGen.getClockSeqAndNode()
> org.apache.cassandra.utils.UUIDGen.createTimeUUIDBytes(long)
> org.apache.cassandra.utils.UUIDGen.getTimeUUIDBytes()
> org.apache.cassandra.db.RowMutation.hintFor(RowMutation, ByteBuffer)
> org.apache.cassandra.service.StorageProxy$4.run()
> java.lang.Thread.run()
> we can easily change every getLocalHost() call to use a cached value

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

        

[jira] [Commented] (CASSANDRA-3387) unnecessary locking in hint path due to InetAddress.getLocalhost()

Posted by "Jonathan Ellis (Commented) (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-3387?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13130999#comment-13130999 ] 

Jonathan Ellis commented on CASSANDRA-3387:
-------------------------------------------

Why not just use FBUtilities.getLocalAddress?
                
> unnecessary locking in hint path due to InetAddress.getLocalhost()
> ------------------------------------------------------------------
>
>                 Key: CASSANDRA-3387
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3387
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Yang Yang
>            Priority: Minor
>         Attachments: 3387.diff
>
>
> in tests we found locking contention also due to the following
> Stacks at 01:49:19 PM (uptime 10:54)
> MutationStage:62 [BLOCKED] CPU time: 0:06
> java.net.InetAddress.getLocalHost()
> org.apache.cassandra.utils.UUIDGen.getClockSeqAndNode()
> org.apache.cassandra.utils.UUIDGen.createTimeUUIDBytes(long)
> org.apache.cassandra.utils.UUIDGen.getTimeUUIDBytes()
> org.apache.cassandra.db.RowMutation.hintFor(RowMutation, ByteBuffer)
> org.apache.cassandra.service.StorageProxy$4.run()
> java.lang.Thread.run()
> we can easily change every getLocalHost() call to use a cached value

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