Fix an issue that it is impossible to have multiple active sessions
Root cause: TCM caches SystemTC. TCM.createTCSession returns a wrapper of the same SystemTC and it just updates the sessionID (and some other session related stuff) of the shared system TC. That means, if clients call createTCSession multiple times for multiple active sessions, all of these session TCs have the same session ID (the latest one) because they all point to the same SystemTC. It has been an issue since P. But we don't really have code that creates multiple active sessions before R. In R, we create a session per each notification, and thus hit the bug. Solution: Don't cache SystemTC. SystemTC is just a thin wrapper that forwards calls to TCMS anyway. BUG: 149012454 Test: atest CtsTextClassifierService (Added a new test in ag/10260978.) Test: Sanity tests: smart selection and smart replies are still working. Change-Id: I71fe558b2f3d2c5d9eb0b6fc7f258fb4d8ad48d6
Loading
Please register or sign in to comment