yihua opened a new pull request, #760:
URL: https://github.com/apache/hudi-rs/pull/760

   ## Description
   
   Adds an `explain` subcommand to the TPC-H harness to diagnose the 
datafusion+hudi vs datafusion+parquet performance gap (#713): it prints 
`EXPLAIN` (or `EXPLAIN ANALYZE` with `--analyze`) output for the selected 
queries through either or both registrations, along with per-statement 
parse+logical-plan vs collect timing and per-source registration timing. Plain 
`EXPLAIN`'s collect covers physical planning including `TableProvider::scan`, 
so the hudi-vs-parquet difference in that number isolates per-query planning 
overhead. Statement splitting is extracted from `bench_source` into a shared 
helper (behavior-preserving); Q15's CREATE VIEW / DROP VIEW run unwrapped so 
the query statement plans against the view, and a failing query is reported and 
skipped instead of aborting the run.
   
   ## How are the changes test-covered
   
   - [ ] N/A
   - [x] Automated tests (unit and/or integration tests)
   - [x] Manual tests
     - [x] Details are described below
   
   Unit tests cover statement splitting (comment stripping, multi-statement, no 
trailing semicolon) and EXPLAIN wrapping (SELECT/WITH/VALUES wrapped, DDL and 
parenthesized set operations left unwrapped). Manually validated against local 
sf1 data on both hudi and parquet registrations: Q06 plain EXPLAIN (plans and 
timings print for both engines) and Q15 with `--analyze` (view lifecycle runs 
unwrapped, the query executes and reports operator metrics).
   


-- 
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