Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VmTZ6-0004dK-52 for pgsql-hackers@arkaria.postgresql.org; Fri, 29 Nov 2013 19:17:24 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.80) (envelope-from ) id 1VmTZ5-0000yF-GZ for pgsql-hackers@arkaria.postgresql.org; Fri, 29 Nov 2013 19:17:23 +0000 Received: from makus.postgresql.org ([2001:4800:7903:4::125]) by malur.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VmTZ3-0000y6-3t for pgsql-hackers@postgresql.org; Fri, 29 Nov 2013 19:17:21 +0000 Received: from smtp-outbound-2.vmware.com ([208.91.2.13]) by makus.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1VmTYy-0000Id-8g for pgsql-hackers@postgresql.org; Fri, 29 Nov 2013 19:17:19 +0000 Received: from sc9-mailhost2.vmware.com (sc9-mailhost2.vmware.com [10.113.161.72]) by smtp-outbound-2.vmware.com (Postfix) with ESMTP id DDD8829EB6; Fri, 29 Nov 2013 11:17:14 -0800 (PST) Received: from zcs-prod-ext-mta-2.vmware.com (zcs-prod-ext-mta-2.vmware.com [10.113.62.224]) by sc9-mailhost2.vmware.com (Postfix) with ESMTP id D8F36B0495; Fri, 29 Nov 2013 11:17:14 -0800 (PST) Received: from zcs-prod-ext-mta-2.vmware.com (localhost.localdomain [127.0.0.1]) by zcs-prod-ext-mta-2.vmware.com (Postfix) with ESMTP id EDF93C005E; Fri, 29 Nov 2013 11:17:35 -0800 (PST) Received: from [192.168.1.90] (zimbra-prod-ext-proxy-vip.vmware.com [10.113.63.87]) by zcs-prod-ext-mta-2.vmware.com (Postfix) with ESMTPSA; Fri, 29 Nov 2013 11:17:32 -0800 (PST) Message-ID: <5298E834.4090408@vmware.com> Date: Fri, 29 Nov 2013 21:17:08 +0200 From: Heikki Linnakangas Organization: VMware User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20131005 Icedove/17.0.9 MIME-Version: 1.0 To: Alexander Korotkov CC: Alvaro Herrera , Tomas Vondra , pgsql-hackers Subject: Re: GIN improvements part 1: additional information References: <524E7C3B.7060402@vmware.com> <5250A7A1.2010701@fuzzy.cz> <52546434.1000303@vmware.com> <52548F79.6030407@fuzzy.cz> <52569635.5090808@vmware.com> <527A03AF.9010501@vmware.com> <20131106153604.GM5809@eldon.alvh.no-ip.org> <528CEB34.7080702@vmware.com> <52950F46.2080009@vmware.com> <5298615C.7060102@vmware.com> In-Reply-To: <5298615C.7060102@vmware.com> Content-Type: multipart/mixed; boundary="------------030602000803080507010208" X-Pg-Spam-Score: -6.9 (------) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org This is a multi-part message in MIME format. --------------030602000803080507010208 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 11/29/2013 11:41 AM, Heikki Linnakangas wrote: > On 11/28/2013 09:19 AM, Alexander Korotkov wrote: >> On Wed, Nov 27, 2013 at 1:14 AM, Heikki Linnakangas >> >> wrote: >> >>> On 11/26/13 15:34, Alexander Korotkov wrote: >>> >>>> What's your plans about GIN now? I tried to rebase packed posting lists >>>> with head. But I found that you've changed interface of placeToPage >>>> function. That's conflicts with packed posting lists, because >>>> dataPlaceToPageLeaf needs not only offset number to describe place to >>>> insert item pointer. Do you like to commit rework of handling GIN >>>> incomplete splits before? >>> >>> Yeah, I'm planning to get back to this patch after committing the >>> incomplete splits patch. I think the refactoring of the WAL-logging >>> that I >>> did in that patch will simplify this patch, too. I'll take a look at >>> Michael's latest comments on the incomplete splits patch tomorrow, so I >>> should get back to this on Thursday or Friday. >> >> Should I try to rebase this patch now or you plan to do it yourself? Some >> changes like "void *insertdata" argument make me think you have some >> particular plan to rebase this patch, but I didn't get it exactly. > > Here's rebased version. I'll continue reviewing it now.. Another update. Fixes a bunch of bugs. Mostly introduced by me, but a couple were present in your v16: * When allocating the entry->list buffer in a scan, it must be large enough for the max number of items that can fit on a compressed page, whether the current page is compressed or not. That's because the same buffer is reused on subsequent pages, which might be compressed. * When splitting a leaf page during index creation, missed the trick that's present in current master, to choose the split point so that left page is packed as full as possible. I put that back, it makes newly-built indexes somewhat smaller. (I wonder if we should leave some free space for future updates. But that's a separate patch, let's keep the current behavior in this patch) I'll continue reviewing next week.. - Heikki --------------030602000803080507010208 Content-Type: application/x-gzip; name="gin-packed-postinglists-18.patch.gz" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="gin-packed-postinglists-18.patch.gz" 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 4CgR8R/R1uL2gVaR0kFzegsygptGYoWPy/Hew/G7BO5nc9QBCGffWU80qysK aClW0cvEY3QV+Bxk//FPrshBhWcw79tE1yss4lFi+tPxsKIDn/vTZEKqjvhM UoUXIAzerOrm4giYDLPz1sHHj+8/Ruqhc7nO3ThUz5GVLrqjRnnoWJJscCxd EoCVgYybhEHAN9u520+gFPZlauakTML2LEflUFCrUbtW/Xzq3XlYv7CQ+bDj UwJgFw6lle9W51sIf3F0EHBDzMCuSbocaeC4xgQ9Y9gxpuN4JOnESB1DmBQT Jt7Ad8g86T8OUFfbmZmZSa194f8jT3A49kemCNKJnk4Lrtda2reSrP8JdvI/ QbNewU46JZVNaWlLuWiYTbNsOMD746/AfEJgwU/s80FH9bPxtunc3SlonrN5 p+w0FPQ/Zu1wM1/w45wc6vTddyi9pB3zOI6Q33c1ctnQafabImIglFjjFnwG 6McfOj42SyRkoBo6mM7HnJnYuHkUwK/g082PwCN+sE0fInlv3r/2CR5t+a9T Nln/lU7lr1Lm6qG2fgXzieO10Q2AyZ60jWmp5o2eYeDzxymt2+ZL5aJaGr1E 1M4zLFpHdNktzemm10QqoFOjckgLZ/KsTYKP6sbr+IY05wN6mAYYrnKDaQrO 9UCj7DqSnPsTR0gl/q0vbFieYPpVbWmwLqpYj0OP49YIWVb2jSL9CT0nHfX2 +U9OhsiTw+ODtycf3h++Oz74eHJ0+I+Dee+vn3eLkp8yCmlHDD/Ogt1ZDPzV xyS1WTYZQG5tE73i2nIOFrtncHKlG5DPd7S0nnfi5lTJyWlNd7UGGndppSXM mRk7+NfSN03PElEjxfCPHGz3ksJhx6OwLOr3mVbMAWbT9H05m7LxA10CenAC 1wObn4hPtP0ylApfZwIr40/pmr7/LXKoqVYTGyRXH/KsLwKLrr7gXFSWrGig FNOrc1CHfzX+FPkgHLbvrokLq1ORqss48+mKnlLxlJMQn2dEVzQQtZeRA8pW 0WYK5QCCqthclEszEeBt9kwciNRmsa0m6mY8FIZhEUUyvp6WeyLxDLCjU926 Bo7hZ4KzlAIrKxD9yBk9RQ/jbk8MR1Inqp9dJo56MAQHelrIHDXCenW6zKoL D2HhDItLe7Q+N86+A1n9NFeonrrnpDOo6IHnaOI8zvSRHrJtR2FjezP8BBQ3 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 SPo1oujiW+jM6MRA3P6NmvtAzahnaYH7BqAjeWa8g+V0Mz+8e/P+xd/1TUI7 g3ebWnSyWle5thNtbTpU9t4x7X4RYlUPYgZ7jgeO2r9YDeP8HCN90XlLJ8OH 8S6yoVulVT4xA8TqDOs5lSuZ0odoj6ROzrc6vTEHr/EQTqJjSsl/mlBSb+4j nsgUEpXEmMHbTVXIQYZLOszPuCujuh9NHquq9dNPP33DI1B0L0U76/n+1jYg oaBDG3klAKAulHMRllFMTwsQpxG65OksISsw8wTd/PVAFECdTnyAUhTxdILh kdQXo7hW73ZBZyL7wmz6glqhW+qF5GX43Rh7B6Q/08yipjfim+G9a1nwhQjf DMp3RwkaevNK5p76lyDdlhdZCye3eb3cEe+bnAaf9m3gm3ZmPu2mZluILcPQ ey22qvBTVsPKNb+K9VywO1m7/l0MywmNh3VXmxav0lFaXCTIw1OGC6fQ2hd+ sYBb2tratS/WVwBgZy5+lRHpKwGcYe5JHFbUSEJihrMKHmEB8IYweGt7K9ra cZ2IEV7JJ7r6s0xvrG2kHnwA9TUNZXX9aU55u7FEFrsihs0sTGhKvewH7Dcs vtmGBmr2g2puUGJLeEFT0pKyfhnYAky0LMpleEVH8hibfk/Ms7E4O/kVqKpy e9+Vo2xOA+kSbm+tRdu76w7b+IcebkWlWVVqztXkiQRoVXcNOA/7vBv0ujV+ OQi2OCdzW1amjMuGpZnF09hd356r8dgadxFV7kZzA+Zfp7rlV4L/rW543dP4 x1zsjoDsFhd8ni8HO543cOcwDYM6z51IO0dPbsbJIDlTnB1fgrWi3u6mk3X0 gU05PzNZF7bgZveUrKtzj8m67OLuKVlX596SdXXuOVlX5z6TdXXuNVlX596S dXXuN1lX596SdZWqh1Tc/Oe7+N8hZxf3b5CzixtWc3YFQwQ2AiECGwuFCHjp rcvLw/Fcp52yWphzaFo1ED6nP/vewL84k/gNpTTg2v0GKvweUQpe/AB7K/xp Yxds4Eh5rV8xouFesox1FsgyRm2lx31lGevcY5axzv1lGevcW5axTjDL2G1C R+qzjDUNG2mAyPeUZWzRII/XDRKIuS3D+UNKF+RgRGcRTJEzL21YZ17aMCcG QJkCLRgGIS+hcyocAcwCi0+ddSWNCXqGWbg7lB1oQSnULCz5VLKva9FnAAQP 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 Hcn3weBnRBX9BAQroO6s7UU762ulioGB7VXFfTkSlKob8pWMrUTrDL9nR1kc jq6iWcb5k4A2GBLY24621ndKVJZKfhC5DmOkqzLzEXQFSUoh6aE1qeF/2QOJ sgiwxZqTbGAuAQqiBAbwRkgQpRLXnCuwMMSf6VGE9syQ1FuTyzGxCnC0GLvA 5/w39uj/pl6JqgsGJtfvjCRGf80S8hcprumL9YaEhhqLyP7O+NMwOQ1Y2LXT iZskCm/R7lov2l3fcx6Er3QSRPNlZ46EN0sUZkgzoDUknLpyd5VeZ4qvS97z hUmsAN4eK2otDbPP/0VY5FvSolwFLfwWa8Ee72Z1MYJf+GOXbXOKa8zYQq3c KiJJSXqds6N73IE9oXKEykIXIUjzNnajre2y3vJeaZ7NKwQ/hhopeUqO4ZLh r2ggahkCxTV5uIuIAO+Y/5cP/61/oRtHKYsoH4OjPi6fT1t1nQbOVF0zlZYr 9Co7eO2aKvDetff1OF+cMcviR1fXLtHWOLLd6YDrSUbWOZrdQk3Me44xqa3h RypxWW/kfng4sB+nbRN/5BRPmZ2V7pEn43IlLjNKTX66UJ9ymjpnP54nVbnv 7LxmdVSFDiIihxkzG3FHBnLCXjqwcQpGIa5h8+echcy2arGBgDcUTJOLDqTk A6RTq+GrlTITt7u5Fu1uuQVJb30p/i/GnY7oQdSrw5/eHtgt3g82mUvuUN8S OnHr8oX+MyDZypywY1Q8NAg6lmahh2JnN9rd5GdCnCJRAQw7Osf0i4PsBWeJ o/xwP73Jzj8mfdTZD4tRpOTvLB/A+0D/shu6ouSNOOmLco45tUKeWE/JJ7Cm RVsPrPXHMnbQPX0lnZF3shUeyLoj1S1C7sZc+ZlFOQKh0IA/KdhqU2s03GcI dXb3rAPCrbet/Sl4CTpvgGjN+BSEhtLdapcKOLuVm5fJ5etwlE6kdJhbM+zl 8+Pn6jP9+ubg+SuGylwT39yIXTyW7jPHVX6uLc/poWmHaCrfHL0T7STAyxCW WZrHH6ik+0cgSnGReJtuO/4j7r1e1ifFvjHEELZKfJ/HdrKbqM8MkgDPahqt aFY0PBwsbs+gs0UiVa687W5DcNpZUgXfve/aiqYppwLWbjNaT2WXWZOgjt9w xGJbofWPQUf51UZkMDLN08mr2+ricXD2tro1hXTcxD+QaYngQsfGsqd/uWbZ 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 olBzAQIA --------------030602000803080507010208 Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers --------------030602000803080507010208--