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
The Challenge table does not have an index on the expiration column but it is used throughout the code to find expired challenges. We should add an index to the column.
Additionally we call cleanup_challenges() during a request which tries to delete all expired challenges:
This probably needs to lock the complete table (due to the expiration < <date> condition) and could lead to deadlocks.
A request should only delete it's own challenge (either because it is answered or because it expired) but not other challenges.
The challenge table can be cleared by an external script or a task runner.
The text was updated successfully, but these errors were encountered:
In the code only challenges from a destinct token
are cleaned up. This avoids locking the complete table.
pi-manage now has a command "challenge" to clean up
expired challenges or challenges by age.
Closes#3920
The
Challenge
table does not have an index on theexpiration
column but it is used throughout the code to find expired challenges. We should add an index to the column.Additionally we call
cleanup_challenges()
during a request which tries to delete all expired challenges:privacyidea/privacyidea/models.py
Line 1490 in 5c16530
This probably needs to lock the complete table (due to the
expiration < <date>
condition) and could lead to deadlocks.A request should only delete it's own challenge (either because it is answered or because it expired) but not other challenges.
The challenge table can be cleared by an external script or a task runner.
The text was updated successfully, but these errors were encountered: