On Dec 19, 2007 1:57 AM, olivier boissard <olivier.boissard@xxxxxxxxx> wrote: > Scott Marlowe a écrit : > > > On Dec 18, 2007 4:21 PM, olivier.boissard@xxxxxxxxx > > <olivier.boissard@xxxxxxxxx> wrote: > > > >> Hello, > >> > >> My purpose is to uses different query plan depending on queries > >> I got the following problem : some queries are taking too much time and > >> postgresql does not take the most relevant index in account. > >> I search on internet and found that no HINT function was available in > >> postgresl. > >> I tried to change indexes parameters in postgresql.conf but eache time I > >> set a param to OFF (example nested_loop ,seqscan, ...) , some queries > >> freeze database . > >> > >> How can we force postgresql to use a plan ? > >> > > > > That's not how we do things in postgresql land (usually). > > > > You should figure out WHY your queries are picking the wrong plan, and > > then see if you can get them to pick the right ones. If it's a query > > planner bug, you report it here, or the perform or general lists, and > > it gets fixed. Generic hints aren't likely to happen any time soon, > > although I do believe 8.3 is introducing function costing of some > > kind, which seems like a useful idea. > > > > But, back to fixing your slow queries. > > > > 1: Increase statistics targets on the guilty columns and reanalyze. > > 2: Run explain analyze select.... and post the output here. > > 3: ??? > > 4: profit? > > > Thanks for reply > > I will extract some queries. > I want to precise that I use postgresql 8.1.0 . First step would be to update to the latest 8.1.x version, whatever that is. There have been a LOT of fixes in the 8.1 branch since 8.1.0 came out, and one might be a fix for your query problem. minor updates are strictly bug and security fixes, so they're not likely to cause any problems. ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings