Liangda-w commented on a change in pull request #10253:
URL: https://github.com/apache/shardingsphere/pull/10253#discussion_r627944003
##########
File path:
shardingsphere-sql-parser/shardingsphere-sql-parser-dialect/shardingsphere-sql-parser-oracle/src/main/antlr4/imports/oracle/DDLStatement.g4
##########
@@ -1421,3 +1421,258 @@ leadCdbUriClause
propertyClause
: PROPERTY (SET | REMOVE) DEFAULT_CREDENTIAL EQ_ qualifiedCredentialName
;
+
+alterSystem
+ : ALTER SYSTEM alterSystemOption
+ ;
+
+alterSystemOption
+ : archiveLogClause
+ | checkpointClause
+ | checkDatafilesClause
+ | distributedRecovClauses
+ | flushClause
+ | endSessionClauses
+ | alterSystemSwitchLogfileClause
+ | suspendResumeClause
+ | quiesceClauses
+ | rollingMigrationClauses
+ | rollingPatchClauses
+ | alterSystemSecuriyClauses
+ | affinityClauses
+ | shutdownDispatcherClause
+ | registerClause
+ | setClause
+ | resetClause
+ | relocateClientClause
+ | cancelSqlClause
+ | flushPasswordfileMetadataCacheClause
+ ;
+
+archiveLogClause
+ : ARCHIVE LOG instanceClause? (sequenceClause | changeClause |
currentClause | groupClause | logfileClause | nextClause | allClause)
toLocationClause?
+ ;
+
+checkpointClause
+ : CHECKPOINT (GLOBAL | LOCAL)?
+ ;
+
+checkDatafilesClause
+ : CHECK DATAFILES (GLOBAL | LOCAL)?
+ ;
+
+distributedRecovClauses
+ : (ENABLE | DISABLE) DISTRIBUTED RECOVERY
+ ;
+
+flushClause
+ : FLUSH flushClauseOption
+ ;
+
+endSessionClauses
+ : (disconnectSessionClause | killSessionClause) (IMMEDIATE | NOREPLY)?
+ ;
+
+alterSystemSwitchLogfileClause
+ : SWITCH LOGFILE
+ ;
+
+suspendResumeClause
+ : SUSPEND | RESUME
+ ;
+
+quiesceClauses
+ : QUIESCE RESTRICTED | UNQUIESCE
+ ;
+
+rollingMigrationClauses
+ : startRollingMigrationClause | stopRollingMigrationClause
+ ;
+
+rollingPatchClauses
+ : startRollingPatchClause | stopRollingPatchClause
+ ;
+
+alterSystemSecuriyClauses
+ : restrictedSessionClause | setEncryptionWalletOpenClause |
setEncryptionWalletCloseClause | setEncryptionKeyClause
+ ;
+
+affinityClauses
+ : enableAffinityClause | disableAffinityClause
+ ;
+
+shutdownDispatcherClause
+ : SHUTDOWN IMMEDIATE? dispatcherName
+ ;
+
+registerClause
+ : REGISTER
+ ;
+
+setClause
+ : SET alterSystemSetClause+
+ ;
+
+resetClause
+ : RESET alterSystemResetClause+
+ ;
+
+relocateClientClause
+ : RELOCATE CLIENT clientId
+ ;
+
+cancelSqlClause
+ : CANCEL SQL SQ_ sessionId serialNumber (AT_ instanceId)? sqlId? SQ_
+ ;
+
+flushPasswordfileMetadataCacheClause
+ : FLUSH PASSWORDFILE_METADATA_CACHE
+ ;
+
+instanceClause
+ : INSTANCE instanceName
+ ;
+
+sequenceClause
+ : SEQUENCE numberLiterals
+ ;
+
+changeClause
+ : CHANGE numberLiterals
+ ;
+
+currentClause
+ : CURRENT NOSWITCH?
+ ;
+
+groupClause
+ : GROUP numberLiterals
+ ;
+
+logfileClause
+ : LOGFILE logFileName (USING BACKUP CONTROLFILE)?
+ ;
+
+nextClause
+ : NEXT
+ ;
Review comment:
Hi @wgy8283335, I'm not saying that we should delete `nextCluase`,
rather we can write it in a compact way in `archiveLogClause` like for example:
```
archiveLogClause
: ARCHIVE LOG (INSTANCE instanceName)? (
| SEQUENCE numberLiterals
| CHANGE numberLiterals
| CURRENT NOSWITCH?
| GROUP numberLiterals
| LOGFILE logFileName (USING BACKUP CONTROLFILE)?
| NEXT
| ALL) (TO logFileGroupsArchivedLocationName)?
;
```
As none of these branches are reused and creating branch for such single
keyword may be too fine-grained.
But like I said, just some personal thought 😄
--
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]