u70b3 commented on issue #66025: URL: https://github.com/apache/doris/issues/66025#issuecomment-5181932128
Hi, I'd like to pick this up. The N+1 comes from `getTables()` calling `getTableNamesWithLock()` (one remote enumeration) and then `getTableNullable()` per table, which in bypass mode re-enters `findTableNamePairWithoutCache()` → a full `listTableNames()` per table. Fix: in the bypass branch, enumerate once via `listTableNames(sessionContext)` and build all tables from that single snapshot, keeping the case-insensitive conflict check and the first-win dedup semantics. Local verification: a unit test counting remote listings shows 4 enumerations for 3 tables before the fix and exactly 1 after. Will open a PR shortly. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
