You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PageSecurity.EnhanceClass is responsible for altering TypedJson schema of a view-model to include permission checking. Problems can now occur, because:
Two threads access a view-model for the first time and they both enhance it at the same time, mangling their modifications
Two threads access a view-model for the first time and one enhances it, while the other is using it
There can be more problems
There should be locking in this method, but since it's on a path of every request a naive lock statement could hurt performance significantly.
The text was updated successfully, but these errors were encountered:
... altering TypedJson schema of a view-model to include permission checking.
I think, that this operation shall happen inside a lock and during application startup. Adding more and more checks per request will contribute to the overall app latency, while doing it once on app start will only affect app startup time.
PageSecurity.EnhanceClass is responsible for altering TypedJson schema of a view-model to include permission checking. Problems can now occur, because:
There should be locking in this method, but since it's on a path of every request a naive
lock
statement could hurt performance significantly.The text was updated successfully, but these errors were encountered: