On Fri, Sep 21, 2018 at 5:40 PM Haribabu Kommi <kommi.harib...@gmail.com> wrote:
> > On Fri, Sep 21, 2018 at 5:05 PM Andres Freund <and...@anarazel.de> wrote: > >> Hi, >> >> On 2018-09-21 16:57:43 +1000, Haribabu Kommi wrote: >> >> > For example, in the sequential scan, the heap returns the slot with >> > the tuple or with value array of all the columns and then the data gets >> > filtered and later removed the unnecessary columns with projection. >> > This works fine for the row based storage. For columnar storage, if >> > the storage knows that upper layers needs only particular columns, >> > then they can directly return the specified columns and there is no >> > need of projection step. This will help the columnar storage also >> > to return proper columns in a faster way. >> >> I think this is an important feature, but I feel fairly strongly that we >> should only tackle it in a second version. This patchset is already >> pretty darn large. It's imo not just helpful for columnar, but even for >> heap - we e.g. spend a lot of time deforming columns that are never >> accessed. That's particularly harmful when the leading columns are all >> NOT NULL and fixed width, but even if not, it's painful. >> > > OK. Thanks for your opinion. > Then I will first try to cleanup the open items of the existing patch. > Here I attached further cleanup patches. 1. Re-arrange the GUC variable 2. Added a check function hook for default_table_access_method GUC 3. Added a new hook validate_index. I tried to change the function validate_index_heapscan to slotify, but that have many problems as it is accessing some internals of the heapscandesc structure and accessing the buffer and etc. So I added a new hook and provided a callback to handle the index insert. Please check and let me know comments? I will further add the new API's that are discussed for Zheap storage and share the patch. Regards, Haribabu Kommi Fujitsu Australia
0003-validate-index-scan-hook-addition.patch
Description: Binary data
0001-Movting-GUC-variable-declartion-to-proper-place.patch
Description: Binary data
0002-check_default_table_access_method-hook-to-verify-the.patch
Description: Binary data