- Refactored flattenProcessors to flattenWithMetadata (FlatProcessor record with depth/parentIndex) - INSERT now populates 12 new columns: exchange_bodies, exchange_headers, processor_depths, processor_parent_indexes, processor_error_messages, processor_error_stacktraces, processor_input_bodies, processor_output_bodies, processor_input_headers, processor_output_headers, processor_diagram_node_ids, diagram_content_hash - Exchange bodies/headers concatenated from all processor snapshots + route-level snapshots - Null ExchangeSnapshot handled gracefully (empty string defaults) - Headers serialized to JSON via Jackson ObjectMapper - IngestionSchemaIT verifies 3-level tree metadata, body concatenation, null snapshot handling - DiagramRenderer/DiagramLayout stubs created to fix pre-existing compilation error (Rule 3) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.1 KiB
1.1 KiB
Deferred Items - Phase 02
Pre-existing Issues
ElkDiagramRendererTest breaks Spring context when run in full suite
- Found during: 02-01, Task 2
- Issue: When
ElkDiagramRendererTestruns before Spring Boot integration tests in the same Surefire JVM, ELK's static initialization fails withNoClassDefFoundError: org/eclipse/xtext/xbase/lib/CollectionLiterals, which then prevents the Spring context from creating thediagramRendererbean for all subsequent integration tests. - Impact: Full
mvn testfor the app module shows 30 errors (all integration tests fail after ElkDiagramRendererTest runs) - Tests pass individually and in any grouping that excludes ElkDiagramRendererTest
- Root cause: ELK 0.11.0's service loader initializes
LayeredMetaDataProviderwhich uses xtext'sCollectionLiteralsin a static initializer. The class is present on the classpath (dependency resolves correctly) but fails in the Surefire fork's classloading order when combined with Spring Boot's fat classloader. - Suggested fix: Configure Surefire to fork per test class, or defer ElkDiagramRendererTest to its own module/phase.