Okay, after discussing the problem big-picture with Julian we have agreed on the following implementation plan:
1. Make {IDSSPR, IDASBPR}.current_published to return the the latests PUBLISHED or PENDING publication in its context
* it will reduce the ancestry race-condition upload-time and override-time.
* Yes, the property name is horrible, but we don't have time to fix it right now.
2. Before accepting a upload (source or binary any arch) we will also try to find a ancestry in ACCEPTED queue, if found we will use its overrides.
* it will propagate queue binary overrides across all architectures.
3. We will lookup the full binary chain by name before overriding, instead of using IDSSPR.binaries directly
* It will fix the inconsistencies for FTBFS.
I hope it is still sounding correct during the implementation.
Okay, after discussing the problem big-picture with Julian we have agreed on the following implementation plan:
1. Make {IDSSPR, IDASBPR} .current_ published to return the the latests PUBLISHED or PENDING publication in its context
* it will reduce the ancestry race-condition upload-time and override-time.
* Yes, the property name is horrible, but we don't have time to fix it right now.
2. Before accepting a upload (source or binary any arch) we will also try to find a ancestry in ACCEPTED queue, if found we will use its overrides.
* it will propagate queue binary overrides across all architectures.
3. We will lookup the full binary chain by name before overriding, instead of using IDSSPR.binaries directly
* It will fix the inconsistencies for FTBFS.
I hope it is still sounding correct during the implementation.