IndexError list index out of range

Asked by mrmango

When editing the res.partners.contact object within the web client or gtk client, the below error occurs. However this only seems to occur after adding a selection field within any selection values example being the default []. I expect an error like that, however if you go back to edit the same field, enter some values like [('select1','select1')], saving the object re produces the same error. Checking all fields with selection a\s the type, making sure all have values to select, does not make any difference. Upgrading to the latest version does not resolve this.

Environment Information :
System : Windows-Vista-6.1.7600
OS Name : nt
Operating System Release : Vista
Operating System Version : 6.1.7600
Operating System Architecture : 32bit
Operating System Locale : en_GB.cp1252
Python Version : 2.5.2
OpenERP-Client Version : 5.0.12
Last revision No. & ID :Bazaar Package not Found !Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/openerp-server/netsvc.py", line 247, in dispatch
    result = LocalService(service_name)(method, *params)
  File "/usr/lib/python2.5/site-packages/openerp-server/netsvc.py", line 76, in __call__
    return getattr(self, method)(*params)
  File "/usr/lib/python2.5/site-packages/openerp-server/service/web_services.py", line 577, in execute
    res = service.execute(db, uid, object, method, *args)
  File "/usr/lib/python2.5/site-packages/openerp-server/osv/osv.py", line 58, in wrapper
    return f(self, dbname, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/openerp-server/osv/osv.py", line 119, in execute
    res = pool.execute_cr(cr, uid, obj, method, *args, **kw)
  File "/usr/lib/python2.5/site-packages/openerp-server/osv/osv.py", line 111, in execute_cr
    return getattr(object, method)(cr, uid, *args, **kw)
  File "/usr/lib/python2.5/site-packages/openerp-server/addons/base/ir/ir_model.py", line 77, in write
    return super(ir_model,self).write(cr, user, ids, vals, context)
  File "/usr/lib/python2.5/site-packages/openerp-server/osv/orm.py", line 2659, in write
    result += self._columns[field].set(cr, self, id, field, vals[field], user, context=rel_context) or []
  File "/usr/lib/python2.5/site-packages/openerp-server/osv/fields.py", line 445, in set
    id_new = obj.create(cr, user, act[2], context=context)
  File "/usr/lib/python2.5/site-packages/openerp-server/addons/base/ir/ir_model.py", line 271, in create
    self.pool.get(vals['model'])._auto_init(cr, ctx)
  File "/usr/lib/python2.5/site-packages/openerp-server/osv/orm.py", line 1885, in _auto_init
    f_obj_type = get_pg_type(f) and get_pg_type(f)[0]
  File "/usr/lib/python2.5/site-packages/openerp-server/osv/orm.py", line 297, in get_pg_type
    if isinstance(f.selection, list) and isinstance(f.selection[0][0], (str, unicode)):
IndexError: list index out of range

Question information

Language:
English Edit question
Status:
Expired
For:
Odoo Server (MOVED TO GITHUB) Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
mrmango (register-coloniesonline) said :
#1

I can confirm on a new database freshly created. On the partner.title object, I added a new field that was a selection "type", I did not add any values in the list. This re produced the above error.

I went back and added values in the selection field, saved the object.

I then added a new char field, with default values. It still shows the same error over again.

It seems once it errors with a new selection having no values, it never allows new fields being added with the error appearing.

Revision history for this message
Launchpad Janitor (janitor) said :
#2

This question was expired because it remained in the 'Open' state without activity for the last 15 days.