mattcasters opened a new pull request, #7595:
URL: https://github.com/apache/hop/pull/7595

   ## What
   
   Implements hop-level data sampling and preview icons for target hops (Filter 
Rows, Switch/Case, Java Filter, executors, etc.), addressing #3137.
   
   ### Engine
   - New `IRowToListener` / `RowToAdapter` with `rowWrittenTo(IRowMeta, 
Object[], IRowSet)` so destination-aware listeners can keep mixed layouts apart
   - `BaseTransform.handlePutRowTo()` notifies row-to listeners (still does 
**not** call `IRowListener`, which mixed layouts on target hops)
   - Wired through `ITransform`, `IEngineComponent`, `EngineComponent`
   - Beam/Spark `putRowTo` aligned to `IRowToListener` instead of incorrectly 
firing `IRowListener`
   
   ### GUI sampling
   - `PipelineRowSamplerHelper` also attaches hop samplers keyed by 
origin/destination
   - Hop sample buffers stored alongside transform samples (including 
drill-down sniffers)
   
   ### Canvas
   - Clickable data-grid icons on hops at ~30% from the source transform 
(`AreaType.HOP_OUTPUT_DATA`)
   - Tooltip shows hop endpoints and row count; click opens the existing rows 
dialog for that hop
   
   ## Why
   
   Target-stream transforms use `putRowTo()`, which never called row listeners, 
so Filter/Switch/Case had no usable output preview. Sampling per hop (as 
discussed on the issue) makes data flow transparent on every target branch.
   
   ## How to test
   
   1. Run a local pipeline with GUI sampling enabled (First/Last/Random, not 
None)
   2. Include Filter Rows or Switch/Case with target hops
   3. After the run, data icons appear on those hops near the source
   4. Hover for count; click to inspect sampled rows for that hop only
   
   ## Related
   
   Fixes #3137


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to