The merge_chunk is called only when the heap tuples are spread across two cache chunks. Actually one cache chunk can accommodate one or more than heap pages. it needs some other way of handling.
4. for (i=0; i < 20; i++)
Better to replace this magic number with a meaningful macro.
5. "columner" is present in sgml file. correct it.
6. "max_cached_attnum" value in the document saying as 128 by default but in the code it set as 256.
I will start regress and performance tests. I will inform you the same once i finish.