From: Mason S. <mas...@en...> - 2010-05-11 21:49:42
|
I started the task to recognize more "Postgres-XC safe" queries. I initially focused on native pg_catalog based views like pg_settings. This is because it used by pgadmin. With the attached patch, pgadmin no longer complains about such queries because they are now supported. The PostgreSQL query rewriter appears to convert the view into a subquery. I modified the XC planner to check for pg_catalog table usage in the FROM clause (and subqueries thereof). In addition, pgadmin was sending "SET client_encoding to 'UNICODE'". It was being swallowed and proxied by Postgres-XC, but no response was sent back because it did not recognize the 'S' message response. I have now added support for that, too. Note that we have planned a whole separate task planned for proper SET handling. These commands will now be processed, but the user should not assume that these will remain set, due to Postgres-XC pooler. Again, we will address this in the future. With this patch pgadmin runs much more smoothly when connected to Postgres-XC. Users can view schema information and issue SQL statements. There is still an error window that pops up when clicking on a table because it issues a "SELECT count(*) FROM table", which is not yet supported in Postgres-XC. This problem will disappear soon however, as a patch is almost ready for basic aggregate support. Thanks, Mason -- Mason Sharp EnterpriseDB Corporation The Enterprise Postgres Company This e-mail message (and any attachment) is intended for the use of the individual or entity to whom it is addressed. This message contains information from EnterpriseDB Corporation that may be privileged, confidential, or exempt from disclosure under applicable law. If you are not the intended recipient or authorized to receive this for the intended recipient, any use, dissemination, distribution, retention, archiving, or copying of this communication is strictly prohibited. If you have received this e-mail in error, please notify the sender immediately by reply e-mail and delete this message. |