Conversation
openmetadata-service/src/main/java/org/openmetadata/service/jdbi3/DataProductRepository.java
Show resolved
Hide resolved
|
🔍 CI failure analysis for 2b06abf: maven-sonarcloud-ci shows same 6 DataProductResourceTest failures as maven-postgresql-ci. All 7 Data Product tests (6 unit + 1 integration) fail consistently across all CI configurations, all need same fix: add assets before output ports.CI Failure Analysis - Complete PictureNew Failure: maven-sonarcloud-ci (Job 62857565008)Result: Build completed with failures 6 DataProductResourceTest Unit Test Failures - RELATED TO PR:
These are the SAME 6 unit test failures seen in maven-postgresql-ci (Job 62857565578), confirming 100% consistency across both PostgreSQL and SonarCloud builds. Previous Failure: maven-postgresql-ci (Job 62857565578)Same 6 DataProductResourceTest failures with identical errors Root Cause AnalysisThese unit tests call The Solution: Update // Add entity as data product asset first
BulkAssets assetRequest = new BulkAssets().withAssets(outputPorts);
repository.bulkAddAssets(product.getFullyQualifiedName(), assetRequest);
// Then add as output port
repository.bulkAddOutputPorts(product.getFullyQualifiedName(), bulkAssets);Test Report (Job 62863799777)Status: Consequence of test failures above Integration Test Failure (Still Applicable)Test: Status: Failing consistently in BOTH MySQL and PostgreSQL integration test builds Same root cause and solution - needs to add assets before output ports at line 189-190 Complete Picture: 7 Total Test FailuresUnit Tests (6):
Integration Test (1):
Root Cause (All 7 Tests): Call Summary✅ PR Implementation: Excellent validation logic with code review optimizations ✅ E2E Tests (InputOutputPorts.spec.ts): Already fixed
📊 Consistency: Identical failures across multiple CI configurations confirm legitimate test issues 🔴 Unrelated: Python ingestion tests, Playwright failures Code Review 👍 Approved with suggestions 4 resolved / 5 findingsWell-structured validation for input/output port exclusivity and output port prerequisites, with proper partial success handling and good test coverage. Both previous performance and edge case findings are resolved. One minor dead code issue with the unused 💡 Quality: Unused
|
| Auto-apply | Compact |
|
|
Was this helpful? React with 👍 / 👎 | Gitar



Add validations for input/output ports
Describe your changes:
Fixes
I worked on ... because ...
Type of change:
Checklist:
Fixes <issue-number>: <short explanation>Summary by Gitar
existsRelationshipquery inCollectionDAO.javaDataProductResourceIT.javacovering exclusivity enforcement, prerequisite validation, port movement, asymmetric input/output behavior, and asset deletion cleanupThis will update automatically on new commits.