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 4007B200C30 for ; Tue, 7 Mar 2017 18:07:42 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 3CFE4160B68; Tue, 7 Mar 2017 17:07:42 +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 85642160B65 for ; Tue, 7 Mar 2017 18:07:41 +0100 (CET) Received: (qmail 30619 invoked by uid 500); 7 Mar 2017 17:07:40 -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 30608 invoked by uid 99); 7 Mar 2017 17:07:40 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Mar 2017 17:07:40 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id 3C21B182919 for ; Tue, 7 Mar 2017 17:07:40 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.451 X-Spam-Level: * X-Spam-Status: No, score=1.451 tagged_above=-999 required=6.31 tests=[KAM_ASCII_DIVIDERS=0.8, RP_MATCHES_RCVD=-0.001, SPF_NEUTRAL=0.652] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id juStiHrh4t7E for ; Tue, 7 Mar 2017 17:07:39 +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 2871A60DBE for ; Tue, 7 Mar 2017 17:07:39 +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 AE1B7E05F0 for ; Tue, 7 Mar 2017 17:07:38 +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 1A6B724174 for ; Tue, 7 Mar 2017 17:07:38 +0000 (UTC) Date: Tue, 7 Mar 2017 17:07:38 +0000 (UTC) From: "Poorna Chandra (JIRA)" To: dev@tephra.incubator.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Resolved] (TEPHRA-35) Prune invalid transaction set once all data for a given invalid transaction has been dropped MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Tue, 07 Mar 2017 17:07:42 -0000 [ https://issues.apache.org/jira/browse/TEPHRA-35?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Poorna Chandra resolved TEPHRA-35. ---------------------------------- Resolution: Fixed > Prune invalid transaction set once all data for a given invalid transaction has been dropped > -------------------------------------------------------------------------------------------- > > Key: TEPHRA-35 > URL: https://issues.apache.org/jira/browse/TEPHRA-35 > Project: Tephra > Issue Type: New Feature > Reporter: Gary Helmling > Assignee: Poorna Chandra > Priority: Blocker > Fix For: 0.11.0-incubating > > Attachments: ApacheTephraAutomaticInvalidListPruning-v2.pdf > > > In addition to dropping the data from invalid transactions we need to be able to prune the invalid set of any transactions where data cleanup has been completely performed. Without this, the invalid set will grow indefinitely and become a greater and greater cost to in-progress transactions over time. > To do this correctly, the TransactionDataJanitor coprocessor will need to maintain some bookkeeping for the transaction data that it removes, so that the transaction manager can reason about when all of a given transaction's data has been removed. Only at this point can the transaction manager safely drop the transaction ID from the invalid set. > One approach would be for the TransactionDataJanitor to update a table marking when a major compaction was performed on a region and what transaction IDs were filtered out. Once all regions in a table containing the transaction data have been compacted, we can remove the filtered out transaction IDs from the invalid set. However, this will need to cope with changing region names due to splits, etc. -- This message was sent by Atlassian JIRA (v6.3.15#6346)