When adding data to a Time Routed Alias (TRA), we sometimes need to create new collections. Today we only do this synchronously – on-demand when a document is coming in. But this can add delays as the documents inbound are held up for a collection to be created. And, there may be a problem like a lack of resources (e.g. ample SolrCloud nodes with space) that the policy framework defines. Such problems could be rectified sooner rather than later assume there is log alerting in place (definitely out of scope here).
Pre-emptive TRA collection needs a time window configuration parameter, perhaps named something like "preemptiveCreateWindowMs". If a document's timestamp is within this time window from the end time of the head/lead collection then the collection can be created pre-eptively. If no data is being sent to the TRA, no collections will be auto created, nor will it happen if older data is being added. It may be convenient to effectively limit this time setting to the smaller of this value and the TRA interval window, which I think is a fine limitation.
- links to