try 'vacuumdb -v -z -f dbname' (no quotes) and see what you get. I think you should also be using either FULL if you use vacuum or else the name of a table, column. I'm not sure if vaccum just assumes FULL as a default.
Thanks for ur reply. But I think if u don't use FULL word then postgres does full vacuum. I can say it from the messages that it printed for each table. also -v option is for VERBOSE that i already did for printing all garbage things that it does..And there is no such command name vacuumdb in 7.2. it is vacuum that I have done. And I am sure that my vacuum was FULL. but it seems that it has altered all the statistic and picking up wrong plan. Don't know why ?