fix(ingest/vertex): Vertex null start date fix #15258
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
⏺ ## Fix: Handle None timestamps in Vertex AI ingestion to prevent crashes
Problem
Users were experiencing consistent crashes when ingesting Vertex AI metadata into DataHub with the error:
AttributeError: 'NoneType' object has no attribute 'timestamp'
The ingestion would successfully connect to GCP Vertex AI and identify assets, but would fail when
processing pipeline tasks or experiment runs that had incomplete timestamp data.
Root Cause
The Vertex AI source code was calling
.timestamp()on timestamp fields without checking if they wereNonefirst. This occurred in three locations:_get_pipeline_tasks_metadata(line 253): Calculated task duration usingstart_time.timestamp()and
end_time.timestamp()when onlyend_timewas checked for None_get_run_timestamps(line 501): Usedcreate_time.timestamp()andupdate_time.timestamp()without None checks
_gen_run_execution(line 547): Calleddatetime_to_ts_millis()on potentially None timestampsGCP Vertex AI can return
Nonefor these timestamps when:start_time)end_time)create_time/update_time)Changes Made
1. Fixed
_get_pipeline_tasks_metadatamethod