Update:
Update:

< * Use bitmaps to combine existing indexes [performance]
> * Allow the creation of bitmap indexes which can be quickly combined
>   with other bitmap indexes
255,257c256,266
<   Bitmap indexes allow single indexed columns to be combined to
<   dynamically create a composite index to match a specific query. Each
<   index is a bitmap, and the bitmaps are AND'ed or OR'ed to be combined.
>   Bitmap indexes index single columns that can be combined with other bitmap
>   indexes to dynamically create a composite index to match a specific query.
>   Each index is a bitmap, and the bitmaps are bitwise AND'ed or OR'ed to be
>   combined.  Such indexes could be more compact if there are few unique
>   value.  Also, perhaps they can be lossy requiring a scan of the heap page
>   to find matching rows.
>
> * Allow non-bitmap indexes to be combined
>
>   Do lookups on non-bitmap indexes and create bitmaps in memory that can be
>   combined with other indexes.

atris/gpdb,lintzc/gpdb,tpostgres-projects/tPostgres,CraigHarris/gpdb,kaknikhil/gpdb,yuanzhao/gpdb,0x0FFF/gpdb,postmind-net/postgres-xl,arcivanov/postgres-xl,tpostgres-projects/tPostgres,zeroae/postgres-xl,Chibin/gpdb,royc1/gpdb,postmind-net/postgres-xl,rvs/gpdb,CraigHarris/gpdb,royc1/gpdb,0x0FFF/gpdb,jmcatamney/gpdb,tangp3/gpdb,rubikloud/gpdb,randomtask1155/gpdb,rvs/gpdb,adam8157/gpdb,Quikling/gpdb,yuanzhao/gpdb,edespino/gpdb,yazun/postgres-xl,royc1/gpdb,xinzweb/gpdb,atris/gpdb,Chibin/gpdb,janebeckman/gpdb,ahachete/gpdb,snaga/postgres-xl,yazun/postgres-xl,chrishajas/gpdb,kaknikhil/gpdb,adam8157/gpdb,greenplum-db/gpdb,xinzweb/gpdb,pavanvd/postgres-xl,0x0FFF/gpdb,zeroae/postgres-xl,arcivanov/postgres-xl,yuanzhao/gpdb,tangp3/gpdb,lpetrov-pivotal/gpdb,kaknikhil/gpdb,lintzc/gpdb,lisakowen/gpdb,edespino/gpdb,yuanzhao/gpdb,postmind-net/postgres-xl,janebeckman/gpdb,cjcjameson/gpdb,cjcjameson/gpdb,lpetrov-pivotal/gpdb,oberstet/postgres-xl,randomtask1155/gpdb,randomtask1155/gpdb,CraigHarris/gpdb,xuegang/gpdb,greenplum-db/gpdb,rvs/gpdb,foyzur/gpdb,techdragon/Postgres-XL,techdragon/Postgres-XL,lintzc/gpdb,lisakowen/gpdb,Quikling/gpdb,greenplum-db/gpdb,0x0FFF/gpdb,cjcjameson/gpdb,tangp3/gpdb,lpetrov-pivotal/gpdb,arcivanov/postgres-xl,CraigHarris/gpdb,ovr/postgres-xl,lisakowen/gpdb,ahachete/gpdb,ahachete/gpdb,edespino/gpdb,ahachete/gpdb,lpetrov-pivotal/gpdb,janebeckman/gpdb,kaknikhil/gpdb,xuegang/gpdb,atris/gpdb,jmcatamney/gpdb,Quikling/gpdb,cjcjameson/gpdb,50wu/gpdb,50wu/gpdb,ahachete/gpdb,royc1/gpdb,zaksoup/gpdb,randomtask1155/gpdb,kmjungersen/PostgresXL,foyzur/gpdb,0x0FFF/gpdb,lisakowen/gpdb,atris/gpdb,kaknikhil/gpdb,zeroae/postgres-xl,arcivanov/postgres-xl,Quikling/gpdb,Postgres-XL/Postgres-XL,royc1/gpdb,chrishajas/gpdb,0x0FFF/gpdb,ahachete/gpdb,yuanzhao/gpdb,rvs/gpdb,cjcjameson/gpdb,ovr/postgres-xl,oberstet/postgres-xl,Chibin/gpdb,xinzweb/gpdb,xuegang/gpdb,adam8157/gpdb,Chibin/gpdb,lintzc/gpdb,atris/gpdb,ashwinstar/gpdb,foyzur/gpdb,snaga/postgres-xl,greenplum-db/gpdb,royc1/gpdb,edespino/gpdb,chrishajas/gpdb,lisakowen/gpdb,50wu/gpdb,chrishajas/gpdb,lintzc/gpdb,jmcatamney/gpdb,zaksoup/gpdb,oberstet/postgres-xl,pavanvd/postgres-xl,janebeckman/gpdb,randomtask1155/gpdb,cjcjameson/gpdb,yazun/postgres-xl,lintzc/gpdb,CraigHarris/gpdb,yuanzhao/gpdb,greenplum-db/gpdb,greenplum-db/gpdb,xuegang/gpdb,Quikling/gpdb,pavanvd/postgres-xl,kmjungersen/PostgresXL,chrishajas/gpdb,lisakowen/gpdb,ashwinstar/gpdb,Postgres-XL/Postgres-XL,edespino/gpdb,atris/gpdb,50wu/gpdb,ashwinstar/gpdb,CraigHarris/gpdb,yuanzhao/gpdb,chrishajas/gpdb,lisakowen/gpdb,kaknikhil/gpdb,oberstet/postgres-xl,jmcatamney/gpdb,techdragon/Postgres-XL,chrishajas/gpdb,adam8157/gpdb,kaknikhil/gpdb,pavanvd/postgres-xl,edespino/gpdb,rvs/gpdb,ovr/postgres-xl,xuegang/gpdb,xinzweb/gpdb,janebeckman/gpdb,CraigHarris/gpdb,yazun/postgres-xl,rubikloud/gpdb,greenplum-db/gpdb,ahachete/gpdb,jmcatamney/gpdb,Postgres-XL/Postgres-XL,randomtask1155/gpdb,jmcatamney/gpdb,rubikloud/gpdb,lpetrov-pivotal/gpdb,rvs/gpdb,lpetrov-pivotal/gpdb,ahachete/gpdb,edespino/gpdb,tangp3/gpdb,50wu/gpdb,atris/gpdb,rvs/gpdb,cjcjameson/gpdb,yuanzhao/gpdb,Quikling/gpdb,oberstet/postgres-xl,adam8157/gpdb,ashwinstar/gpdb,tangp3/gpdb,Chibin/gpdb,Chibin/gpdb,CraigHarris/gpdb,yazun/postgres-xl,yuanzhao/gpdb,ashwinstar/gpdb,Chibin/gpdb,lintzc/gpdb,tpostgres-projects/tPostgres,janebeckman/gpdb,snaga/postgres-xl,foyzur/gpdb,kmjungersen/PostgresXL,50wu/gpdb,postmind-net/postgres-xl,janebeckman/gpdb,zeroae/postgres-xl,Quikling/gpdb,tangp3/gpdb,royc1/gpdb,xuegang/gpdb,ovr/postgres-xl,snaga/postgres-xl,foyzur/gpdb,edespino/gpdb,lpetrov-pivotal/gpdb,zeroae/postgres-xl,janebeckman/gpdb,xinzweb/gpdb,randomtask1155/gpdb,ashwinstar/gpdb,foyzur/gpdb,arcivanov/postgres-xl,rubikloud/gpdb,lpetrov-pivotal/gpdb,xinzweb/gpdb,Quikling/gpdb,foyzur/gpdb,Quikling/gpdb,zaksoup/gpdb,jmcatamney/gpdb,janebeckman/gpdb,ashwinstar/gpdb,arcivanov/postgres-xl,0x0FFF/gpdb,edespino/gpdb,royc1/gpdb,xinzweb/gpdb,lisakowen/gpdb,xuegang/gpdb,cjcjameson/gpdb,zaksoup/gpdb,Chibin/gpdb,kmjungersen/PostgresXL,50wu/gpdb,techdragon/Postgres-XL,Quikling/gpdb,tpostgres-projects/tPostgres,rvs/gpdb,CraigHarris/gpdb,kmjungersen/PostgresXL,yuanzhao/gpdb,zaksoup/gpdb,xuegang/gpdb,cjcjameson/gpdb,greenplum-db/gpdb,Postgres-XL/Postgres-XL,adam8157/gpdb,jmcatamney/gpdb,zaksoup/gpdb,janebeckman/gpdb,snaga/postgres-xl,kaknikhil/gpdb,rubikloud/gpdb,rubikloud/gpdb,pavanvd/postgres-xl,Chibin/gpdb,tangp3/gpdb,cjcjameson/gpdb,ashwinstar/gpdb,tpostgres-projects/tPostgres,tangp3/gpdb,0x0FFF/gpdb,xuegang/gpdb,randomtask1155/gpdb,rvs/gpdb,adam8157/gpdb,zaksoup/gpdb,rubikloud/gpdb,50wu/gpdb,edespino/gpdb,lintzc/gpdb,kaknikhil/gpdb,adam8157/gpdb,xinzweb/gpdb,atris/gpdb,Chibin/gpdb,ovr/postgres-xl,postmind-net/postgres-xl,chrishajas/gpdb,techdragon/Postgres-XL,kaknikhil/gpdb,Postgres-XL/Postgres-XL,lintzc/gpdb,rvs/gpdb,rubikloud/gpdb,foyzur/gpdb,zaksoup/gpdb