Details
-
Bug
-
Resolution: Fixed
-
Major
-
3.1.1
Description
I was reported that trying to save a user document in object mode (to change the user from active to inactive) or trying to change the password caused the exception in the attached file.
I inspected the user object for that user and found that the "documents" property of the watchlist object is pretty big, a wc on it reported 65532 characters. Knowing that the mysql limit of text fields is at 65535 (and the xwiki mapping limit is at 60000), I suspect the issue is caused by an overflow of this property.
Note that I personally didn't manage to reproduce. There are still some issues that I don't understand, e.g. why would a modification throw an exception since that field id not modified, and its size is still under the limit. One sort of explanation that I find is that the user document was in the cache already with a higher value for that field and that save was trying to save the cached version of the document.
This issue is to signal the fact that apparently there is no verification of this limit when operating with the documents list in the watchlist. I highlighted autowatch in the issue title since, for this user that I tested, the watched documents count is 965, which could be considered a bit too high to be added manually by the user, but can be easily reached with a user for which autowatch is enabled (also depending on the autowatch policy).
Attachments
Issue Links
- depends on
-
XWIKI-10098 Inconsistent handling of separators in List properties
- Closed