Aias00 opened a new issue, #7724:
URL: https://github.com/apache/shenyu/issues/7724

   ## Current behavior
   `InstanceInfoServiceImpl.createOrUpdate` first executes 
`InstanceInfoMapper.selectOneByQuery`. Its only mapped statement ends with 
`LIMIT 1` and has no Oracle-specific `databaseId` variant. Oracle does not 
support this syntax, so the instance persistence path cannot perform the 
identity lookup on an Oracle deployment.
   
   The same mapper already has an Oracle-specific `existed` statement using 
`ROWNUM = 1`, demonstrating the available dialect pattern. Failure before the 
insert/update also interacts with the unguarded periodic persistence task 
tracked by #6496.
   
   ## Source evidence
   - [selectOneByQuery including LIMIT 
1](https://github.com/apache/shenyu/blob/66d7d954ca37d651a5ad916f988a8081157a7ab4/shenyu-admin/src/main/resources/mappers/instance-info-sqlmap.xml#L111)
   - [Existing Oracle-specific lookup 
pattern](https://github.com/apache/shenyu/blob/66d7d954ca37d651a5ad916f988a8081157a7ab4/shenyu-admin/src/main/resources/mappers/instance-info-sqlmap.xml#L81)
   - [Instance persistence call 
site](https://github.com/apache/shenyu/blob/66d7d954ca37d651a5ad916f988a8081157a7ab4/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/impl/InstanceInfoServiceImpl.java#L53)
   
   Confirmed mapped SQL shape by local XML inspection; no Oracle server was run 
during issue preparation.
   
   ## Acceptance criteria
   - [ ] Supply supported Oracle syntax for selectOneByQuery, preserving all 
identity/namespace predicates and single-row behavior.
   - [ ] Retain working mappings for the other supported dialects.
   - [ ] Validate Oracle mapped-statement selection and execute the instance 
lookup/create/update path on the supported Oracle test environment.
   - [ ] Verify null/optional filters follow the existing query contract 
without broadening matches.
   - [ ] Add regression coverage preventing generic LIMIT syntax from being 
selected for Oracle.
   
   Related: #6496 covers scheduled task resilience and must not be treated as 
the SQL fix.
   


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