Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 54D6B1849D for ; Sun, 28 Jun 2015 16:31:06 +0000 (UTC) Received: (qmail 30718 invoked by uid 500); 28 Jun 2015 16:31:06 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 30686 invoked by uid 500); 28 Jun 2015 16:31:06 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 30675 invoked by uid 99); 28 Jun 2015 16:31:06 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 28 Jun 2015 16:31:06 +0000 Date: Sun, 28 Jun 2015 16:31:06 +0000 (UTC) From: "Aleksey Yeschenko (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-9318) Bound the number of in-flight requests at the coordinator MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/CASSANDRA-9318?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14604765#comment-14604765 ] Aleksey Yeschenko commented on CASSANDRA-9318: ---------------------------------------------- bq. On flushing hints, we can ignore any that have been delivered (which we would prefer to do anyway). We ideally only flush the hints buffer after the timeout interval has elapsed, or alternatively if we run out of a generous memory allowance. This we can/should do. bq. With some small tweaks we would only need to keep a minimal piece of identifying information to invalidate the hint record, even after it has been written to disk. I would prefer not go after records that already made it to disk - the former should be good enough. In general, let's keep hints chatter to CASSANDRA-6230 ticket comments, please. As for the matter at hands - we should bound both write and read queues, but certainly not just by some fixed queue lengths. For reads we should be bound by a fixed size read buffer on one side, and SLA on the other side - that we could do once we have the ability to terminate the queries in flight. For writes, don't have an opinion formed, yet. > Bound the number of in-flight requests at the coordinator > --------------------------------------------------------- > > Key: CASSANDRA-9318 > URL: https://issues.apache.org/jira/browse/CASSANDRA-9318 > Project: Cassandra > Issue Type: Improvement > Reporter: Ariel Weisberg > Assignee: Ariel Weisberg > Fix For: 2.1.x, 2.2.x > > > It's possible to somewhat bound the amount of load accepted into the cluster by bounding the number of in-flight requests and request bytes. > An implementation might do something like track the number of outstanding bytes and requests and if it reaches a high watermark disable read on client connections until it goes back below some low watermark. > Need to make sure that disabling read on the client connection won't introduce other issues. -- This message was sent by Atlassian JIRA (v6.3.4#6332)