我正在尝试升级为Openerp编写的模块。虽然它在本地计算机和本地openerp服务器上工作正常。当我尝试通过SVN将文件更新到分阶段服务器时,它给出了以下错误。该错误表明他们正在尝试将记录插入到DB中,其中实际上是更新而不是插入。我担心直接从Postgres数据库中删除该记录,我认为它可能会成功。
在我在分阶段服务器上进行SVN更新之前,我还删除了所有现有文件。可能这可能是陷阱,但我不太确定。让我知道你们认为这个问题的最佳解决方案。以下是在SVN更新后重启时Openerp Server中显示的错误消息。服务器从此处停止,永不结束。
但是,当我恢复文件或删除文件并更新服务器就像魅力一样。
module abc: loading objects
[2011-09-14 08:12:49,425][oe_test] INFO:init:module abc:registering objects
[2011-09-14 08:12:49,432][oe_test] INFO:init:module abc: creating or updating database tables
[2011-09-14 08:12:49,434][oe_test] DEBUG:sql:bad query: INSERT INTO ir_model_data (name,date_init,date_update,module,model,res_id) VALUES (E'model_abc', now(), now(), E'abc', E'ir.model', 301)
[2011-09-14 08:12:49,434][oe_test] DEBUG:sql:('model_abc', u'abc', 'ir.model', 301)
[2011-09-14 08:12:49,434][oe_test] DEBUG:sql:duplicate key value violates unique constraint "ir_model_data_module_name_uniq"
此致
加扬
答案 0 :(得分:3)
[2011-09-14 08:12:49,434] [oe_test] DEBUG:sql:重复键值违反唯一约束“ir_model_data_module_name_uniq”
在ir.model.data中,有一个“_sql_constraint”,为唯一记录名定义。因此错误来自该代码,并表示您不能拥有重复的记录名称。
据我所知,由于* _data.xml文件中存在重复的记录ID,因此可能会发生此类错误。
注意:请检查* _data.xml文件中的noupdate =“True”。
答案 1 :(得分:2)
在解决上述问题后,我能够找出实际原因并解决问题。基础问题是我有另一个模块意外地带有相同的名称。因此,由此发生上述冲突异常。最后我更改了模块名称,并对模型名称和问题进行了排序。
感谢所有的投入。
此致
加扬答案 2 :(得分:1)
您是否尝试使用-u your_module_name -d your_db_name
启动服务器?