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

Benedict commented on CASSANDRA-9608:
-------------------------------------

bq. ReentrantLock: Oh, you propose RL to be pre-allocated

Vs

bq. Why do you suppose this to be the case? It only needs to be allocated on 
demand, but then must persist after it has been allocated.

bq. However, I feel like it's beyond the scope of this ticket

Agreed.  Perhaps we should go with a simple solution and then file a separate 
ticket to ensure no regression, as any of the approaches here will regress in 
some way.

The best compromise of approaches here is probably the ReentrantLock approach, 
as it is simplest and has the best behavioural profile, with the only cost 
being a modest increase in heap for contended objects (which are typically 
heavy already, else the chance of contention is low)

The other locking approaches are either more work and inferior to alternative 
(wait or lock free) approaches we could invest the time in, or have worse 
characteristics under contention (ie simple condition)

> Support Java 11
> ---------------
>
>                 Key: CASSANDRA-9608
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9608
>             Project: Cassandra
>          Issue Type: Task
>            Reporter: Robert Stupp
>            Assignee: Robert Stupp
>            Priority: Minor
>             Fix For: 4.x
>
>         Attachments: jdk_9_10.patch
>
>
> This ticket is intended to group all issues found to support Java 9 in the 
> future.
> From what I've found out so far:
> * Maven dependency {{com.sun:tools:jar:0}} via cobertura cannot be resolved. 
> It can be easily solved using this patch:
> {code}
> -        <dependency groupId="net.sourceforge.cobertura" 
> artifactId="cobertura"/>
> +        <dependency groupId="net.sourceforge.cobertura" 
> artifactId="cobertura">
> +          <exclusion groupId="com.sun" artifactId="tools"/>
> +        </dependency>
> {code}
> * Another issue is that {{sun.misc.Unsafe}} no longer contains the methods 
> {{monitorEnter}} + {{monitorExit}}. These methods are used by 
> {{o.a.c.utils.concurrent.Locks}} which is only used by 
> {{o.a.c.db.AtomicBTreeColumns}}.
> I don't mind to start working on this yet since Java 9 is in a too early 
> development phase.



--
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

Reply via email to