Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 7D83C200D23 for ; Thu, 5 Oct 2017 04:48:08 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 7BBB3160BD7; Thu, 5 Oct 2017 02:48:08 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id BFDCD1609DD for ; Thu, 5 Oct 2017 04:48:07 +0200 (CEST) Received: (qmail 30262 invoked by uid 500); 5 Oct 2017 02:48: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 30251 invoked by uid 99); 5 Oct 2017 02:48:06 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 05 Oct 2017 02:48:06 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id B0788C8B18 for ; Thu, 5 Oct 2017 02:48:04 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -99.202 X-Spam-Level: X-Spam-Status: No, score=-99.202 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id 8bkK2NfcVszc for ; Thu, 5 Oct 2017 02:48:03 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTP id 66F695FE6B for ; Thu, 5 Oct 2017 02:48:02 +0000 (UTC) Received: from jira-lw-us.apache.org (unknown [207.244.88.139]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 8A48AE04F4 for ; Thu, 5 Oct 2017 02:48:01 +0000 (UTC) Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 51B182431F for ; Thu, 5 Oct 2017 02:48:00 +0000 (UTC) Date: Thu, 5 Oct 2017 02:48:00 +0000 (UTC) From: "Kurt Greaves (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-10792) Make warning level for count of partitions in unlogged BatchStatement configurable. MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Thu, 05 Oct 2017 02:48:08 -0000 [ https://issues.apache.org/jira/browse/CASSANDRA-10792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16192400#comment-16192400 ] Kurt Greaves commented on CASSANDRA-10792: ------------------------------------------ This was solved in CASSANDRA-11529. Marking as duplicate but speak up if I'm missing something. > Make warning level for count of partitions in unlogged BatchStatement configurable. > ----------------------------------------------------------------------------------- > > Key: CASSANDRA-10792 > URL: https://issues.apache.org/jira/browse/CASSANDRA-10792 > Project: Cassandra > Issue Type: Improvement > Components: Configuration, CQL > Environment: CentOS, JDK 1.7, cluster of servers with 32 CPU each. > Reporter: Pawel Matras > Priority: Minor > Fix For: 4.x > > > Currently mutations for only one partition are allowed in BatchStatement. This amount is hard coded and not configurable as e.g. batch size. > General suggestion looks to be to consider multi partition unlogged batch statements as distributed anti pattern. As cure async inserts are proposed. Proposal might be OK if one consider only cassandra side of the system. > If a complete system have to share the same hardware things does not look so obvious any more. When cassandra shares the same hardware with other also clustered components lots of small async inserts become another well known distributed anti pattern. > In our case changing from unlogged batches to async inserts destabilize the system as async inserts require amounts of interrupts per second and context switches per second beyond what hardware can handle. With replica aware unlogged batches these parameters are at 40% of hardware limits and the system as a whole runs stable without visible hotspots (cassandra metrics looks almost the same on all nodes). > Unfortunately latest versions (we switched from 2.0.6 to 2.2.1) of cassandra log lots of warnings of type "Unlogged batch covering NN partitions detected against table XXX...". I found two workarounds to avoid this warning. The one is to use logged batches. But they generate 20% more interrupts and context switches and 400% more network load. The other way is more a hack and uses filtering features of logging framework and suppresses the warning just before it get logged. > So my suggestion is to allow users of cassandra to decide by configuration if they consider unlogged batches antipattern or not. This is partially done with the size of the batch, where size is configurable and not hardcoded to 5 kB. > It would be fine to stay consistent on this and let the user configure mutations for how many partitions to allow. > Of course there are several other solutions possible here, probably more costly. E.g warning could be produced only if batch is not token/replica aware. -- This message was sent by Atlassian JIRA (v6.4.14#64029) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org For additional commands, e-mail: commits-help@cassandra.apache.org