In find_mergeclauses_for_pathkeys, it's okay to return multiple merge clauses per path key.  Indeed, we *must* do so or we will be unable to form a valid plan for FULL JOIN with overlapping join conditions, eg select * from a full join b on a.v1 = b.v1 and a.v2 = b.v2 and a.v1 = b.v2.
In find_mergeclauses_for_pathkeys, it's okay to return multiple merge
clauses per path key.  Indeed, we *must* do so or we will be unable to
form a valid plan for FULL JOIN with overlapping join conditions, eg
select * from a full join b on
a.v1 = b.v1 and a.v2 = b.v2 and a.v1 = b.v2.

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