1、 leader tikv节点kill 内存悲观锁不释放 不丢失(貌似被同步了,切到了store 2),被阻塞会话一直阻塞不符合预期( 应该 没kill错leader)
加悲观锁这个操作的确是只纯内存的,但如果加锁之后短时间内没有提交掉,后台会开启不断的 TxnHeartBeat 操作,更新现有锁的 TTL,防止这个锁被清除掉。
TxnHeartBeat 更新 TTL 没有加上内存优化,还是走 Raft 并持久化的。所以你尝试的时候发现锁被同步了很可能是因为 TxnHeartBeat 写入了持久化的悲观锁。
2、有什么更直观的方式能够看到当前锁的持有者等相关信息?
如果锁是内存锁,那肯定只在 leader 上面。不过并没有什么好方法能看到现在某个锁到底是否被持久化了。