tristaZero commented on issue #9568:
URL: https://github.com/apache/shardingsphere/issues/9568#issuecomment-800995595


   ## The details about the remaining work
   
   ### Report execution process from one Proxy
   When one Proxy receives the SQL queries from users, it will evaluate whether 
to report this query execution status to governance in `ExecuteProcessEngine`. 
You can find where this class is called to track its flow path.
   Currently, the public functions of `DriverJDBCExecutor` has basically 
finished the relevant functions, but we still need to finish
   - `ExecuteProcessStrategyEvaluator`
   - `GovernanceExecuteProcessReporter`
   - `RawExecutor` (To initialize the whole job, please refer to 
`DriverJDBCExecutor`)
   - `RawSQLExecutorCallback` (To finish a unit job, referring to 
`JDBCExecutorCallback`)
   - `CalciteRowExecutor`
   - Store `ExecuteProcessContext` to `governance` in `RegistryCenter` [1]
   
   ### Query execution process from other Proxies
   When users execute `show processlist` from another Proxy. This Proxy needs 
to go into `ShowProcesslistExecutor` to get `ExecuteProcessContext` and return 
to the user by DB binary protocol. The following target classes are for this 
part,
   - Add judgement in `MySQLAdminExecutorFactory`
   - New `ShowProcesslistExecutor` to prepare required data from `governance`.
   
   ### Unit tests
   Please add necessary UTs for your implements.
   
   
   [1] The structure of the `registry center` is suggested to be
   ```
   namespace
      ├──states
      ├    ├──proxynodes
      ├    ├     ├──${your_instance_ip_a}@${your_instance_pid_x}@${UUID}
      ├    ├     ├──${your_instance_ip_b}@${your_instance_pid_y}@${UUID}
      ├    ├     ├──....
      ├    ├──datanodes
      ├    ├     ├──${schema_1}
      ├    ├     ├      ├──${ds_0}
      ├    ├     ├      ├──${ds_1}
      ├    ├     ├──${schema_2}
      ├    ├     ├      ├──${ds_0}
      ├    ├     ├      ├──${ds_1}
      ├    ├     ├──...
      ├    ├──authenticationnodes
      ├    ├     ├──${execution_id}
   ```


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

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


Reply via email to