yuqi1129 opened a new issue, #13594:
URL: https://github.com/apache/gravitino/issues/13594

   ### Describe the proposal
   
   Track the performance and reliability issues identified after the OCC and 
multi-node cache changes, and verify their fixes for Gravitino 2.0.0. This 
release-specific epic complements the general API performance epic #6560.
   
   Prioritize cache deadlocks, nested JDBC pool starvation, and metadata writes 
caused by unchanged reads. Also track change-log catch-up, connection reuse, 
and authorization allocation/contention. Keep the seven issues distinct: 
metadata-store idle retention, catalog idle retention, and catalog validation 
without a default database have different causes.
   
   The latest baseline targets main `8e9ca0009d68dbf9edb5e313d3d51688b9c4cff1`, 
Java 17, MySQL 8.0.35, authorization enabled, and single/two-node table API 
workloads. It contains 197 measured phases and 1,052,125 requests; the 
default-pool ALTER reproduction accounts for all 25 HTTP 500 responses. The 
earlier three issues use an earlier baseline and different workloads, so their 
throughput numbers are not directly comparable.
   
   Evidence and reproducible scripts are retained in 
`dev/performance/main-auth-table-20260929/` in the testing workspace; these 
local artifacts are not yet published in the repository. Each child issue 
includes reproduction details. The short soak shows no obvious increasing 
retention, but does not establish long-term or native memory safety. No 
production SLO or pre-OCC matched baseline has been established.
   
   Completion requires:
   
   * Resolve each child with a linked fix and meaningful regression coverage; 
do not close issues solely because a larger pool or another benchmark 
workaround hides the failure.
   * Re-run authorization-enabled listTables, loadTable, alterTable and 
dropTable with ordinary users, matching data/configuration/resources and at 
least three repeats. Preserve permission-denial, listing cardinality, physical 
mutation/deletion, durability and two-node visibility checks.
   * Verify zero metadata version/history/change-log writes for warmed 
unchanged loads, no nested-borrow starvation with the default pool, stable 
connection reuse, and backlog catch-up without one full polling delay per batch.
   * Retain throughput, p50/p95/p99, errors, SQL counts/digests, pool 
configuration, JFR CPU/wait flame graphs, allocation, GC and post-GC heap/NMT 
trends. Extend the soak and cardinality coverage; investigate growing retention 
with heap analysis when observed.
   * Agree on workload-specific acceptance thresholds before declaring release 
performance readiness. Publish comparable before/after evidence and explicitly 
record unresolved limits or regressions.
   
   ### Task list
   
   - [ ] #13580 — Cache eviction cleanup deadlock with entity-cache segment 
locks
   - [ ] #13581 — Change-log backlog drains with a polling delay after each 
batch
   - [ ] #13582 — Metadata JDBC idle retention and connection churn
   - [ ] #13590 — Unchanged loadTable rewrites column metadata
   - [ ] #13591 — Concurrent MySQL ALTER exhausts the pool through nested 
borrows
   - [ ] #13592 — MySQL catalog without a default database fails connection 
reuse
   - [ ] #13593 — Per-table list authorization allocation and OGNL contention
   


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