From dev-return-60081-archive-asf-public=cust-asf.ponee.io@phoenix.apache.org Sun Feb 23 01:37:03 2020 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [207.244.88.153]) by mx-eu-01.ponee.io (Postfix) with SMTP id 43E2418063F for ; Sun, 23 Feb 2020 02:37:03 +0100 (CET) Received: (qmail 21667 invoked by uid 500); 23 Feb 2020 01:37:02 -0000 Mailing-List: contact dev-help@phoenix.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@phoenix.apache.org Delivered-To: mailing list dev@phoenix.apache.org Received: (qmail 21655 invoked by uid 99); 23 Feb 2020 01:37:02 -0000 Received: from mailrelay1-us-west.apache.org (HELO mailrelay1-us-west.apache.org) (209.188.14.139) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 23 Feb 2020 01:37:02 +0000 Received: from jira-he-de.apache.org (static.172.67.40.188.clients.your-server.de [188.40.67.172]) by mailrelay1-us-west.apache.org (ASF Mail Server at mailrelay1-us-west.apache.org) with ESMTP id 62FECE00B7 for ; Sun, 23 Feb 2020 01:37:00 +0000 (UTC) Received: from jira-he-de.apache.org (localhost.localdomain [127.0.0.1]) by jira-he-de.apache.org (ASF Mail Server at jira-he-de.apache.org) with ESMTP id 428897800CE for ; Sun, 23 Feb 2020 01:37:00 +0000 (UTC) Date: Sun, 23 Feb 2020 01:37:00 +0000 (UTC) From: "Kadir OZDEMIR (Jira)" To: dev@phoenix.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (PHOENIX-5709) Simplify index update generation code for consistent global indexes MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/PHOENIX-5709?page=3Dcom.atlass= ian.jira.plugin.system.issuetabpanels:all-tabpanel ] Kadir OZDEMIR updated PHOENIX-5709: ----------------------------------- Attachment: PHOENIX-5709.4.x-HBase-1.3.008.patch > Simplify index update generation code for consistent global indexes > ------------------------------------------------------------------- > > Key: PHOENIX-5709 > URL: https://issues.apache.org/jira/browse/PHOENIX-5709 > Project: Phoenix > Issue Type: Improvement > Affects Versions: 5.0.0, 4.14.3 > Reporter: Kadir OZDEMIR > Assignee: Kadir OZDEMIR > Priority: Major > Fix For: 5.0.0, 4.14.3 > > Attachments: PHOENIX-5709.4.x-HBase-1.3.001.patch, PHOENIX-5709.4= .x-HBase-1.3.002.patch, PHOENIX-5709.4.x-HBase-1.3.003.patch, PHOENIX-5709.= 4.x-HBase-1.3.004.patch, PHOENIX-5709.4.x-HBase-1.3.005.patch, PHOENIX-5709= .4.x-HBase-1.3.006.patch, PHOENIX-5709.4.x-HBase-1.3.007.patch, PHOENIX-570= 9.4.x-HBase-1.3.008.patch, PHOENIX-5709.master.001.patch, PHOENIX-5709.mast= er.002.patch, PHOENIX-5709.master.003.patch, PHOENIX-5709.master.004.patch,= PHOENIX-5709.master.005.patch, PHOENIX-5709.master.006.patch, PHOENIX-5709= .master.007.patch, PHOENIX-5709.master.008.patch, PHOENIX-5709.master.009.p= atch, PHOENIX-5709.master.010.patch, PHOENIX-5709.master.011.patch, PHOENIX= -5709.master.012.patch, PHOENIX-5709.master.013.patch > > Time Spent: 10h 20m > Remaining Estimate: 0h > > The implementation of the new global index design by PHOENIX-5156 essenti= ally introduced two coprocessors, IndexRegionObserver and GlobalIndexChecke= r. IndexRegionObserver is the counterpart of the existing Indexer coprocess= or that the previous global indexing feature uses. It implements the indexi= ng write path. GlobalIndexChecker implements the read verification and read= repair that happens on the read path. One of the main objectives of the de= sign behind new global indexing was to leverage as much existing indexing c= ode as possible. This objective has been achieved greatly as the entire ind= ex table update generation code implemented by various classes (including P= hoenixIndexBuilder, CachedLocalTable, NonTxIndexBuilder, IndexUpdateManager= ,=C2=A0 LocalTableState, ScannerBuilder, IndexMemStore and PhoenixIndexCode= c) is leveraged as it is mainly. This objective has served us well to deliv= er the new indexing feature quickly. The leveraged code is very complex, ov= er engineered, and inefficient, and is not bug free. It is very hard to mai= ntain. It is time to replace the complex set of classes with something dras= tically simpler and more efficient for the new design. -- This message was sent by Atlassian Jira (v8.3.4#803005)