Apache Pulsar 函数的状态,如果我们不显式调用 deleteState,它会保持 "forever" 吗?

Apache Pulsar function's state, is it persisted "forever" if we don't explicitly call deleteState?

当函数使用context.putState(id, object)时,保存的对象是否永远保存在bookkeeper中直到显式调用deleteState(same id)?

除了调用 deleteState 之外,是否有某个时间点、任何类型的操作或某个事件可以清理已用状态存储 space? 例如,如果一个函数被删除,簿记员是否仍然保留函数的状态对象,或者它们是否也被删除?

我相信当一个函数被删除时,我们删除了包含所有状态的table。

这绝对需要一些测试。

如果有建议或状态定义方式不明确,请创建一个问题

https://github.com/apache/pulsar/issues

一些相关的PIP

[PIP 133] Pulsar Functions 添加 API 用于访问其他函数状态 #13633https://github.com/apache/pulsar/issues/13633

函数状态的批量管理操作 #5539https://github.com/apache/pulsar/issues/5539