# Errors when migrating dev trytond from 7.9 to 8.1 (pre 8.2)

**URL:** https://discuss.tryton.org/t/errors-when-migrating-dev-trytond-from-7-9-to-8-1-pre-8-2/9409
**Category:** Developer
**Tags:** tryton
**Created:** [September 29, 2026, 2:14pm UTC](https://discuss.tryton.org/t/errors-when-migrating-dev-trytond-from-7-9-to-8-1-pre-8-2/9409 "2026-09-29T14:14:41Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![maxx](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/maxx/32/2320_2.png) [@maxx](https://discuss.tryton.org/u/maxx)
#### Post date: [September 29, 2026, 2:14pm UTC](https://discuss.tryton.org/t/errors-when-migrating-dev-trytond-from-7-9-to-8-1-pre-8-2/9409/1 "2026-09-29T14:14:41Z")

</div>

Hi, trying to migrate a test database fom 7.9 to 8.1

I’m getting this error when doing ‘trytond-admin’: (seems linked to [trytond/trytond/ir/translation.py · branch/default · Tryton / Tryton · GitLab](https://foss.heptapod.net/tryton/tryton/-/blob/branch/default/trytond/trytond/ir/translation.py?blame=1&ref_type=heads#L164) )

```auto
/srv/tryton/tryton_dev/.venv/trytond/bin/trytond-admin -v -c /srv/tryton//tryton_dev/trytond.conf -d tryton_saluc_dev --all --activate-dependencies
Traceback (most recent call last):
File "/srv/tryton/tryton_dev/.venv/trytond/bin/trytond-admin", line 8, in 
sys.exit(main())
~~~~ ^^
File "/srv/tryton/tryton_dev/trytond/trytond/cli/admin.py", line 21, in main
admin.run(options)
~~~~~~~~~ ^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/admin.py", line 58, in run
pool.init(update=options.update, lang=list(lang),
~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
activatedeps=options.activatedeps,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
indexes=options.indexes)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/pool.py", line 149, in init
restart = not load_modules(
~~~~~~~~~~~~ ^
self.database_name, self, update=update, lang=lang,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
activatedeps=activatedeps, indexes=indexes)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/modules/` **`init`** `.py", line 529, in load_modules
_load_modules(update)
~~~~~~~~~~~~~ ^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/modules/` **`init`** `.py", line 499, in _load_modules
load_module_graph(graph, pool, update, lang, indexes)
~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/modules/` **`init`** `.py", line 273, in load_module_graph
register_classes(early_classes[module], module)
~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/modules/` **`init`** `.py", line 260, in register_classes
cls.` **`register`** `(module)
~~~~~~~~~~~~~~~~ ^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/model/fields/fmany2one.py", line 36, in ` **`register`**
super().` **`register`** `(module)
~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/model/fields/fmany2one.py", line 36, in ` **`register`**
super().` **`register`** `(module)
~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/model/modelsql.py", line 490, in ` **`register`**
super().` **`register`** `(module_name)
~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/model/model.py", line 129, in ` **`register`**
Translation.register_model(cls, module_name)
~~~~~~~~~~~~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/ir/translation.py", line 196, in register_model
cursor.execute(*ir_translation.insert(
~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^
[Column(ir_translation, c)
^^^^^^^^^^^^^^^^^^^^^^^^^^
...<3 lines>...
name, INTERNAL_LANG, 'model', src,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
'', module_name, False, Null]]))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/trytond/trytond/backend/postgresql/database.py", line 64, in execute
return super().execute(query, params, prepare=prepare, binary=binary)
~~~~~~~~~~~~~~~ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/srv/tryton/tryton_dev/.venv/trytond/lib/python3.13/site-packages/psycopg/cursor.py", line 117, in execute
raise ex.with_traceback(None)
psycopg.errors.NotNullViolation: null value in column "res_id" of relation "ir_translation" violates not-null constraint
DETAIL: Failing row contains (19375, en, Filestore Queue, ir.filestore.queue,string, null, , model, ir, f, null, null, null, null, null, null, null, null, null).

```

Register method on trytond is not executed first when doing trytond-admin ?  
Thanks !

---

<div class="post-metadata">

### Author: ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)
#### Post date: [September 29, 2026, 3:47pm UTC](https://discuss.tryton.org/t/errors-when-migrating-dev-trytond-from-7-9-to-8-1-pre-8-2/9409/2 "2026-09-29T15:47:24Z")

</div>

I can not reproduce with a database from 8.0.  
Which is being registered before the `ir_translation` table is migrated?

---

<div class="post-metadata">

### Author: ![maxx](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/maxx/32/2320_2.png) [@maxx](https://discuss.tryton.org/u/maxx)
#### Post date: [September 29, 2026, 4:35pm UTC](https://discuss.tryton.org/t/errors-when-migrating-dev-trytond-from-7-9-to-8-1-pre-8-2/9409/3 "2026-09-29T16:35:17Z")

</div>

How to know it ? Extra verbose mode ?

---

<div class="post-metadata">

### Author: ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)
#### Post date: [September 29, 2026, 4:44pm UTC](https://discuss.tryton.org/t/errors-when-migrating-dev-trytond-from-7-9-to-8-1-pre-8-2/9409/4 "2026-09-29T16:44:37Z")

</div>

With INFO level, you should see the model being registered.
