The GitHub Actions job "Nightly" on fluss.git/main has failed. Run started by GitHub user wuchong (triggered by wuchong).
Head commit for run: 38fae3467ccd95c0a4929c3fe6aef69035630de0 / Evan <[email protected]> [client] Avoid per-record AutoPartitionStrategy construction in WriterClient.doSend in log tables (#3529) * perf(write): skip auto-partition work for non-partitioned tables Building the AutoPartitionStrategy on every record needlessly cost CPU in the hot write path, even for tables without partition keys. Guard the dynamic partition creation call in WriterClient.doSend behind a partition-keys check so the strategy is only resolved for partitioned tables, and cache AutoPartitionStrategy lazily in TableConfig via a volatile field rather than rebuilding it on each access. Signed-off-by: Evan <[email protected]> * address comments - test the strategy is memoized, so repeated calls return the same instancetestAutoPartitionStrategyIsCached - use tableInfo.isPartitioned instead of !tableInfo.getPartitionKeys().isEmpty() - address comments Signed-off-by: Evan <[email protected]> * Address review feedback on #3529 instead of memoizing the strategy on TableConfig, pass TableInfo into checkAndCreatePartitionAsync and resolve getAutoPartitionStrategy() inside the create branch. The strategy is only needed when a partition is actually created, so on the common "already exists" path it is never built. This removes the cached field - WriterClient: pass tableInfo instead of pre-computing the strategy - DynamicPartitionCreator: resolve partitionKeys + strategy in the create branch only - TableConfig: drop the cached volatile field and stale javadoc - Remove the caching test added previously Signed-off-by: Evan <[email protected]> --------- Signed-off-by: Evan <[email protected]> Report URL: https://github.com/apache/fluss/actions/runs/28681974746 With regards, GitHub Actions via GitBox
