-
Task
-
Resolution: Unresolved
-
Normal
-
None
-
None
-
None
-
5
-
False
-
None
-
False
-
-
We recently fixed the all_labels bug around incorrectly populating all_labels for OCP on Cloud endpoints. This bug was causing us to miss infra cost during backpopulate summary tasks. See full details below.
This issue is to make sure we remove the unleash flag preventing users from making use off all these labels (pod + volume). We need to wait another 3 months before enabling all customers to ensure that the DB has populated all the correct fields/tables for the full range available in the cost explorer.
Unleash flag to be removed cost-management.backend.feature-cost-3083-all-labels
This needs removing from the unleash client itself and from our code base. This can be removed on or after 2024-07-01
rhn-support-lcouzens and I dug into the SQL we use to create the labels for our openshift on cloud views. Specifically if you look at this case statement:
You will notice that it operates with the expectation that the volume & pod labels have been combined into the pod_labels field. During the back populate we use the data source field to separate them back out into individual fields.
However, if we take a look at the how we populate the pod_labels field here:
https://github.com/project-koku/koku/blob/696acff67ba37bb3e7c3442fa4dfd3526e724911/koku/masu/database/trino_sql/reporting_ocpawscostlineitem_daily_summary.sql#L693-L705
We are not combining the pod & volume labels.
This is actually a regression caused by this change:
https://github.com/project-koku/koku/pull/3874/files
You can see here:
https://github.com/project-koku/koku/pull/3874/files#diff-758e15477deb4bcd49f8a763a22de54601c6752359088c02098648b00f7e383dL391-L402
That we used to combine pod_labels, volume_labels, and could integration tags into the pod_labels field. However, the problem was that during the back populate we were inserting cloud provider tags into the OCP tables. Therefore, we changed the combination of all three labels into "tags", but we made the decision to only pass back the pod_labels instead of the combination of pod_labels & volume_labels.