For a module I am writing, a new model based on a SQL view performs poorly unless I add some indices to the account_invoice, account_move_line and account_voucher tables in PostgreSQL.
What is the best way for my module to add these same indices?
I know how to do this via overriding _auto_init and using _execute_sql.
Is there another way? A better way?
Can you tell us more about your Model and the SQL View? Is the reason of the question only about postgres performance issue ?
The module is at http://bazaar.launchpad.net/~rcarnes/openerp-shared/7.0/files/head:/beta/partner_account_history/ - without indices on the fields that are used to join and filter the tables in the query, the view take many seconds to return in list view. As soon as I create the indices, the view performs acceptably. The question is generic however - what is the best way to create indices that are needed for a module?