Skip to content

Conversation

@Rello
Copy link
Contributor

@Rello Rello commented Feb 11, 2026

Optimized ACLManager::getRelevantRulesForPath() by replacing repeated array_merge() + array_unique() calls with map-style deduplication ($allPaths[$path] = true) and passing array_keys() to getRules(). This avoids repeated large-array rebuilds

Blackfire Profiling on NC31 with 30k Team Folders + 30 ACLs

Before:
Bildschirmfoto 2026-02-11 um 15 06 19

After:
Bildschirmfoto 2026-02-11 um 15 05 49

Optimized ACLManager::getRelevantRulesForPath() by replacing repeated array_merge() + array_unique() calls with map-style deduplication ($allPaths[$path] = true) and passing array_keys() to getRules(). This avoids repeated large-array rebuilds

Signed-off-by: Rello <[email protected]>
@Rello
Copy link
Contributor Author

Rello commented Feb 11, 2026

/backport to stable31

@Rello Rello marked this pull request as draft February 11, 2026 15:02
@Rello
Copy link
Contributor Author

Rello commented Feb 11, 2026

getPermissionsForPathFromRules was reduced from 2.5s to 0.3s

@Rello Rello marked this pull request as ready for review February 11, 2026 15:22
@provokateurin
Copy link
Member

/backport to stable33

@provokateurin
Copy link
Member

/backport to stable32

@provokateurin provokateurin merged commit 73b1cff into master Feb 11, 2026
57 of 60 checks passed
@provokateurin provokateurin deleted the Rello-patch-1 branch February 11, 2026 19:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants