Zanzana: incorrect folder tree bug (#106478)

use pagination to get all folders
This commit is contained in:
mohammad-hamid
2025-06-23 11:07:16 -04:00
committed by GitHub
parent 51bd50142a
commit 55cc6c120a

View File

@ -72,9 +72,17 @@ func folderTreeCollector(folderService folder.Service) legacyTupleCollector {
ctx, ident := identity.WithServiceIdentity(ctx, orgID)
tuples := make(map[string]map[string]*openfgav1.TupleKey)
const pageSize = 1000
var page int64 = 1
for {
q := folder.GetFoldersQuery{
OrgID: orgID,
SignedInUser: ident,
Limit: pageSize,
Page: page,
}
folders, err := folderService.GetFolders(ctx, q)
@ -82,8 +90,6 @@ func folderTreeCollector(folderService folder.Service) legacyTupleCollector {
return nil, err
}
tuples := make(map[string]map[string]*openfgav1.TupleKey)
for _, f := range folders {
var tuple *openfgav1.TupleKey
if f.ParentUID == "" {
@ -103,6 +109,13 @@ func folderTreeCollector(folderService folder.Service) legacyTupleCollector {
tuples[tuple.Object][tuple.String()] = tuple
}
if int64(len(folders)) < pageSize {
break
}
page++
}
return tuples, nil
}
}