Return-Path: X-Original-To: apmail-hive-dev-archive@www.apache.org Delivered-To: apmail-hive-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 2DB7618884 for ; Wed, 27 Apr 2016 01:02:18 +0000 (UTC) Received: (qmail 65705 invoked by uid 500); 27 Apr 2016 01:02:13 -0000 Delivered-To: apmail-hive-dev-archive@hive.apache.org Received: (qmail 65622 invoked by uid 500); 27 Apr 2016 01:02:13 -0000 Mailing-List: contact dev-help@hive.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hive.apache.org Delivered-To: mailing list dev@hive.apache.org Received: (qmail 65604 invoked by uid 99); 27 Apr 2016 01:02:13 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 27 Apr 2016 01:02:13 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id E0B072C1F54 for ; Wed, 27 Apr 2016 01:02:12 +0000 (UTC) Date: Wed, 27 Apr 2016 01:02:12 +0000 (UTC) From: "Eugene Koifman (JIRA)" To: dev@hive.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Created] (HIVE-13622) WriteSet tracking optimizations MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 Eugene Koifman created HIVE-13622: ------------------------------------- Summary: WriteSet tracking optimizations Key: HIVE-13622 URL: https://issues.apache.org/jira/browse/HIVE-13622 Project: Hive Issue Type: Bug Components: Transactions Affects Versions: 1.3.0, 2.1.0 Reporter: Eugene Koifman Assignee: Eugene Koifman HIVE-13395 solves the the lost update problem with some inefficiencies. 1. TxhHandler.OperationType is currently derived from LockType. This doesn't distinguish between Update and Delete but would be useful. See comments in TxnHandler. Should be able to pass in Insert/Update/Delete info from client into TxnHandler. 2. TxnHandler.addDynamicPartitions() should know the OperationType as well from the client. It currently extrapolates it from TXN_COMPONENTS. This works but requires extra SQL statements and is thus less performant. It will not work multi-stmt txns. See comments in the code. 3. TxnHandler.checkLock() see more comments around "isPartOfDynamicPartitionInsert". If TxnHandler knew whether it is being called as part of an op running with dynamic partitions, it could be more efficient. In that case we don't have to write to TXN_COMPONENTS at all during lock acquisition. Conversely, if not running with DynPart then, we can kill current txn on lock grant rather than wait until commit time. -- This message was sent by Atlassian JIRA (v6.3.4#6332)