Skip to content

Commit

Permalink
Include workloads with no containers edge case in dsmetadata DB object
Browse files Browse the repository at this point in the history
  • Loading branch information
shreyabiradar07 committed Oct 15, 2024
1 parent ec4fd7e commit f31d0d3
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions src/main/java/com/autotune/database/helper/DBHelpers.java
Original file line number Diff line number Diff line change
Expand Up @@ -895,6 +895,11 @@ public static List<DataSourceMetadataInfo> convertKruizeMetadataToDataSourceMeta
continue;
}
dataSourceNamespace.getDataSourceWorkloadHashMap().put(kruizeMetadata.getWorkloadName(), dataSourceWorkload);

if (null == dataSourceContainer) {
dataSourceWorkload.setDataSourceContainerHashMap(null);
continue;
}
dataSourceWorkload.getDataSourceContainerHashMap().put(kruizeMetadata.getContainerName(), dataSourceContainer);
} catch (Exception e) {
LOGGER.error("Error occurred while converting to dataSourceMetadataInfo from DB object : {}", e.getMessage());
Expand Down Expand Up @@ -1028,6 +1033,23 @@ public static List<KruizeDSMetadataEntry> convertDataSourceMetadataToMetadataObj
}

for (DataSourceWorkload dataSourceWorkload : dataSourceNamespace.getDataSourceWorkloadHashMap().values()) {
// handles 'job' workload type with no containers
if(null == dataSourceWorkload.getDataSourceContainerHashMap()) {
KruizeDSMetadataEntry kruizeMetadata = new KruizeDSMetadataEntry();
kruizeMetadata.setVersion(KruizeConstants.DataSourceConstants.DataSourceMetadataInfoConstants.version);

kruizeMetadata.setDataSourceName(dataSourceName);
kruizeMetadata.setClusterName(dataSourceClusterName);
kruizeMetadata.setNamespace(namespaceName);
kruizeMetadata.setWorkloadType(dataSourceWorkload.getDataSourceWorkloadType());
kruizeMetadata.setWorkloadName(dataSourceWorkload.getDataSourceWorkloadName());

kruizeMetadata.setContainerName(null);
kruizeMetadata.setContainerImageName(null);

kruizeMetadataList.add(kruizeMetadata);
continue;
}

for (DataSourceContainer dataSourceContainer : dataSourceWorkload.getDataSourceContainerHashMap().values()) {
KruizeDSMetadataEntry kruizeMetadata = new KruizeDSMetadataEntry();
Expand Down

0 comments on commit f31d0d3

Please sign in to comment.