Comments on: Why PostgreSQL Already Has Query Hints http://thoughts.davisjeff.com/2011/02/05/why-postgresql-already-has-query-hints/ Ideas on Databases, Logic, and Language by Jeff Davis Tue, 19 Jun 2012 16:18:51 +0000 hourly 1 http://wordpress.org/?v=3.3.1 By: Mladen Gogala http://thoughts.davisjeff.com/2011/02/05/why-postgresql-already-has-query-hints/comment-page-1/#comment-1484 Mladen Gogala Wed, 20 Apr 2011 21:17:32 +0000 http://thoughts.davisjeff.com/?p=388#comment-1484 Those are not hints, the difference between "set mode" statements and hints is in scope. Hints are only relevant for the SQL in which they are specified, while "set mode" statements will affect all subsequent SQL statements as well. These "set mode" statements are also inferior to hints with respect to their capabilities, as there is no way to force the optimizer to use specific index. By adamantly refusing to implement hints, which exist in all other major databases, the creators of Postgres show two things: 1) They do not trust their users enough to allow them to control the optimizer. That is a very insulting attitude, to say the least. Hints are an option, nobody is forced to use them. The creators of Postgres are actually refusing to provide that option on the grounds of the user stupidity. I leave the further conclusions to the reader. 2) The Postgres is an art project, not a serious DB, fit for the commercial server rooms. By adamantly refusing to listen to repeated requests made by the corporate users like me, the creators of Postgres show why is Postgres still a small fish in the DB ocean and why is MySQL still the first choice when it comes to open source databases. As one of the Postgres "gurus", has written, "Postgres doesn't have hints because Postgres is not for profit". Great. Thanks for the warning, Bubba! After a "debate" on PostgreSQL performance group, I decided not to start any porting projects from Oracle. PostgreSQL is simply not there yet and it is questionable whether it will ever be. What is particularly infuriating is that some members of the PgSQL community are actually working for companies that sell closed source versions of PgSQL, which support hints and that they were advocating against hints. That leaves a bitter taste in my mouth and raises questions about how trustworthy both the company and the open source database that they are advocating are. Ingres lost to Oracle. Postgres community seems adamant to repeat the same mistakes and lose to Oracle once again. My advice to the Oraclites looking for an alternative is that Postgres is not it. Those are not hints, the difference between “set mode” statements and hints is in scope. Hints are only relevant for the SQL in which they are specified, while “set mode” statements will affect all subsequent SQL statements as well.
These “set mode” statements are also inferior to hints with respect to their capabilities, as there is no way to force the optimizer to use specific index.

By adamantly refusing to implement hints, which exist in all other major databases, the creators of Postgres show two things:

1) They do not trust their users enough to allow them to control the optimizer. That is a very insulting attitude, to say the least. Hints are an option, nobody is forced to use them. The creators of Postgres are actually refusing to provide that option on the grounds of the user stupidity. I leave the further conclusions to the reader.

2) The Postgres is an art project, not a serious DB, fit for the commercial server rooms. By adamantly refusing to listen to repeated requests made by the corporate users like me, the creators of Postgres show why is Postgres still a small fish in the DB ocean and why is MySQL still the first choice when it comes to open source databases. As one of the Postgres “gurus”, has written, “Postgres doesn’t have hints because Postgres is not for profit”. Great. Thanks for the warning, Bubba!

After a “debate” on PostgreSQL performance group, I decided not to start any porting projects from Oracle. PostgreSQL is simply not there yet and it is questionable whether it will ever be. What is particularly infuriating is that some members of the PgSQL community are actually working for companies that sell closed source versions of PgSQL, which support hints and that they were advocating against hints. That leaves a bitter taste in my mouth and raises questions about how trustworthy both the company and the open source database that they are advocating are. Ingres lost to Oracle. Postgres community seems adamant to repeat the same mistakes and lose to Oracle once again. My advice to the Oraclites looking for an alternative is that Postgres is not it.

]]>
By: rania http://thoughts.davisjeff.com/2011/02/05/why-postgresql-already-has-query-hints/comment-page-1/#comment-1442 rania Sat, 05 Mar 2011 08:05:10 +0000 http://thoughts.davisjeff.com/?p=388#comment-1442 It was brought to our attention that it was not written within the last year (only posts from the last year are eligible curt <a href="http://www.nicetick.com/air-jordan-9-retro-bin-23-multiple-sections-of-gold-white.html" rel="nofollow">air-jordan-9-retro</a> It was brought to our attention that it was not written within the last year (only posts from the last year are eligible
curt
air-jordan-9-retro

]]>
By: Jeff Davis http://thoughts.davisjeff.com/2011/02/05/why-postgresql-already-has-query-hints/comment-page-1/#comment-1436 Jeff Davis Sun, 06 Feb 2011 01:02:05 +0000 http://thoughts.davisjeff.com/?p=388#comment-1436 Heh. Well, don't let me stop you -- you're the one that should really be writing on this topic. Heh. Well, don’t let me stop you — you’re the one that should really be writing on this topic.

]]>
By: Greg Smith http://thoughts.davisjeff.com/2011/02/05/why-postgresql-already-has-query-hints/comment-page-1/#comment-1435 Greg Smith Sat, 05 Feb 2011 23:08:43 +0000 http://thoughts.davisjeff.com/?p=388#comment-1435 Looks like I should have typed a little faster..I have a 3/4 finished blog entry on this same topic queued up! Looks like I should have typed a little faster..I have a 3/4 finished blog entry on this same topic queued up!

]]>