xinyiZzz opened a new pull request, #45416:
URL: https://github.com/apache/doris/pull/45416

   ### What problem does this PR solve?
   
   1. Fix the bug that caused `finalizeQuery` to fail, the query status in the 
profile was always `RUNNING`, not `OK`.
   2. Arrow Flight is a stateless protocol, FE cannot know when the Client has 
completed fetching data. therefore, when the query profile returns 
`isDone=true`, it is considered that the query has ended and executes 
`finalizeArrowFlightSqlRequest`.
   3. After the above fix we can get an accurate query profile, so I did some 
performance testing again and got the following conclusion (I had the same 
conclusion on Arrow 15.0.2)
   ```
   // Note: The time cost may be much longer than the actual query execution 
time.
   // You may get `cost: 700ms` here, but the query time in Doris FE's query 
profile is only `20ms`.
   // It may be that the process of Java generating QueryResult is too slow,
   // Does Arrow Flight do row-column conversion when generating QueryResult?
   // Because the time taken to generate ResultSet is similar to that of Jdbc 
DriverManager,
   // is Arrow cheating us? :) which is worth further research.
   // In addition, the speed of AdbcStatement/QueryResult generated by 
JdbcDriver seems to be
   // faster than FlightSqlDriver, this seems like a joke.
   ```
   
   ### Check List (For Author)
   
   - Test <!-- At least one of them must be included. -->
       - [ ] Regression test
       - [ ] Unit Test
       - [ ] Manual test (add detailed scripts or steps below)
       - [ ] No need to test or manual test. Explain why:
           - [ ] This is a refactor/code format and no logic has been changed.
           - [ ] Previous test can cover this change.
           - [ ] No code files have been changed.
           - [ ] Other reason <!-- Add your reason?  -->
   
   - Behavior changed:
       - [ ] No.
       - [ ] Yes. <!-- Explain the behavior change -->
   
   - Does this need documentation?
       - [ ] No.
       - [ ] Yes. <!-- Add document PR link here. eg: 
https://github.com/apache/doris-website/pull/1214 -->
   
   ### Check List (For Reviewer who merge this PR)
   
   - [ ] Confirm the release note
   - [ ] Confirm test cases
   - [ ] Confirm document
   - [ ] Add branch pick label <!-- Add branch pick label that this PR should 
merge into -->
   
   


-- 
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: commits-unsubscr...@doris.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to