[IMP] fields: add a primary key for m2m tables
Remove individual m2m indexes and replace with a single mirrored composite This will help for logical replication strategies (postgresql BDR) closes odoo/odoo#37963 Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
This commit is contained in:
committed by
Martin Trigaux
parent
eaa022388d
commit
ec162dd0cb
+2
-3
@@ -3141,10 +3141,9 @@ class Many2many(_RelationalMulti):
|
||||
query = """
|
||||
CREATE TABLE "{rel}" ("{id1}" INTEGER NOT NULL,
|
||||
"{id2}" INTEGER NOT NULL,
|
||||
UNIQUE("{id1}","{id2}"));
|
||||
PRIMARY KEY("{id1}","{id2}"));
|
||||
COMMENT ON TABLE "{rel}" IS %s;
|
||||
CREATE INDEX ON "{rel}" ("{id1}");
|
||||
CREATE INDEX ON "{rel}" ("{id2}")
|
||||
CREATE INDEX ON "{rel}" ("{id2}","{id1}");
|
||||
""".format(rel=self.relation, id1=self.column1, id2=self.column2)
|
||||
cr.execute(query, ['RELATION BETWEEN %s AND %s' % (model._table, comodel._table)])
|
||||
_schema.debug("Create table %r: m2m relation between %r and %r", self.relation, model._table, comodel._table)
|
||||
|
||||
Reference in New Issue
Block a user