BobSong-dev opened a new pull request, #7360:
URL: https://github.com/apache/shenyu/pull/7360

   Fixes #6806
   
   ## Background
   
   The admin plugin snapshot query joins `selector` on `plugin_id` (unindexed),
   and the correlated permission subqueries scan `permission.object_id`,
   `permission.resource_id`, `resource.parent_id` and `user_role.user_id`
   (unindexed). The dashboard page list (`selectByQuery`) also transfers the
   `plugin_jar` BLOB for every row.
   
   ## Changes
   
   - `selectByQuery` (the dashboard page list) now selects a column list without
     `plugin_jar`. Detail queries and `selectAll` keep the jar: the config 
export
     path (`PluginService.listAllData`) transfers it, and the VO builder already
     renders a missing jar as an empty string.
   - Indexes added in every init script (mysql, ob, pg, og, oracle, plus
     `CREATE INDEX IF NOT EXISTS` in the H2 schema) and in the
     2.7.1 -> 2.7.2 upgrade scripts:
     `selector(plugin_id)`, `permission(object_id)`, `permission(resource_id)`,
     `resource(parent_id)`, `user_role(user_id)`.
   
   ## Verification
   
   - Full `shenyu-admin` module: `Tests run: 1493, Failures: 0, Errors: 0,
     Skipped: 1`, BUILD SUCCESS (the Spring context tests parse the modified
     mapper XML and boot against the H2 schema with the new indexes).
   - Checkstyle: 0 violations.
   - Note: the `activePluginSnapshot` SQL itself is unchanged; its cost drop 
comes
     from the new indexes. This PR and the meta-data one (#6809) both append to
     the 2.7.2 upgrade scripts, so whichever merges second needs a trivial 
rebase.


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