Return-Path: Delivered-To: apmail-activemq-dev-archive@www.apache.org Received: (qmail 24876 invoked from network); 1 May 2008 09:23:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 1 May 2008 09:23:32 -0000 Received: (qmail 7774 invoked by uid 500); 1 May 2008 09:23:33 -0000 Delivered-To: apmail-activemq-dev-archive@activemq.apache.org Received: (qmail 7756 invoked by uid 500); 1 May 2008 09:23:33 -0000 Mailing-List: contact dev-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list dev@activemq.apache.org Received: (qmail 7745 invoked by uid 99); 1 May 2008 09:23:33 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 May 2008 02:23:33 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.140] (HELO brutus.apache.org) (140.211.11.140) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 01 May 2008 09:22:48 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 25D94234C10E for ; Thu, 1 May 2008 02:19:44 -0700 (PDT) Message-ID: <329272600.1209633584153.JavaMail.jira@brutus> Date: Thu, 1 May 2008 02:19:44 -0700 (PDT) From: "Gary Tully (JIRA)" To: dev@activemq.apache.org Subject: [jira] Closed: (AMQ-1689) (NIO)DataFileAppender does to many sync or force calls when there is little or no concurrency In-Reply-To: <1574296567.1209129283471.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/activemq/browse/AMQ-1689?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Gary Tully closed AMQ-1689. --------------------------- > (NIO)DataFileAppender does to many sync or force calls when there is little or no concurrency > --------------------------------------------------------------------------------------------- > > Key: AMQ-1689 > URL: https://issues.apache.org/activemq/browse/AMQ-1689 > Project: ActiveMQ > Issue Type: Improvement > Components: Message Store > Affects Versions: 5.1.0 > Environment: Windows, NIO force and File sync perform poorly > Reporter: Gary Tully > Assignee: Hiram Chirino > Priority: Minor > Fix For: 5.1.0 > > Attachments: fileAppenderBatch.patch > > > Where NIO channel force and fileDescriptor.sync perform poorly and there is little concurrently, the kaha DataFileAppender performs poorly. > A test case where a single producer and consumer operate from either ends of a networked pair of brokers shows the problem. It takes ~3 minutes to send 1000 messages on windows!. The problem is that 70% of the time is spent in NIO channel.flush() > The flush is batched if there are concurrent writes, but otherwise, a single write is flushed immediately. > My proposal is to have the batch processor batch till a batch is full or till a sync flag is present in a write command or till some timeout expires or if the appender is closed. > This reduces the number of force calls and with this change, my test case can do 1000 messages in ~1minute. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.