You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by "Adam Kocoloski (JIRA)" <ji...@apache.org> on 2010/06/12 20:46:13 UTC
[jira] Closed: (COUCHDB-794) skip costly selective receive for
delayed_commit
[ https://issues.apache.org/jira/browse/COUCHDB-794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Adam Kocoloski closed COUCHDB-794.
----------------------------------
Resolution: Fixed
Thanks Randall. I committed a functionally equivalent patch. The only real difference is that instead of
catch erlang:cancel_timer(Timer)
I did
if is_reference(Timer) -> erlang:cancel_timer(Timer); true -> ok end,
I presume checking the is_reference guard is cheaper than catching the badarg from trying to cancel a non-reference.
> skip costly selective receive for delayed_commit
> ------------------------------------------------
>
> Key: COUCHDB-794
> URL: https://issues.apache.org/jira/browse/COUCHDB-794
> Project: CouchDB
> Issue Type: Improvement
> Components: Database Core
> Affects Versions: 0.11
> Reporter: Randall Leeds
> Assignee: Adam Kocoloski
> Priority: Minor
> Fix For: 1.1
>
> Attachments: delayed_commits_no_receive.patch
>
>
> There's no reason to consume outstanding delayed_commit messages when a commit does occur since they can be ignored later if the waiting_delayed_commit flag is nil. The selective receive could be costly if the writer queue is long.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.