1

私は OpenERP 6 OK を使用していましたが、バージョン 7 にアップグレードすることにしました。

http://nightly.openerp.com/trunk/nightly/deb/から openerp_7.0alpha-20121206-000102-1_all.deb をダウンロードしてインストールしました。参照するhttp://localhost:8069と、データベースを選択できなくなりました(DBが1つある場合、セレクターを表示する理由がないため)。ログイン後、次のようになります。

OpenERP Server Error
Client Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.7/openerp/addons/web/http.py", line 195, in dispatch
    response["result"] = method(self, **self.params)
  File "/usr/lib/pymodules/python2.7/openerp/addons/web/controllers/main.py", line 833, in authenticate
    req.session.authenticate(db, login, password, env)
  File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 113, in authenticate
    uid = self.proxy('common').authenticate(db, login, password, env)
  File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 28, in proxy_method
    result = self.session.send(self.service_name, method, *args)
  File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 101, in send
    raise xmlrpclib.Fault(openerp.tools.exception_to_unicode(e), formatted_info)


Server Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.7/openerp/addons/web/session.py", line 87, in send
    return openerp.netsvc.dispatch_rpc(service_name, method, args)
  File "/usr/lib/pymodules/python2.7/openerp/netsvc.py", line 361, in dispatch_rpc
    result = ExportService.getService(service_name).dispatch(method, params)
  File "/usr/lib/pymodules/python2.7/openerp/service/web_services.py", line 413, in dispatch
    return fn(*params)
  File "/usr/lib/pymodules/python2.7/openerp/service/web_services.py", line 424, in exp_authenticate
    res_users = pooler.get_pool(db).get('res.users')
  File "/usr/lib/pymodules/python2.7/openerp/pooler.py", line 50, in get_pool
    return get_db_and_pool(db_name, force_demo, status, update_module)[1]
  File "/usr/lib/pymodules/python2.7/openerp/pooler.py", line 33, in get_db_and_pool
    registry = RegistryManager.get(db_name, force_demo, status, update_module, pooljobs)
  File "/usr/lib/pymodules/python2.7/openerp/modules/registry.py", line 156, in get
    update_module, pooljobs)
  File "/usr/lib/pymodules/python2.7/openerp/modules/registry.py", line 178, in new
    openerp.modules.load_modules(registry.db, force_demo, status, update_module)
  File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 296, in load_modules
    loaded_modules, processed_modules = load_module_graph(cr, graph, status, perform_checks=(not update_module), report=report)
  File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 164, in load_module_graph
    init_module_models(cr, package.name, models)
  File "/usr/lib/pymodules/python2.7/openerp/modules/module.py", line 373, in init_module_models
    result = obj._auto_init(cr, {'module': module_name})
  File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 3211, in _auto_init
    self._add_sql_constraints(cr)
  File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 3350, in _add_sql_constraints
    self._save_constraint(cr, conname, 'u')
  File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 2859, in _save_constraint
    """, (constraint_name, self._module))
  File "/usr/lib/pymodules/python2.7/openerp/sql_db.py", line 162, in wrapper
    return f(self, *args, **kwargs)
  File "/usr/lib/pymodules/python2.7/openerp/sql_db.py", line 227, in execute
    res = self._obj.execute(query, params)
ProgrammingError: relation "ir_model_constraint" does not exist
LINE 2:             SELECT 1 FROM ir_model_constraint, ir_module_mod...
                                  ^

だから私は次のように手動で実行しようとします:

sudo openerp-server stop
su - openerp
openerp-server -d openerp1 -u all

そして私は得る

2012-12-07 07:00:43,417 7584 ERROR openerp1 openerp: Failed to initialize database `openerp1`.
Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.7/openerp/cli/server.py", line 97, in preload_registry
    db, registry = openerp.pooler.get_db_and_pool(dbname, update_module=openerp.tools.config['init'] or openerp.tools.config['update'], pooljobs=False)
  File "/usr/lib/pymodules/python2.7/openerp/pooler.py", line 33, in get_db_and_pool
    registry = RegistryManager.get(db_name, force_demo, status, update_module, pooljobs)
  File "/usr/lib/pymodules/python2.7/openerp/modules/registry.py", line 156, in get
    update_module, pooljobs)
  File "/usr/lib/pymodules/python2.7/openerp/modules/registry.py", line 178, in new
    openerp.modules.load_modules(registry.db, force_demo, status, update_module)
  File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 296, in load_modules
    loaded_modules, processed_modules = load_module_graph(cr, graph, status, perform_checks=(not update_module), report=report)
  File "/usr/lib/pymodules/python2.7/openerp/modules/loading.py", line 164, in load_module_graph
    init_module_models(cr, package.name, models)
  File "/usr/lib/pymodules/python2.7/openerp/modules/module.py", line 373, in init_module_models
    result = obj._auto_init(cr, {'module': module_name})
  File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 3211, in _auto_init
    self._add_sql_constraints(cr)
  File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 3350, in _add_sql_constraints
    self._save_constraint(cr, conname, 'u')
  File "/usr/lib/pymodules/python2.7/openerp/osv/orm.py", line 2859, in _save_constraint
    """, (constraint_name, self._module))
  File "/usr/lib/pymodules/python2.7/openerp/sql_db.py", line 162, in wrapper
    return f(self, *args, **kwargs)
  File "/usr/lib/pymodules/python2.7/openerp/sql_db.py", line 227, in execute
    res = self._obj.execute(query, params)
ProgrammingError: relation "ir_model_constraint" does not exist
LINE 2:             SELECT 1 FROM ir_model_constraint, ir_module_mod...

アップグレードするにはどうすればよいですか?

4

2 に答える 2

3

現在、OpenERP 6.0 から 7.0 への無料アップグレード メカニズムはありません。OpenERP SA は商用アップグレード ソリューションの販売で生計を立てており、年間サポート契約を結んでいる場合は大幅な割引が適用されます。

-u all を使用すると、おそらくデータベース スキーマのアップグレードが試行されますが、データは移行されません (つまり、列の名前が変更された場合、データは古い列から新しい列に移動されません)。同じ XML ID を持つ新しいビューが古いビューを置き換え、新しいビューが作成され、古いビューがまだ存在し、存在しないフィールドを参照している可能性があります。基本的に、DB は完全に混乱しており、v 6.0 の実行を継続するために使用できるバックアップがあることを願っています。

于 2012-12-10T08:55:37.167 に答える
2

同じマシンにV6.1もインストールしましたか?

このエラーは、古いバージョンのモジュールと新しいバージョンのモジュールが混在している場合に発生しました。

仮想マシンをインストールして再試行することをお勧めします。正しくない場合は、パッケージをアンインストールし、パッケージに関連するすべてのファイル(モジュール)を削除して、再インストールします。

データベースを古いバージョンに修復する必要がある場合は、6.1または6.0を再インストールし、パラメーター-u all-dnameofdbを使用してサーバーを起動します。

よろしく。

于 2012-12-08T04:56:35.690 に答える