[
https://issues.apache.org/jira/browse/SPARK-60231?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated SPARK-60231:
-----------------------------------
Labels: pull-request-available (was: )
> Improve the put/merge operation in ListState with TTL when there are multiple
> values
> ------------------------------------------------------------------------------------
>
> Key: SPARK-60231
> URL: https://issues.apache.org/jira/browse/SPARK-60231
> Project: Spark
> Issue Type: Bug
> Components: Structured Streaming
> Affects Versions: 5.0.0, 4.4.0
> Reporter: Kavpreet Grewal
> Priority: Major
> Labels: pull-request-available
>
> SPARK-54118 made ListStateImpl write a list with a single putList/mergeList,
> but ListStateImplWithTTL still writes one value at a time: put(array),
> appendList(array) and TTL eviction all do one put/merge per value. With
> RocksDB, each merge first does a get to track the number of rows, and that
> get folds every pending merge operand for the key, so writing N values costs
> O(N^2).
> We should write the values with a single putList/mergeList, like
> ListStateImpl does.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]