在JOOQ中使用NOWAIT和SKIP LOCKED子句的解决方案



我使用Jooq进行数据库事务管理。我发现NOWAITSKIP LOCKED子句只在后来的MySQL版本中得到支持。我使用的MYSQL版本不支持它们。那么,在JooQ中,是否有解决这个问题的方法?其中一个线程不等待锁定实体并继续处理其他实体而不改变innodb_lock_wait_timeoutDB配置?

SKIP LOCKED很难模拟,但是使用innodb_lock_wait_timeout会话变量模拟WAIT nNOWAIT是完全有意义的。我们已经在jOOQ 3.15中为PostgreSQL做了这个,那么为什么不为旧版本的MySQL做这个呢?

  • https://github.com/jOOQ/jOOQ/issues/11243 (PostgreSQL)
  • https://github.com/jOOQ/jOOQ/issues/11543 (MariaDB, MySQL)

这将在jOOQ 3.15

中提供。

相关内容

  • 没有找到相关文章

最新更新