Hi devs,
A first safe (from retro compatibility point of view) step for improving the limit regarding the maximum size of the references in XWiki (currently 255 characters) could be to increase the cause of this limitation: the size of the columns in the database which store document references.
Long story short with the currently supported databases we can increase it to 768 characters without impacting noticeably the performances (of course bigger references will take more disk space but for example in supported versions of MySQL the storage is variable, and you don’t get the maximum size allocated all the time).
See https://design.xwiki.org/xwiki/bin/view/Proposal/Increasethe255characterslimitforreferences#HIncreasethesizeofthereferencerelatedfields for more technical details that leaded to 768. It also contains very first thoughts on other ideas to help workaround this limitation.
So I propose to do the following:
- modify the hbm files to increase the maximum size of the columns that can store references (you can find a list on https://design.xwiki.org/xwiki/bin/view/Proposal/Increasethe255characterslimitforreferences#HWhereisthislimitationcomingfrom3F)
- write a migration to update those columns during upgrade
Of course 768 is still not huge, and I don’t see it as the final solution to close this subject for good, but it’s already a nice improvement that we can have in the next version of XWiki without taking much risk.
WDYT ?