Merge pull request #11730 from swordqiu/automated-cherry-pick-of-#11729-upstream-release-3.7

Automated cherry pick of #11729: fix: simplify SQL for distinct field query of tenant or domain names
This commit is contained in:
Zexi Li
2021-07-27 10:29:43 +08:00
committed by GitHub
2 changed files with 2 additions and 2 deletions
+1 -1
View File
@@ -91,7 +91,7 @@ func ValidateCreateDomainId(domainId string) error {
func (manager *SDomainizedResourceBaseManager) QueryDistinctExtraField(q *sqlchemy.SQuery, field string) (*sqlchemy.SQuery, error) {
switch field {
case "domain":
tenantCacheQuery := TenantCacheManager.GetDomainQuery("name", "id").SubQuery()
tenantCacheQuery := TenantCacheManager.getTable() // GetDomainQuery("name", "id").SubQuery()
q = q.AppendField(tenantCacheQuery.Field("name", "domain")).Distinct()
q = q.Join(tenantCacheQuery, sqlchemy.Equals(q.Field("domain_id"), tenantCacheQuery.Field("id")))
return q, nil
+1 -1
View File
@@ -77,7 +77,7 @@ func (manager *SProjectizedResourceBaseManager) FetchOwnerId(ctx context.Context
func (manager *SProjectizedResourceBaseManager) QueryDistinctExtraField(q *sqlchemy.SQuery, field string) (*sqlchemy.SQuery, error) {
switch field {
case "tenant":
tenantCacheQuery := TenantCacheManager.GetTenantQuery("name", "id").Distinct().SubQuery()
tenantCacheQuery := TenantCacheManager.getTable() // GetTenantQuery("name", "id").Distinct().SubQuery()
q.AppendField(tenantCacheQuery.Field("name", "tenant")).Distinct()
q = q.Join(tenantCacheQuery, sqlchemy.Equals(q.Field("tenant_id"), tenantCacheQuery.Field("id")))
return q, nil