Previously, it was possible for the number of stored columns per table to grow
unbounded. While this likely isn't a problem in practice in most cases, one can
imagine cases where people temporarily have thousands of attributes when are
then never used again. We shouldn't have to store any data for these columns
forever.
This patch adds some simple garbage collection mechanism that keeps the number
of stored unavailable columns per spreadsheet table below a certain threshold
(50 currently). Least recently used columns are removed first.
Pull Request: https://projects.blender.org/blender/blender/pulls/139469