imbajin opened a new pull request, #832:
URL: https://github.com/apache/hugegraph-toolchain/pull/832

   ## Purpose of the PR
   
   Render graphspace/graph metadata without waiting for counts or schema scans. 
Page loads must not trigger full V/E statistics, and missing snapshots must not 
look like empty graphs.
   
   ## Main Changes
   
   - Use authorized brief name/nickname lists for selectors; retain complete 
option lists, capability handling and stale-response guards.
   - Filter/sort/page core metadata first. Load visible-card schema and 
recorded statistics independently through existing endpoints, with local error 
feedback.
   - Default statistics reads use only a cache or recorded snapshot. Missing 
counts remain unknown; algorithms are disabled only for confirmed zero counts.
   - Explicit collection runs limit(100000) before each vertex/edge groupCount. 
Show approximate counts as ≈, and counts reaching the scan limit as ≥, through 
the shared NumberCard and provenance hints.
   - Use the existing Guava dependency for a capacity-bounded, 30-minute 
expire-after-write cache, partitioned by resolved Server, authentication 
context, graphspace and graph. Passive reads do not renew expiry or start 
scans. Reuse fresh results on explicit requests; deliberately omit a force-scan 
option.
   - Reuse the shared Gremlin authentication resolver for both collection and 
snapshot reads, including legacy Basic mode. Remove raw-element fallback reads; 
leave the older async statistics map separate.
   - Show provenance only after successful statistics loading. Core navigation 
remains usable while optional requests are pending.
   
   No new endpoint, scheduler, task queue or query mode.
   
   ## Verifying these changes
   
   - [x] Independent cross-review of metadata, auth, count consumers, cache 
scope/expiry and frontend states.
   - [x] Final combined source: 186 backend tests passed with candidate SDK 
validation and Checkstyle; 401 frontend tests passed across 18 affected suites.
   - [x] Separate metadata branch compilation/tests and focused auth/cache 
regressions, including real local HTTP identity contexts, Basic resolver 
routing, actual expiry/capacity eviction, no renewal on passive reads and no 
automatic scan.
   - [x] i18n, TypeScript and Vite production build passed. Six GraphDetail 
checks and a further build passed after the final provenance-only display 
condition.
   - [x] Real source-built Hubble + PD/hstore: core graph/space/page metadata 
returns without statistics; absent snapshot is unknown; explicit statistics on 
the 12,000-vertex/edge graph returns bounded metadata and later requests reuse 
the result.
   - [x] Chromium: zero collection requests on load, one after clicking; core 
navigation remains usable while a real Server response is delayed. 
Approximation/100,000/30-minute hints are visible; unknown counts have no false 
snapshot provenance; no page errors.
   
   Earlier matched timing measurements remain in #80. The final core response 
also omits optional enrichment, so earlier identical-payload timings are not 
presented as fresh measurements of this revision.
   
   ## Does this PR potentially affect the following parts?
   
   - [ ] Nope
   - [ ] Dependencies (add/update license info)
   - [ ] Modify configurations
   - [x] The public API
   - [x] Other affects: metadata loading, optional counts and bounded statistics
   
   ## Documentation Status
   
   - [ ] `Doc - TODO`
   - [x] `Doc - Done`: optional report/evidence PR #80
   - [ ] `Doc - No Need`
   
   Limits: ordinary-user/anonymous graphspace authorization still reads 
per-space details. Visible-card snapshot requests may read Server metrics. The 
statistics cache is local to a Hubble process. Storage/PD estimates and 
scheduled OLAP refresh remain follow-up work; Hubble does not schedule scans.
   
   Query/property previews: #79. Server buffer growth: 
https://github.com/hugegraph/hugegraph/pull/327. Evidence #80 does not need 
merging for either functional PR.
   
   
   ---
   
   Source community PR: 
https://github.com/hugegraph/hugegraph-toolchain/pull/78. This upstream draft 
reuses the same branch. Figure PR numbers refer to that community source.


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

Reply via email to