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 39FE9200D02 for ; Sat, 9 Sep 2017 08:05:18 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 387221609BE; Sat, 9 Sep 2017 06:05:18 +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 7D92F1609A7 for ; Sat, 9 Sep 2017 08:05:17 +0200 (CEST) Received: (qmail 75272 invoked by uid 500); 9 Sep 2017 06:05:16 -0000 Mailing-List: contact dev-help@tephra.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@tephra.incubator.apache.org Delivered-To: mailing list dev@tephra.incubator.apache.org Received: (qmail 75261 invoked by uid 99); 9 Sep 2017 06:05:16 -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; Sat, 09 Sep 2017 06:05:16 +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 F24DACFF2E for ; Sat, 9 Sep 2017 06:05:15 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -100.002 X-Spam-Level: X-Spam-Status: No, score=-100.002 tagged_above=-999 required=6.31 tests=[RP_MATCHES_RCVD=-0.001, SPF_PASS=-0.001, USER_IN_WHITELIST=-100] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id tPIddhYUMbxv for ; Sat, 9 Sep 2017 06:05:14 +0000 (UTC) Received: from mailrelay1-us-west.apache.org (mailrelay1-us-west.apache.org [209.188.14.139]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTP id 8414D60D9C for ; Sat, 9 Sep 2017 06:05:13 +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 63D3FE0F0E for ; Sat, 9 Sep 2017 06:05:11 +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 B81D22416F for ; Sat, 9 Sep 2017 06:05:08 +0000 (UTC) Date: Sat, 9 Sep 2017 06:05:08 +0000 (UTC) From: "ASF GitHub Bot (JIRA)" To: dev@tephra.incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (TEPHRA-241) Introduce a way to limit the size of a transaction MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Sat, 09 Sep 2017 06:05:18 -0000 [ https://issues.apache.org/jira/browse/TEPHRA-241?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16159773#comment-16159773 ] ASF GitHub Bot commented on TEPHRA-241: --------------------------------------- Github user anew commented on the issue: https://github.com/apache/incubator-tephra/pull/48 After rebasing on latest master, another travis build is running; waiting for that to finish. > Introduce a way to limit the size of a transaction > -------------------------------------------------- > > Key: TEPHRA-241 > URL: https://issues.apache.org/jira/browse/TEPHRA-241 > Project: Tephra > Issue Type: Improvement > Components: api, manager > Affects Versions: 0.12.0-incubating > Reporter: Andreas Neumann > Assignee: Andreas Neumann > Fix For: 0.13.0-incubating > > > When clients perform a huge number of writes in a short transaction, that can result in huge change sets. For example, if a client performs 10M writes and sends that change set over, that can easily be 1GB large. The transaction manager will keep this in memory. It will also write this as an edit to the transaction log. > Assume it runs out of memory because the change set is too large. It crashes and when it restarts, it will replay the log, load that huge change set again, and crash again. > To prevent this kind of systemic failure, and to encourage developers to use long transactions when performing many writes, we can introduce two new properties in the configuration: > - change set warn threshold: if a change set exceeds this size, a warning is logged. > - change set reject threshold: if a change set exceeds this size, it is rejected (canCommit will throw an exception) and that will fail the transaction. > Both thresholds should be Long.MAX_VALUE by default, to preserve existing behavior after upgrade. -- This message was sent by Atlassian JIRA (v6.4.14#64029)