oca / openupgrade Goto Github PK
View Code? Open in Web Editor NEWOpen source upgrade path for Odoo/OpenERP
Home Page: https://oca.github.io/OpenUpgrade/
License: GNU Affero General Public License v3.0
Open source upgrade path for Odoo/OpenERP
Home Page: https://oca.github.io/OpenUpgrade/
License: GNU Affero General Public License v3.0
Hello Geeks
I am trying to migrate from Openerp 5.0.10 to Openerp 7.0. I read some blogs and tutorial regarding how to do it using OpenUpgrade.
First I Migrated the Database named "cms" using the migrate.py script provided in OpenUpgrade. The Process was successful and I got a database named cms_migrated with all of the data intact. (I thought it will migrate the custom NEWLY MADE modules also but it didnt)
Next I wanted to migrate the custom modules that we wrote TO Openerp 7 using the command below
$ ./openerp-server --config=/home/waqar/.openerp_serverrc --update=base,migration,audittrail,base_setup,cms,cms_attendance,cms_attendance_makeup_class,cms_attendance_schedule_changes,cms_examination,cms_hostel,cms_hr_holiday,cms_qec_evaluation,cms_transport,crm,hr,hr_contract,ims_financial_reporting,multi_company,process,product --stop-after-init --database=cms -u all -r waqar --addons-path=/home/waqar/erptmp/7.0/addons
cms and cms_* are the modules we wrote and we also made changes to modules like HR and accounts and inherited the rest. /home/waqar/erptmp/7.0/addons contains the modules that were downloaded during migrate.py script was running. all the modules of Openerp 5 and custom modules are on path /usr/local/lib/python2.7/dist-packages/openerp-server/addons. While doing so, I got the following errors
2014-11-21 06:46:48,972 14870 INFO ? openerp: OpenERP version 7.0
2014-11-21 06:46:48,972 14870 INFO ? openerp: addons paths: /home/waqar/erptmp/7.0/addons
2014-11-21 06:46:48,973 14870 INFO ? openerp: database hostname: localhost
2014-11-21 06:46:48,973 14870 INFO ? openerp: database port: 5432
2014-11-21 06:46:48,973 14870 INFO ? openerp: database user: waqar
2014-11-21 06:46:49,240 14870 INFO cms openerp.modules.loading: loading 1 modules...
2014-11-21 06:46:49,303 14870 INFO cms openerp.modules.migration: module base: Running migration [>7.0.1.3] pre-migration
2014-11-21 06:46:49,303 14870 INFO cms openerp.modules.migration: module base: Running migration [>7.0.1.3] pre-migration
2014-11-21 06:46:49,330 14870 INFO cms OpenUpgrade: base: pre-migration script called with version 5.0.1.1
2014-11-21 06:46:49,440 14870 DEBUG cms OpenUpgrade: Running UPDATE ir_module_module SET demo = false
2014-11-21 06:46:49,440 14870 DEBUG cms OpenUpgrade: 531 rows affected
2014-11-21 06:46:49,754 14870 ERROR cms openerp.sql_db: Programming error: relation "public.ir_act_client" does not exist
LINE 3: WHERE inhrelid = 'public.ir_act_client'::regclass::o...
^
, in query
SELECT count(*) from pg_catalog.pg_inherits
WHERE inhrelid = 'public.ir_act_client'::regclass::oid
AND inhparent = 'public.ir_actions'::regclass::oid
2014-11-21 06:46:49,754 14870 ERROR cms OpenUpgrade: base: error in migration script /home/waqar/openupgrade/openupgrade-server/openerp/addons/base/migrations/7.0.1.3/pre-migration.py: relation "public.ir_act_client" does not exist
LINE 3: WHERE inhrelid = 'public.ir_act_client'::regclass::o...
^
2014-11-21 06:46:49,755 14870 ERROR cms OpenUpgrade: relation "public.ir_act_client" does not exist
LINE 3: WHERE inhrelid = 'public.ir_act_client'::regclass::o...
^
Traceback (most recent call last):
File "/home/waqar/openupgrade/openupgrade-server/openerp/openupgrade/openupgrade.py", line 473, in wrapped_function
func(cr, version)
File "/home/waqar/openupgrade/openupgrade-server/openerp/addons/base/migrations/7.0.1.3/pre-migration.py", line 228, in migrate
update_base_sql(cr)
File "/home/waqar/openupgrade/openupgrade-server/openerp/addons/base/migrations/7.0.1.3/pre-migration.py", line 143, in update_base_sql
""")
File "/home/waqar/openupgrade/openupgrade-server/openerp/sql_db.py", line 161, in wrapper
return f(self, _args, *_kwargs)
File "/home/waqar/openupgrade/openupgrade-server/openerp/sql_db.py", line 226, in execute
res = self._obj.execute(query, params)
ProgrammingError: relation "public.ir_act_client" does not exist
LINE 3: WHERE inhrelid = 'public.ir_act_client'::regclass::o...
^
2014-11-21 06:46:49,756 14870 ERROR cms openerp: Failed to initialize database cms
.
Traceback (most recent call last):
File "/home/waqar/openupgrade/openupgrade-server/openerp/cli/server.py", line 98, in preload_registry
db, registry = openerp.pooler.get_db_and_pool(dbname,update_module=update_module)
File "/home/waqar/openupgrade/openupgrade-server/openerp/pooler.py", line 33, in get_db_and_pool
registry = RegistryManager.get(db_name, force_demo, status, update_module)
File "/home/waqar/openupgrade/openupgrade-server/openerp/modules/registry.py", line 192, in get
update_module)
File "/home/waqar/openupgrade/openupgrade-server/openerp/modules/registry.py", line 218, in new
openerp.modules.load_modules(registry.db, force_demo, status, update_module)
File "/home/waqar/openupgrade/openupgrade-server/openerp/modules/loading.py", line 331, in load_modules
loaded_modules, processed_modules = load_module_graph(cr, graph, status, perform_checks=update_module, report=report, registry=registry)
File "/home/waqar/openupgrade/openupgrade-server/openerp/modules/loading.py", line 172, in load_module_graph
migrations.migrate_module(package, 'pre')
File "/home/waqar/openupgrade/openupgrade-server/openerp/modules/migration.py", line 191, in migrate_module
mod.migrate(self.cr, pkg.installed_version)
File "/home/waqar/openupgrade/openupgrade-server/openerp/openupgrade/openupgrade.py", line 473, in wrapped_function
func(cr, version)
File "/home/waqar/openupgrade/openupgrade-server/openerp/addons/base/migrations/7.0.1.3/pre-migration.py", line 228, in migrate
update_base_sql(cr)
File "/home/waqar/openupgrade/openupgrade-server/openerp/addons/base/migrations/7.0.1.3/pre-migration.py", line 143, in update_base_sql
""")
File "/home/waqar/openupgrade/openupgrade-server/openerp/sql_db.py", line 161, in wrapper
return f(self, _args, *_kwargs)
File "/home/waqar/openupgrade/openupgrade-server/openerp/sql_db.py", line 226, in execute
res = self._obj.execute(query, params)
ProgrammingError: relation "public.ir_act_client" does not exist
LINE 3: WHERE inhrelid = 'public.ir_act_client'::regclass::o...
^
I dont know what mistake am I making, Kindly put me in the right direction.
Regards
properties are currently displayed as functions
Hi, selecting the migrated database, I am getting messages as those below when I run:
odoo.py -u all --config=/etc/openerp/odoo-server.conf
What could be the issue?
INFO ? openerp: addons paths: ['/home/openerp/.local/share/Odoo/addons/8.0', u'/usr/local/odoo/odoo/addons', '/usr/local/odoo/local/lib/python2.7/site-packages/openerp-8.0-py2.7.egg/openerp/addons']
...
ERROR springfresh_odoov8 openerp.modules.graph: module account_cancel: Unmet dependencies: account
ERROR springfresh_odoov8 openerp.modules.graph: module sale_journal: Unmet dependencies: sale_stock
...
Hi,
I'm getting an error (see below) when using an upgraded database upgraded using the c1b9ad1 commit. I think I'm using the wrong (too new) revision of Odoo. I've tried multiple revisions of Odoo:
4f5cc00: as mentioned at #1 but this seems dated and gives me an error on report/modules/report.py;
932ecccc: (Odoo 8.0) initially gives a ir_ui_view.action does not exist error but works after an update all, but I get a javascript web module error;
e4521e4 (older Odoo 8.0): works without the update all but I get the same web error).
Which revision of Odoo should I use?
The error I'm getting:
From sales->customers in kanban view click on a partner pops up:
Uncaught TypeError: Cannot read property 'constructor' of undefined
http://0.0.0.0:8068/web/js/web.assets_backend/ce41694:2840
(found this in addons/web/static/lib/src/js/pyeval.js around line 719)
and:
Uncaught Error: QWeb2 - template['FieldRadio']: Runtime Error: TypeError: Cannot read property '1' of undefined
http://0.0.0.0:8068/web/js/web.assets_common/08701fd:1020
(found this in addons/web/static/lib/qweb/qweb2.js around line 48
Hi all,
I have maybe a lead to realize in a few month a migration 7-> 8. During the analysis, I saw that there was 5 modules that was present in V7 and had disapeared in V8:
document_ftp, mrp_jit, process, stock_location, stock_no_autopicking,
Do you know if there is some OCA modules that replace them ?
Did you faced to the same problem ?
(For example, I saw that web_shortcuts has moved from Odoo to OCA / web)
Regards.
This issue is a reference to the issue in the odoo bugtracker #730.
In the odoo bugtracker this issue is closed, but it is still unresolved.
I've use migrate.py to upgrade my database:
bux@deb:~/openupgrade$ python migrate.py --config="/etc/openerp/openerp-server.conf" --database="cs" --run-migrations="8.0"
From git://github.com/OpenUpgrade/OpenUpgrade
* branch 8.0 -> FETCH_HEAD
Already up-to-date.
copying database cs to cs_migrated...
Copying the database using 'with template'
running migration for 8.0
/usr/lib/python2.7/dist-packages/babel/__init__.py:33: UserWarning: Module openerp was already imported from /var/tmp/openupgrade/8.0/server/openerp/__init__.pyc, but /usr/lib/python2.7/dist-packages is being added to sys.path
from pkg_resources import get_distribution, ResolutionError
A simple warning appear, so i consider as success. So i restaure my migrated database "cs_migrated" in fresh and working install of Odoo. But, after the restauration, when i go to the home page of odoo, i've got an Internal Server Error The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.
The odoo log say:
2014-11-18 21:51:39,950 2093 INFO cs werkzeug: 192.168.1.11 - - [18/Nov/2014 21:51:39] "GET /web/login HTTP/1.1" 500 -
2014-11-18 21:51:40,016 2093 ERROR cs werkzeug: Error on request:
Traceback (most recent call last):
File "/usr/share/pyshared/werkzeug/serving.py", line 159, in run_wsgi
execute(app)
File "/usr/share/pyshared/werkzeug/serving.py", line 146, in execute
application_iter = app(environ, start_response)
File "/usr/lib/python2.7/dist-packages/openerp/service/server.py", line 280, in app
return self.app(e, s)
File "/usr/lib/python2.7/dist-packages/openerp/service/wsgi_server.py", line 216, in application
return application_unproxied(environ, start_response)
File "/usr/lib/python2.7/dist-packages/openerp/service/wsgi_server.py", line 202, in application_unproxied
result = handler(environ, start_response)
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1215, in __call__
return self.dispatch(environ, start_response)
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1189, in __call__
return self.app(environ, start_wrapped)
File "/usr/share/pyshared/werkzeug/wsgi.py", line 411, in __call__
return self.app(environ, start_response)
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1361, in dispatch
response = self.get_response(httprequest, result, explicit_session)
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1296, in get_response
result = request.registry['ir.http']._handle_exception(e)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_http.py", line 100, in _handle_exception
return request._handle_exception(exception)
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 596, in _handle_exception
return super(HttpRequest, self)._handle_exception(exception)
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1293, in get_response
result.flatten()
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1166, in flatten
self.response.append(self.render())
File "/usr/lib/python2.7/dist-packages/openerp/http.py", line 1160, in render
context=request.context)
File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_ui_view.py", line 1007, in render
return self.pool[engine].render(cr, uid, id_or_xml_id, qcontext, loader=loader, context=context)
File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_qweb.py", line 253, in render
return self.render_node(self.get_template(id_or_xml_id, qwebcontext), qwebcontext)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_qweb.py", line 184, in get_template
raise_qweb_exception(QWebTemplateNotFound, message="Loader could not find template %r" % name, template=origin_template)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_qweb.py", line 182, in get_template
xml_doc = qwebcontext.loader(name)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_ui_view.py", line 1005, in loader
return self.read_template(cr, uid, name, context=context)
File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "<string>", line 2, in read_template
File "/usr/lib/python2.7/dist-packages/openerp/tools/cache.py", line 119, in lookup
value = d[key] = self.method(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_ui_view.py", line 849, in read_template
view_id = self.pool['ir.model.data'].xmlid_to_res_id(cr, uid, xml_id, raise_if_not_found=True)
File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_model.py", line 934, in xmlid_to_res_id
return self.xmlid_to_res_model_res_id(cr, uid, xmlid, raise_if_not_found)[1]
File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_model.py", line 926, in xmlid_to_res_model_res_id
return self.xmlid_lookup(cr, uid, xmlid)[1:3]
File "/usr/lib/python2.7/dist-packages/openerp/api.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "<string>", line 2, in xmlid_lookup
File "/usr/lib/python2.7/dist-packages/openerp/tools/cache.py", line 71, in lookup
value = d[key] = self.method(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/openerp/addons/base/ir/ir_model.py", line 916, in xmlid_lookup
raise ValueError('External ID not found in the system: %s' % (xmlid))
QWebTemplateNotFound: External ID not found in the system: web.login
The database has not been migrated or i have an other problem with odoo ? Can i found in my "supposed" migrated database an information who can say if it's migrated or not ?
My local repo tell me there was a 7.0 branch:
a4605f1 Merge pull request #23 from hbrunn/7.0-lp1311076
But I can't find it in the branch list.
As with the latest code I've tried to migrate my development database (which is really small one with just a few records in each module) - after resolving most of the issues thanks to the solutions posted here, I came across one, which is really tough. Here is a part of the log related to that:
2014-10-13 06:12:01,393 6594 ERROR dev_migrated openerp.modules.loading: Error executing post migration script for module project_issue
: wrap() takes exactly 1 argument (2 given)
2014-10-13 06:12:01,395 6594 CRITICAL dev_migrated openerp.service.server: Failed to initialize database `dev_migrated`.
Traceback (most recent call last):
File "/var/tmp/openupgrade/8.0/server/openerp/service/server.py", line 901, in preload_registries
registry = RegistryManager.new(dbname, update_module=update_module)
File "/var/tmp/openupgrade/8.0/server/openerp/modules/registry.py", line 324, in new
openerp.modules.load_modules(registry._db, force_demo, status, update_module)
File "/var/tmp/openupgrade/8.0/server/openerp/modules/loading.py", line 387, in load_modules
force, status, report, loaded_modules, update_module, upg_registry)
File "/var/tmp/openupgrade/8.0/server/openerp/modules/loading.py", line 295, in load_marked_modules
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks, upg_registry=upg_registry)
File "/var/tmp/openupgrade/8.0/server/openerp/modules/loading.py", line 215, in load_module_graph
migrations.migrate_module(package, 'post')
File "/var/tmp/openupgrade/8.0/server/openerp/modules/migration.py", line 179, in migrate_module
mod.migrate(self.cr, pkg.installed_version)
TypeError: wrap() takes exactly 1 argument (2 given)
Any ideas how to approach that? Help on that would be greatly appreciated
Hi
I try to migrate from v7 to Odoo v8, and i have a error in migration.log
" import openerplib
ImportError: No module named openerplib"
Have you a idea please.
Hello:
I used OpenUpgrade to Migrate OpenERP from version 6.1 to version 7. The database is successfully created, but when I try to login I get the following error:
OpenERP Server Error
Client Traceback (most recent call last):
File "/opt/beanos-dev/7.0/web/addons/web/http.py", line 204, in dispatch
response["result"] = method(self, **self.params)
File "/opt/beanos-dev/7.0/web/addons/web/controllers/main.py", line 864, in authenticate
req.session.authenticate(db, login, password, env)
File "/opt/beanos-dev/7.0/web/addons/web/session.py", line 118, in authenticate
if uid: self.get_context()
File "/opt/beanos-dev/7.0/web/addons/web/session.py", line 170, in get_context
self.context = self.model('res.users').context_get() or {}
File "/opt/beanos-dev/7.0/web/addons/web/session.py", line 42, in proxy
result = self.proxy.execute_kw(self.session._db, self.session._uid, self.session._password, self.model, method, args, kw)
File "/opt/beanos-dev/7.0/web/addons/web/session.py", line 30, in proxy_method
result = self.session.send(self.service_name, method, *args)
File "/opt/beanos-dev/7.0/web/addons/web/session.py", line 103, in send
raise xmlrpclib.Fault(openerp.tools.ustr(e), formatted_info)
Server Traceback (most recent call last):
File "/opt/beanos-dev/7.0/web/addons/web/session.py", line 89, in send
return openerp.netsvc.dispatch_rpc(service_name, method, args)
File "/opt/beanos-dev/7.0/server/openerp/netsvc.py", line 293, in dispatch_rpc
result = ExportService.getService(service_name).dispatch(method, params)
File "/opt/beanos-dev/7.0/server/openerp/service/web_services.py", line 626, in dispatch
res = fn(db, uid, _params)
File "/opt/beanos-dev/7.0/server/openerp/osv/osv.py", line 188, in execute_kw
return self.execute(db, uid, obj, method, *args, *_kw or {})
File "/opt/beanos-dev/7.0/server/openerp/osv/osv.py", line 131, in wrapper
return f(self, dbname, _args, *_kwargs)
File "/opt/beanos-dev/7.0/server/openerp/osv/osv.py", line 197, in execute
res = self.execute_cr(cr, uid, obj, method, _args, *_kw)
File "/opt/beanos-dev/7.0/server/openerp/osv/osv.py", line 185, in execute_cr
return getattr(object, method)(cr, uid, _args, *_kw)
File "/opt/beanos-dev/7.0/server/openerp/tools/cache.py", line 18, in lookup
r = self.lookup(self2, cr, _args)
File "/opt/beanos-dev/7.0/server/openerp/tools/cache.py", line 46, in lookup
value = d[key] = self.method(self2, cr, *args)
File "/opt/beanos-dev/7.0/server/openerp/addons/base/res/res_users.py", line 352, in context_get
res = getattr(user,k) or False
File "/opt/beanos-dev/7.0/server/openerp/osv/orm.py", line 484, in getattr
return self[name]
File "/opt/beanos-dev/7.0/server/openerp/osv/orm.py", line 399, in getitem
field_values = self._table.read(self._cr, self._uid, ids, field_names, context=self._context, load="_classic_write")
File "/opt/beanos-dev/7.0/server/openerp/addons/base/res/res_users.py", line 799, in read
res = super(users_view, self).read(cr, uid, ids, fields, context=context, load=load)
File "/opt/beanos-dev/7.0/server/openerp/addons/base/res/res_users.py", line 272, in read
result = super(res_users, self).read(cr, uid, ids, fields=fields, context=context, load=load)
File "/opt/beanos-dev/7.0/server/openerp/osv/orm.py", line 3625, in read
result = self._read_flat(cr, user, select, fields, context, load)
File "/opt/beanos-dev/7.0/server/openerp/osv/orm.py", line 3701, in _read_flat
res2 = self.pool.get(table).read(cr, user, [x[col] for x in res], cols, context, load)
File "/opt/beanos-dev/7.0/server/openerp/osv/orm.py", line 3625, in read
result = self._read_flat(cr, user, select, fields, context, load)
File "/opt/beanos-dev/7.0/server/openerp/osv/orm.py", line 3677, in _read_flat
cr.execute(query, [tuple(sub_ids)] + rule_params)
File "/opt/beanos-dev/7.0/server/openerp/sql_db.py", line 161, in wrapper
return f(self, *args, *_kwargs)
File "/opt/beanos-dev/7.0/server/openerp/sql_db.py", line 226, in execute
res = self._obj.execute(query, params)
ProgrammingError: column res_partner.image does not exist
LINE 1: ..."comment",res_partner."ean13",res_partner."color",res_partne...
^
Can you please help me solve it?
Thanks in advance.
Hi,
I wanted to start to write migration of the addon "warning" because there was no status on doc page. I tested the migration without new migration files and the data was migrated from "product.product" to "product.template". So I think there is no work needed. I don't know which code does this copying but it works.
Did I overlooked something or am I right? Can we update the status?
2014-08-26 11:13:04,144 16889 INFO ffurlanetto_migrated openerp.modules.loading: module base: loading base_data.xml
2014-08-26 11:13:04,329 16889 ERROR ffurlanetto_migrated openerp.addons.base.ir.ir_ui_view: Field menu_id
does not exist
Error context:
View res.users.groups
[view_id: 159, xml_id: base.user_groups_view, model: res.users, parent_id: 156]
2014-08-26 11:13:04,397 16889 ERROR ffurlanetto_migrated openerp.addons.base.ir.ir_ui_view: Field menu_id
does not exist
Error context:
View res.users.groups
[view_id: 159, xml_id: base.user_groups_view, model: res.users, parent_id: 156]
After a migration all almost seems to be right, but when I go to view the profile of any user (included the Admin) Odoo shows the next error:
Odoo Server Error
Traceback (most recent call last):
File "/opt/odoo/odoo-server/openerp/http.py", line 518, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/opt/odoo/odoo-server/openerp/http.py", line 539, in dispatch
result = self._call_function(*_self.params)
File "/opt/odoo/odoo-server/openerp/http.py", line 295, in _call_function
return checked_call(self.db, *args, *_kwargs)
File "/opt/odoo/odoo-server/openerp/service/model.py", line 113, in wrapper
return f(dbname, _args, *_kwargs)
File "/opt/odoo/odoo-server/openerp/http.py", line 292, in checked_call
return self.endpoint(_a, *_kw)
File "/opt/odoo/odoo-server/openerp/http.py", line 755, in call
return self.method(_args, *_kw)
File "/opt/odoo/odoo-server/openerp/http.py", line 388, in response_wrap
response = f(_args, *_kw)
File "/opt/odoo/odoo-server/addons/web/controllers/main.py", line 949, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/opt/odoo/odoo-server/addons/web/controllers/main.py", line 932, in _call_kw
records = getattr(request.session.model(model), method)(_args, *_kwargs)
File "/opt/odoo/odoo-server/openerp/http.py", line 859, in proxy
result = meth(cr, request.uid, _args, *_kw)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, _args, *_kwargs)
File "/opt/odoo/odoo-server/openerp/addons/base/res/res_users.py", line 869, in read
res = super(users_view, self).read(cr, uid, ids, other_fields, context=context, load=load)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, _args, *_kwargs)
File "/opt/odoo/odoo-server/openerp/addons/base/res/res_users.py", line 295, in read
result = super(res_users, self).read(cr, uid, ids, fields=fields, context=context, load=load)
File "/opt/odoo/odoo-server/openerp/api.py", line 237, in wrapper
return old_api(self, _args, *_kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 3083, in read
result = BaseModel.read(records, fields, load=load)
File "/opt/odoo/odoo-server/openerp/api.py", line 235, in wrapper
return new_api(self, _args, *_kwargs)
File "/opt/odoo/odoo-server/openerp/models.py", line 3126, in read
values[name] = field.convert_to_read(record[name], use_name_get)
File "/opt/odoo/odoo-server/openerp/models.py", line 5492, in getitem
return self._fields[key].get(self, type(self))
File "/opt/odoo/odoo-server/openerp/fields.py", line 774, in get
self.determine_value(record)
File "/opt/odoo/odoo-server/openerp/fields.py", line 876, in determine_value
self.compute_value(recs)
File "/opt/odoo/odoo-server/openerp/fields.py", line 832, in compute_value
self._compute_value(records)
File "/opt/odoo/odoo-server/openerp/fields.py", line 824, in _compute_value
self.compute(records)
File "/opt/odoo/odoo-server/openerp/fields.py", line 497, in _compute_related
record[self.name] = other[self.related[-1]]
File "/opt/odoo/odoo-server/openerp/models.py", line 5501, in setitem
return self._fields[key].set(self, value)
File "/opt/odoo/odoo-server/openerp/fields.py", line 790, in set
value = self.convert_to_cache(value, record)
File "/opt/odoo/odoo-server/openerp/fields.py", line 1320, in convert_to_cache
raise ValueError("Wrong value for %s: %r" % (self, value))
ValueError: Wrong value for res.users.notify_email: u'email'
We can use the same script that Odoo uses for merging the three projects and respect the history to migrate to Github entire project.
What do you think?
Hi guys
First of all, thanks for this open-sourced idea.
After trying the script for a migration from V7 to V8 I get the following error:
ParseError: "duplicate key value violates unique constraint "ir_sequence_type_code_unique"
DETAIL: Key (code)=(stock.orderpoint) already exists.
" while parsing /odoo/odoo-server/addons/stock/stock_data.xml:153, near
Stock orderpoint
stock.orderpoint
In the logfile I get this:
2014-12-29 07:27:44,003 4051 ERROR myDB_migrated openerp.sql_db: bad query: INSERT INTO "ir_sequence_type" ("id", "code", "name", "create_uid", "write_uid", "create_date", "write_date") VALUES(nextval('ir_sequence_type_id_seq'), 'stock.orderpoint', 'Stock orderpoint', 1, 1, (now() at time zone 'UTC'), (now() at time zone 'UTC')) RETURNING id
Traceback (most recent call last):
File "/var/tmp/openupgrade/8.0/server/openerp/sql_db.py", line 234, in execute
res = self._obj.execute(query, params)
IntegrityError: duplicate key value violates unique constraint "ir_sequence_type_code_unique"
DETAIL: Key (code)=(stock.orderpoint) already exists.
Could anybody tell me why this happened, if it is a common bug and how I could fix it?
In order to accelerate the development and increase the coverage of OpenUpgrade v8 in the next few days our team will start to contribute to the project: in particular, we would like to complete as soon as possible the following modules:
Concerning the modules that are already in progress, we would like to hear from everyone who is actually working on these in order to share the missing work; for the others I will update the wikipage with our planning as soon as possible.
There is a problem with stock module migration, the xmlid procurement.sequence_mrp_op_type
which now belongs to the stock module instead.
I've preliminary added a pre-migration.py which does 2 queries and it seems to work for me:
# These sequences used to belong to procurement module
cr.execute('''UPDATE ir_model_data SET module = 'stock' WHERE module = 'procurement' and name = 'sequence_mrp_op_type';''')
cr.execute('''UPDATE ir_model_data SET module = 'stock' WHERE module = 'procurement' and name = 'sequence_mrp_op';''')
Is there a better way to handle these ?
Hi,
For the account bank statement migrations we are facing some issues. I was wondering if anyone could to share their findings on the following issues:
The bank statements when in state open, when migrated, cannot be reconciled.
Also statements which are canceled after migrating cannot be used anymore.
Mrp post migration script is incomplete with missing lines : https://github.com/OpenUpgrade/OpenUpgrade/pull/63/files#diff-42f221718256b2641dc5ed5e21576f9bR11
@gurneyalex did you forget to send changes ?
State of the DB:
$ psql -d mercurio8 -c "SELECT name, state FROM ir_module_module WHERE state='installed'" | grep "\(pro\|sto\)"
product | installed
This is: Neither procurement nor stock are installed.
When running the migration with OpenUpgrade, it fails with:
File "/home/manu/src/merchise/pgi/openupgrade/addons/procurement/migrations/8.0.1.0/pre-migration.py", line 53, in migrate
openupgrade.rename_columns(cr, column_renames)
File "/home/manu/src/merchise/pgi/openupgrade/openerp/openupgrade/openupgrade.py", line 153, in rename_columns
'ALTER TABLE "%s" RENAME "%s" TO "%s"' % (table, old, new,))
File "/home/manu/src/merchise/pgi/openupgrade/openerp/sql_db.py", line 158, in wrapper
return f(self, *args, **kwargs)
File "/home/manu/src/merchise/pgi/openupgrade/openerp/sql_db.py", line 234, in execute
res = self._obj.execute(query, params)
ProgrammingError: relation "stock_warehouse_orderpoint" does not exist
Hello,
The upgrade from openerp 7 to odoo 8 fails.
In "/var/tmp/openupgrade/migration.log", I find this message:
ParseError: "project.task" while parsing /var/tmp/openupgrade/8.0/server/openerp/addons/base/base_data.xml:123, near
Public user
It seems related to the "public", but I don't have such a public user.
Should I add this "public user" in order to perform the upgrade, or is this a bug ?
Hi All,
I'm new to Openerp ( a junior Odoo developer) and I need to migrate
data from openerp 6.1 to openerp 8 using XML-RPC, I connect to openerp
6.1 using a vpn server and to openerp 8 from my localhost.
I would like to know the steps to do that and I also need an example of
migration data using XML-RPC.
Can you help me pleaaaaaaaaaaaaaaase !!!!
Thank you,
Emnar
Here is the scenario of the bug:
When you look at the file openupgrade-addons-70/document/migrations/7.0.2.1/openupgrade_analysis.txt you should see DEL entries for the columns of document.storage... but there are no such entries !
Key (survey_id)=(1) is not present in table "survey_survey".
Hi all,
I try to migrate my Openerp V7
I type the command line :
python /home/desktop/migrate.py --config=/etc/openerp-server.conf --database=CLIKINFO --run-migrations=8.0
and my result is :
python /home/desktop/migrate.py --config=/etc/openerp-server.conf --database=CLIKINFO --run-migrations=8.0
linking server/addons to /var/tmp/openupgrade/8.0/addons
getting git://github.com/OpenUpgrade/OpenUpgrade.git
error: unknown option `single-branch'
usage: git clone [options] [--] [
-v, --verbose be more verbose
-q, --quiet be more quiet
--progress force progress reporting
-n, --no-checkout don't create a checkout
--bare create a bare repository
--mirror create a mirror repository (implies bare)
-l, --local to clone from a local repository
--no-hardlinks don't use local hardlinks, always copy
-s, --shared setup as shared repository
--recursive initialize submodules in the clone
--recurse-submodules initialize submodules in the clone
--template <template-directory>
directory from which templates will be used
--reference <repo> reference repository
-o, --origin <name> use <name> instead of 'origin' to track upstream
-b, --branch <branch>
checkout <branch> instead of the remote's HEAD
-u, --upload-pack <path>
path to git-upload-pack on the remote
--depth <depth> create a shallow clone of that depth
--separate-git-dir <gitdir>
separate git dir from working tree
-c, --config <key=value>
set config inside the new repository
copying database CLIKINFO to CLIKINFO_migrated...
Traceback (most recent call last):
File "/home/desktop/migrate.py", line 300, in
db_name = copy_database(conn_parms)
File "/home/desktop/migrate.py", line 26, in copy_database
conn = psycopg2.connect(**conn_parms)
File "/usr/lib/python2.7/dist-packages/psycopg2/init.py", line 179, in connect
connection_factory=connection_factory, async=async)
psycopg2.OperationalError: FATAL: Peer authentication failed for user "openerp"
Need help :)
Thank's
Hi all,
I just realized an quick analyse on my current database 7.0 and I saw that the bigger table was edi_document with datas older than the migration 6.1 -> 7.0.
In fact,
in 6.1 there is a osv model edi.document : https://github.com/OpenUpgrade/OpenUpgrade/blob/6.1/addons/edi/models/edi.py#L77
in 7.0 there isn't : https://github.com/OpenUpgrade/OpenUpgrade/blob/7.0/addons/edi/models/edi.py#L77
but in my database, the model is still present in ir.model.model and datas are in the table, although I guess there are now useless.
Do you think there is a bug in OpenUpgrade. (models that are not present must be deleted ?) In that case I can provide a patch to fix it in https://github.com/OpenUpgrade/OpenUpgrade/blob/7.0/addons/edi/migrations/7.0.1.0 ?
Or Do I have to clean manually the database after a migration ? Is there some tools to do that ? Did you faced to the same problem ?
Kind regards.
Something interesting changed in the share module. The share group is not a manual setting anymore, but consists in 8.0 of every user that is not in base.group_user.
It would be nice if the migration scripts for the share module could warn about users that are not in the share group in 7.0 but not in group_user either.
Hi,
When trying to upgrade (7.0->8.0):
python migrate.py --config="/etc/openerp/openerp-server.conf" --database="cs" --run-migrations="8.0"
couldn't import bzrlib. You won't be able to run migrations <= 7.0!
No user found in configuration
My config file. I'm doing it wrong ?
I've got this error when execute:
root@deb:~/openupgrade# python migrate.py --config="/etc/openerp/openerp-server.conf" --database="cs" --run-migrations="8.0"
linking server/addons to /var/tmp/openupgrade/8.0/addons
getting git://github.com/OpenUpgrade/OpenUpgrade.git
sh: 1: git: not found
copying database cs to cs_migrated...
Traceback (most recent call last):
File "migrate.py", line 300, in <module>
db_name = copy_database(conn_parms)
File "migrate.py", line 26, in copy_database
conn = psycopg2.connect(**conn_parms)
File "/usr/lib/python2.7/dist-packages/psycopg2/__init__.py", line 179, in connect
connection_factory=connection_factory, async=async)
psycopg2.OperationalError: FATAL: authentification peer ?chou?e pour l'utilisateur << openerp >>
Migration script need additional credentials for databse ?
I just upgraded from 7.0 to 8 and am now getting an Internal Server Error and in the Odoo log I see many instances of "Skipping database MYDB as its base version is not 8.0.1.3"
The instructions in the readme don't say anything about upgrading/migrating, so I'll recap what my interpretation of them were:
Did I do something wrong?
Hi all,
I had an idea some weeks ago, when I discovered Travis System and I'd like to have your point of view.
I imagined to realize a Travis script that will realize the following things (for a migration to 7 -> 8):
Once the system done, it can be easily ported for next migration (8 -> 9);
@StefanRijnhart, @ all What do you think about that idea ?
Regards.
do we want to have a helper function that lifts all constraints on a column?
I found this error in log:
2014-12-12 09:23:43,487 23335 ERROR testdb OpenUpgrade: map_values is called with the same value for source and old columns : notify_email
None
In the post-migration of the mail addon the API method openupgrade.map_values
is called with the same source and target column name. I think this is right. This error is thrown in log but however the UPDATE statement of this mapping is called.
We should change something. Some ways to solve:
What do you thinking?
I'm creating an issue for this for traceability.
I started doing preliminary work on procurement during the code sprint (https://github.com/gurneyalex/OpenUpgrade/compare/procurement_v8). Ongoing project is currently preventing me from working on this topic, and I'll be on vacation during most of July.
I hope I'll be able to resume work on this issue in August, but if someone else wishes to move on, please do so.
Should this be added to the documentation?
On a Debian 7 server, I first upgraded to Odoo through the package manager, then ran the migration script. No errors on the console, but Odoo failed to start, complaining the database wasn't the correct version. Looking at the migration log, the errors all boil down to one:
ImportError: No module named openerplib
The whole log, plus a few more details are on a previous issue I posted (I closed it because I think I've nailed down the core problem, and the original topic was ambiguous) #156
What should I do?
Hi, I am getting the following error. Please help.
2014-12-01 13:02:15,766 32121 ERROR springFresh_migrated openerp.sql_db: Programming error: column "restrict_partner_id" referenced in foreign key constraint does not exist
, in query ALTER TABLE "stock_move" ADD FOREIGN KEY ("restrict_partner_id") REFERENCES "res_partner" ON DELETE set null
Impacted versions: 7.0 to 8.0 upgrade
In my database I've deleted the Weight unit of measure category, default id = 3. As I only sell unit and hours.
When running the openupgrade script I get the error:
2015-01-04 11:31:21,291 12027 INFO openupgrade_migrated OpenUpgrade: product: loading migrations/8.0.1.1/modified_data.xml
2015-01-04 11:31:21,310 12027 ERROR openupgrade_migrated openerp.sql_db: bad query: INSERT INTO "product_uom" ("id", "uom_type", "active", "rounding", "create_uid", "write_uid", "c
reate_date", "write_date") VALUES(nextval('product_uom_id_seq'), 'reference', true, '0.001', 1, 1, (now() at time zone 'UTC'), (now() at time zone 'UTC')) RETURNING id
Traceback (most recent call last):
File "/var/tmp/openupgrade/8.0/server/openerp/sql_db.py", line 234, in execute
res = self._obj.execute(query, params)
IntegrityError: null value in column "category_id" violates not-null constraint
[...]
File "/var/tmp/openupgrade/8.0/server/openerp/modules/loading.py", line 295, in load_marked_modules
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks, upg_registry=upg_registry)
File "/var/tmp/openupgrade/8.0/server/openerp/modules/loading.py", line 215, in load_module_graph
migrations.migrate_module(package, 'post')
File "/var/tmp/openupgrade/8.0/server/openerp/modules/migration.py", line 179, in migrate_module
mod.migrate(self.cr, pkg.installed_version)
File "/var/tmp/openupgrade/8.0/server/openerp/openupgrade/openupgrade.py", line 716, in wrapped_function
func(cr, version)
File "/var/tmp/openupgrade/8.0/addons/product/migrations/8.0.1.1/post-migration.py", line 145, in migrate
load_data(cr)
File "/var/tmp/openupgrade/8.0/addons/product/migrations/8.0.1.1/post-migration.py", line 30, in load_data
[...]
ParseError: "null value in column "category_id" violates not-null constraint
DETAIL: Failing row contains (20, 1, 2015-01-04 11:31:19.345763, 2015-01-04 11:31:19.345763, 1, reference, null, null, 0.001, null, t).
" while parsing /var/tmp/openupgrade/8.0/addons/product/migrations/8.0.1.1/modified_data.xml:8, near
<record id="product_uom_kgm" model="product.uom"><field name="rounding" eval="0.001"/>
</record>
Deleting this line keeps the upgrade from failing, but is only a workaround..
It tries to update an uom that no longer exists. When deleting the uom KG. and keeping the category openupgrade adds a new KG uom. This fails then the Weight uim category is deleted.
Steps to reproduce:
Hi,
I tried to install openerp v7 with the openupgrade_records addon to start the analysis but I could not found this addon in the backend (all other addons are available). I used the 7.0 branch. Also I tried to use the bzr branch, started openupgrade with addons-path and increased the file permissions. Did I overseen something or is this broken?
I've got this error with OpenUpgrade when upgrading from 7.0 to 8.0:
2014-12-04 12:19:03,586 8327 INFO xxxx openerp.modules.module: module hr_holidays: creating or updating database tables
2014-12-04 12:19:03,930 8327 ERROR xxxx openerp.sql_db: bad query: ALTER TABLE "hr_holidays" ADD FOREIGN KEY ("meeting_id") REFERENCES "calendar_event" ON DELETE set null
Traceback (most recent call last):
File "/home/mario/z/8/openerp/sql_db.py", line 234, in execute
res = self._obj.execute(query, params)
IntegrityError: insert or update on table "hr_holidays" violates foreign key constraint "hr_holidays_meeting_id_fkey"
DETAIL: Key (meeting_id)=(15) is not present in table "calendar_event".
2014-12-04 12:19:03,931 8327 CRITICAL xxxx openerp.service.server: Failed to initialize database xxxx
.
Traceback (most recent call last):
File "/home/mario/z/8/openerp/service/server.py", line 906, in preload_registries
registry = RegistryManager.new(dbname, update_module=update_module)
File "/home/mario/z/8/openerp/modules/registry.py", line 341, in new
openerp.modules.load_modules(registry._db, force_demo, status, update_module)
File "/home/mario/z/8/openerp/modules/loading.py", line 354, in load_modules
force, status, report, loaded_modules, update_module)
File "/home/mario/z/8/openerp/modules/loading.py", line 263, in load_marked_modules
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
File "/home/mario/z/8/openerp/modules/loading.py", line 163, in load_module_graph
init_module_models(cr, package.name, models)
File "/home/mario/z/8/openerp/modules/module.py", line 290, in init_module_models
obj._auto_end(cr, {'module': module_name})
File "/home/mario/z/8/openerp/api.py", line 237, in wrapper
return old_api(self, _args, *_kwargs)
File "/home/mario/z/8/openerp/models.py", line 2694, in _auto_end
cr.execute('ALTER TABLE "%s" ADD FOREIGN KEY ("%s") REFERENCES "%s" ON DELETE %s' % (t, k, r, d))
File "/home/mario/z/8/openerp/sql_db.py", line 158, in wrapper
return f(self, _args, *_kwargs)
File "/home/mario/z/8/openerp/sql_db.py", line 234, in execute
res = self._obj.execute(query, params)
IntegrityError: insert or update on table "hr_holidays" violates foreign key constraint "hr_holidays_meeting_id_fkey"
DETAIL: Key (meeting_id)=(15) is not present in table "calendar_event".
This issue is a question about post-upgrade cleaning.
After upgrading a database, some menu items are still the one created by the module at the first install.
But after a major upgrade, some action settings have changes (eg: from 6.1 the crm helpdesk action does not have the same context for the search view) but are not updated since the action already exists.
So how are you handling this ? Are you manually deleting menu items or actions and next re-updating modules ?
It seems I'm having an error when it's trying to convert the project priorities.
The call to logged_query I have has these arguments:
query = "UPDATE project_task SET priority = %(new)s WHERE openupgrade_legacy_8_0_priority = %(old)s"
args = {'table': 'project_task', 'old': '4', 'target': 'priority', 'new': '0', 'source': 'openupgrade_legacy_8_0_priority'}
Then I get a TypeError on the log.debug()
https://github.com/OpenUpgrade/OpenUpgrade/blob/8.0/openerp/openupgrade/openupgrade.py#L409
Which contains:
cr.execute(query, args)
logger.debug('Running %s', query % tuple(args))
logger.debug('%s rows affected', cr.rowcount)
return cr.rowcount
Which I can totally understand because tuple() on a dict only returns the key values.
Should we not instead simply be calling
cr.execute(query, args)
logger.debug('Running %s', query % args)
logger.debug('%s rows affected', cr.rowcount)
return cr.rowcount
Or am I totally missing out on something here ? Changing this seemed to fix my problem, I have not ran another full migration with it though.
psycopg2 will connect using a Unix socket in the same manner as psql.
When you specify a HOST, psycopg2 will connect with TCP/IP, which requires a password.
--- a/scripts/migrate.py
+++ b/scripts/migrate.py
@@ -20,6 +20,9 @@ def copy_database(conn_parms):
db_new = '%s_migrated' % conn_parms['database']
print('copying database %(db_old)s to %(db_new)s...' % {'db_old': db_old,
'db_new': db_new})
conn = psycopg2.connect(**conn_parms)
conn.set_isolation_level(psycopg2.extensions.ISOLATION_LEVEL_AUTOCOMMIT)
cur = conn.cursor()
Impacted versions:
Steps to reproduce:
Current behavior:
Expected behavior:
After a migration from 7.0. Several errors are found as reported in this email.
This issue deals with having the "Project Phase" actions and menus still in the DB after the migration. The addon project_long_term
was removed in Odoo. This needs to be dealt with. This issue servers to track this removal and its migrations.
Example: property_ids on mrp.bom changed its table from mrp_bom_property_rel to mrp_bom_mrp_property_rel in 8.0
https://doc.therp.nl/openupgrade/analyse.html says
On both instances, install a database without demo data and install the openupgrade_records module, which is included in the OpenUpgrade server distribution.
this does not work on v7 (and others) as
server/openerp/openupgrade is missing and is not part of the module
after manually copying this directory the module loads but does not generate records
solution
either move directory openupgrade to module openupgrade_records
(OR update documentation - not so good solution)
OR I miss understand
Set up two OpenUpgrade servers of subsequent OpenERP releases
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.