Suppose a bucket has a file size of 150 bytes and the homeserver's file size limit is set to 100 bytes.
The IndexStorage class' split_large_buckets will correctly divide this bucket into two "fraction-of-bucket"s of 100 and 50 bytes.
The user will upload these files, the callback will store them in the mxc_uris_map.
The problem is that update_lookup_table converts each location into a single other location. So the bucket's location will be converted to just the first file.
The solution is for convert_location to find and return all the remote files matching the location.