[
https://issues.apache.org/jira/browse/CASSANDRA-734?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12804294#action_12804294
]
Jeff Hodges edited comment on CASSANDRA-734 at 1/24/10 8:19 PM:
----------------------------------------------------------------
bq. NBHM is lock-free (which actually means it uses lower-level CAS which is
much cheaper).
How does a NBHM solve the problem
get-and-then-put-but-only-instantiate-the-object-at-all-if-get-is-null? I
haven't seen any docs on get with conditional set and conditional instantiation.
bq. wouldn't we just have to undo that for CASSANDRA-44?
Not if we do the initTable work, and then later turn it in a NBHM. With
initTable in place, and we go to update a Table, we would only have to do a put
without the conditional instantiation.
was (Author: jmhodges):
.bq NBHM is lock-free (which actually means it uses lower-level CAS which
is much cheaper).
How does a NBHM solve the problem
get-and-then-put-but-only-instantiate-the-object-at-all-if-get-is-null? I
haven't seen any docs on get with conditional set and conditional instantiation.
.bq wouldn't we just have to undo that for CASSANDRA-44?
Not if we do the initTable work, and then later turn it in a NBHM. With
initTable in place, and we go to update a Table, we would only have to do a put
without the conditional instantiation.
> Table.open has a broken lock in it
> ----------------------------------
>
> Key: CASSANDRA-734
> URL: https://issues.apache.org/jira/browse/CASSANDRA-734
> Project: Cassandra
> Issue Type: Bug
> Affects Versions: 0.5
> Reporter: Jeff Hodges
> Assignee: Jeff Hodges
> Priority: Minor
> Fix For: 0.6
>
> Attachments: broken_lock_in_table_open.patch
>
>
> Table.open's lock is used around the Map#put method call but not the #get.
> This makes it a source of spurious bugs. The attached patch synchronizes the
> entire Table.open method and removes the unused createLock static.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.