[Crunch2] Retain record of container retries
The container request record lists the most recent container attempted to fulfill the request. This means when a failed container is retried, previous failed attempts are not visible to the user. This obscures the fact that retries occurred, and sometimes hinders debugging failed containers.
Need a column that has uuids of all containers. Can use array column, eg https://www.postgresql.org/docs/9.6/arrays.html, or JSONB column.
Current data model has "container_uuid" as a singular value. Would be a backwards compatibility problem if that changed to be an array. API should report past attempts in a separate field, like "past_container_uuids".
Unclear if it would be better in the underlying database to have a single array column, or retain container_uuid column and add a past_container_uuids column.
Need to be able to join array column to grant read permission to container records. Section 8.15.5 of postgres docs suggest this is something like:
container.uuid = ANY (container_request.past_container_uuids)