Spring Security的CsrfFilter中csrf-token会不会出现并发问题

问题遇到的现象和发生背景
如题:Spring Security的CsrfFilter中csrf-token

我的解答思路
为了防止csrf攻击,spring security加入了csrffiler过滤器,
1.每次请求的时候都会带有csrf-token并跟tokenRepository中的token比对,比对通过了则替换成新的csrf-token
2.下次请求会带有上次新的csrf-token,像步骤一时一样,比对然后替换成新的

问题出现
当csrf-token=1 时,重复提交了两次,出现并发问题,
那第一次请求完成,比对成功则会替换token,然后更新token,
则第二次校验因为第一次的请求先到达,所以将csrf-token替换了,所以比对的时候一定会比对失败了,所以没有返回csrf-token
那么csrf-token就丢失了

问题是:
是不是会出现这样的并发问题
在git中有人提出
https://github.com/spring-projects/spring-security/issues/5219#ref-commit-352aca3
是不是有这种并发导致token丢失的问题?

看起来有点像,

img


假设现在有两个线程都走到这里,如果都没能从tokenRepository获取token,则都会生成token,这样就会有个被覆盖,
如果有必要的话,可以自己实现个tokenRepository,搭配redis,保证一个sessionid只生成一个token