Revert "Use HasStandardAttributes as parent class for Tags DB model"

This reverts commit 85d3fff97e55ba85f72cda4365ad0441c10bd9f6.

Reason for revert:
The original change was made as a “cheap win” to optimize the number
of queries the neutron server makes during testing. This did
improve the number of queries made but introduced regression in
real world deployments where some customers(through automation)
would define hundreds of tags per port across a large deployment.
I am proposing to revert this change in favor of the old “subquery”
relation in order to fix this regression. In addition, I filed the
Related-Bug #2069061 to investigate using `selectin` as the more
appropriate long term solution.

Change-Id: I83ec349e49e1f343da8996cab149d76443120873
Closes-bug: #2068761
Related-Bug: #2069061
This commit is contained in:
Miro Tomaska 2024-06-07 19:14:00 +00:00
parent 0d8cc09c4a
commit f7e9b2e5b3

@ -26,6 +26,6 @@ class Tag(model_base.BASEV2):
tag = sa.Column(sa.String(255), nullable=False, primary_key=True)
standard_attr = orm.relationship(
'StandardAttribute', load_on_pending=True,
backref=orm.backref('tags', lazy='joined', viewonly=True),
backref=orm.backref('tags', lazy='subquery', viewonly=True),
sync_backref=False)
revises_on_change = ('standard_attr', )