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

Adam Kocoloski commented on COUCHDB-1054:
-----------------------------------------

Nice find.  A few suggestions:

1) Have you tried using io:put_chars/2 instead of io:format in the log() 
function?  Now that the arguments are simple strings we don't need all the 
printf goop there.

2) If the output of get_log_message() is longer than 64 characters (and it 
usually is) it may make sense to do a list_to_binary there and send a refc 
binary to the logger so we don't copy the data.

> Better couch_log performance
> ----------------------------
>
>                 Key: COUCHDB-1054
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1054
>             Project: CouchDB
>          Issue Type: Improvement
>            Reporter: Filipe Manana
>            Assignee: Filipe Manana
>         Attachments: COUCHDB-1054-2.patch, COUCHDB-1054.patch
>
>
> Building the messages to write to the console and the log file can be done 
> outside the couch_log gen_event. This significantly increases the parallelism 
> when many processes log messages. The following relaximation test graph shows 
> a throughput increase using the attached patch against current trunk:
> http://graphs.mikeal.couchone.com/#/graph/0379dbdaef29b1c0fbf03421540243f7

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to