SPI_cursor_open failed to enforce that only read-only queries could be executed in read_only mode.  This could lead to various relatively-subtle failures, such as an allegedly stable function returning non-stable results. Bug goes all the way back to the introduction of read-only mode in 8.0. Per report from Gaetano Mendola.
SPI_cursor_open failed to enforce that only read-only queries could be
executed in read_only mode.  This could lead to various relatively-subtle
failures, such as an allegedly stable function returning non-stable results.
Bug goes all the way back to the introduction of read-only mode in 8.0.
Per report from Gaetano Mendola.

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