You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@couchdb.apache.org by "Randall Leeds (JIRA)" <ji...@apache.org> on 2010/06/10 21:36:13 UTC
[jira] Created: (COUCHDB-794) skip costly selective receive for
delayed_commit
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
Fix For: 1.1
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.
[jira] Updated: (COUCHDB-794) skip costly selective receive for
delayed_commit
Posted by "Adam Kocoloski (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/COUCHDB-794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Adam Kocoloski updated COUCHDB-794:
-----------------------------------
Assignee: Adam Kocoloski
Priority: Minor (was: Major)
> 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.
[jira] Closed: (COUCHDB-794) skip costly selective receive for
delayed_commit
Posted by "Adam Kocoloski (JIRA)" <ji...@apache.org>.
[ 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.
[jira] Updated: (COUCHDB-794) skip costly selective receive for
delayed_commit
Posted by "Randall Leeds (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/COUCHDB-794?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Randall Leeds updated COUCHDB-794:
----------------------------------
Attachment: delayed_commits_no_receive.patch
patch
> 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
> 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.