strongduanmu commented on PR #39286:
URL: https://github.com/apache/shardingsphere/pull/39286#issuecomment-5140001224

   • Review result: Mergeable
   
     I reviewed PR #39286 against the latest head 
`f98b2e7570db504de052e41b373ba58bee462fc4`, focusing on Oracle database object 
DDL parsing correctness for `CREATE FUNCTION`, `CREATE TRIGGER`, and `CREATE 
MATERIALIZED VIEW`.
   
     The two previously identified edge cases are excluded from this review per 
follow-up decision:
     - System trigger `ENABLE` / `DISABLE` / `WHEN` handling.
     - Trigger body `CALL schema.package.procedure(...)`.
   
     Within the remaining scope, I did not find additional blocking correctness 
issues.
   
     Reviewed areas:
     - Oracle PL/SQL grammar changes for function, trigger, compound trigger, 
database trigger events, and call specifications.
     - Oracle DDL visitor changes for trigger metadata extraction, function 
inner SQL collection, procedure call capture, dynamic SQL expression capture, 
and materialized view select extraction.
     - Statement model changes for `CreateFunctionStatement`, 
`CreateTriggerStatement`, and `CreateMaterializedViewStatement`.
     - Parser IT additions and assertion wiring for trigger procedure-call 
metadata.
     - Oracle function cases for Java/C call specifications and aggregate 
function syntax.
   
     Positive checks:
     - `CREATE FUNCTION ... PARALLEL_ENABLE AGGREGATE USING ...` is supported.
     - `PIPELINED` function forms with `PARALLEL_ENABLE(PARTITION ... BY 
HASH/VALUE ...)` and `ORDER/CLUSTER BY` streaming clauses parse successfully in 
the checked order.
     - Trigger body `CALL DBMS_OUTPUT.PUT_LINE(...)` is captured as a procedure 
call.
     - Trigger body local DML statements are collected into 
`CreateTriggerStatement#getSqlStatements()`.
     - Trigger table extraction works for ordinary DML triggers.
     - The parser IT assertion path for `CreateTriggerStatement` is wired into 
standard DDL assertions.
   
     Residual follow-up items:
     - Add parser IT coverage for system trigger `ENABLE`, `DISABLE`, and 
`WHEN`.
     - Add parser IT coverage for schema-qualified package routine calls in 
trigger body.
     - Consider extending trigger assertions beyond procedure-call names if 
downstream consumers rely on trigger inner SQL statements, dynamic SQL 
expressions, or body-end names.


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