Using canonicalize_qual() to get rid of duplicate index predicate conditions is overkill; set_union() does the job about as well, and much more efficiently.  Furthermore this avoids assuming that canonicalize_qual() will check for duplicate clauses at all, which it may not always do.
Using canonicalize_qual() to get rid of duplicate index predicate
conditions is overkill; set_union() does the job about as well, and
much more efficiently.  Furthermore this avoids assuming that
canonicalize_qual() will check for duplicate clauses at all, which
it may not always do.

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