Hi Yun, Thanks for your reply. You mention that
" ‘snapshotState’ and ‘initializeState’ interfaces are used mainly to snapshot and initialize for operator state" but..."mainly" is not "exclusively" right? So, I guess my question tries to figure out whether doing something like this is valid/makes sense? ``` override def snapshotState(context: FunctionSnapshotContext): Unit = { if (models.nonEmpty) { modelsBytes.clear() for ((k, model) <- models) { modelsBytes.put(k, model.toBytes(v)) } } } ``` Indeed, the above code seems to work well ... so it seems like a bug that `clear` works sometimes but sometimes not as I noted in my reply to Congxian and others have noted in this extended question posted in stackoverflow: https://stackoverflow.com/questions/59123188/state-handling-on-keyedcoprocessfunction-serving-ml-models -- Sent from: http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/