未验证 提交 80343838 编写于 作者: A Ansgar

newer_version: explicitly specify which relationship's parent to use

SQLAlchemy 1.3 and 1.4 disagree whether to use
`DBBinary.suites` (SQLA 1.3) or `DBSource.suites` (SQLA 1.4).
Explicitly specify which one to use.
上级 bf848048
...@@ -53,9 +53,9 @@ def newer_version(lowersuite_name, highersuite_name, session, include_equal=Fals ...@@ -53,9 +53,9 @@ def newer_version(lowersuite_name, highersuite_name, session, include_equal=Fals
func.max(DBSource.version).label('version'), func.max(DBSource.version).label('version'),
Architecture.arch_string, Architecture.arch_string,
func.max(DBBinary.version).label('binversion')). \ func.max(DBBinary.version).label('binversion')). \
join(DBSource). \ filter(DBBinary.suites.contains(suite)). \
with_parent(suite). \ join(DBBinary.source). \
join(Architecture). \ join(DBBinary.architecture). \
group_by( group_by(
DBBinary.package, DBBinary.package,
DBSource.source, DBSource.source,
...@@ -89,9 +89,9 @@ def newer_version(lowersuite_name, highersuite_name, session, include_equal=Fals ...@@ -89,9 +89,9 @@ def newer_version(lowersuite_name, highersuite_name, session, include_equal=Fals
DBSource.version, DBSource.version,
Architecture.arch_string Architecture.arch_string
). \ ). \
join(DBSource). \ filter(DBBinary.suites.contains(highersuite)). \
with_parent(highersuite). \ join(DBBinary.source). \
join(Architecture). \ join(DBBinary.architecture). \
filter(DBSource.source == source). \ filter(DBSource.source == source). \
subquery() subquery()
q2 = session.query(q1.c.arch_string).group_by(q1.c.arch_string) q2 = session.query(q1.c.arch_string).group_by(q1.c.arch_string)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册