cost 270 ms
是否有精确的规则可以知道 MySQL 何时应用间隙阻塞? - Are there PRECISE RULES to know when MySQL will apply gap blocking?

经过几次研究,我发现 MySQL 在不需要的地方应用了间隙阻塞。 这就是为什么我想问这个问题,它是确定性的吗? 我问了这个问题并且 BETWEEN SQL - 为什么会有间隙锁? 我不清楚文章 https://vincepergolizzi.com/programming/2020/09/02/m ...

SELECT FOR UPDATE 子查询在负载下不遵守 LIMIT 子句 - SELECT FOR UPDATE subquery not respecting LIMIT clause under load

我有以下查询,它使用 psql SKIP LOCKED功能从按插入时间排序的队列表中轮询消息。 我的子查询还将结果集限制为 10,因为这是消费者可以处理的最大结果数。 在正常负载下,一切都按预期工作。 然而,当我对我的系统应用负载测试时,我偶尔会 (<5%) 得到从几十条记录到甚至几百条记录的 ...

插入时锁定另一个表中的行 - Lock row from another table while inserting

我正在开发一家银行 API,我有一个关于行锁的问题。 我有交易表、客户表和帐户表,并将用户余额存储在帐户表中。 每当我在事务中插入新行时,我想锁定帐户表中的余额列,因为插入新事务会更改用户余额,所以我想锁定用户帐户行直到插入完成。 有人可以帮帮我吗? ...

Postgres 行锁定 - Postgres row locking

我是 Postgres 的新手(甚至是 SQL)。 我正在构建一个密钥数据库,它有一个名为 Key 的表。 我的问题是如何在 pg. 如果一个连接正在读取第一条记录,同时第二条连接进来,它应该读取第二条记录而不是第一条。 第 3 次第 4 次也是如此,以此类推。 ...

防止两个线程选择同一行 ibm db2 - Prevent two threads from selecting same row ibm db2

我有一种情况,我有多个(可能是数百个)线程重复执行相同的任务(如果您好奇,可以使用 java 调度执行程序)。 此任务需要选择尚未处理的更改行(来自名为 change 的表)(已处理的更改在 am:n 连接表中跟踪,称为 process_change_rel 跟踪进程 ID、记录 ID 和状态)处理 ...

如果数据库连接丢失,是否提交SaveChange事务? - Is SaveChange transaction committed if db connection is lost?

我们已经实现了WordAddin,并使用EF6连接到oracle数据库。 使用插件,用户可以从数据库中加载文档。 编辑文档后,用户关闭文档。 我们使用DocumentBeforeClose-Event更新数据库中的文档。 只有一个用户可以编辑文档并将其保存在数据库中。 问题是,有时在o ...

原子选择和更新。 使行不可见或无法通过多个过程选择 - Atomic Select & Update. Make row invisible or unselectable by more than one process

情况: PostgresSQL数据库。 使用SQL Alchemy ORM的应用程序(不是很重要)。 具有数百万行的表。 数百个进程使用该表访问数据库。 每个人都希望选择一行并根据其内容执行相对昂贵的操作,然后填充其他表并更新该行。 我使用的天真的方法是这样的: ...

在行级锁定时提交后是否有必要解锁表? - Is it neccessary to unlock a table after a commit while row level locking?

我正在编写一些使用 MySQL(innodb 后端)行级锁定的代码。 伪代码是: 我在 mysql 文档中找不到关于提交后持有的锁的信息。 我必须在 COMMIT 之后执行“UNLOCK TABLES”还是隐式的? 答案应该是“否”,但我想对此提供反馈。 ...

Sequelize.js中默认使用的Postgres和/或LOCK中的默认事务行级别是什么 - What is the default transaction row level in Postgres and/or LOCK used by default in Sequelize.js

PostgreSQL使用的默认行级锁定模式是什么? 并且由于该问题与Sequelize ORM有关,因此,很高兴知道默认情况下使用哪种模式来避免或修改我的查询。 ...

如何强制MySQL获取事务的表锁? - How can I force MySQL to obtain a table-lock for a transaction?

我正在尝试使用InnoDB存储引擎在MySQL数据库表上执行操作。 此操作是INSERT-or-UPDATE类型的操作,其中有一组传入的数据,并且表中可能已经有一些数据需要更新。 例如,我可能有此表: ...以及一些示例数据: 现在,我要“合并”以下值: 我的代码最终 ...

表和行锁之间的区别 - Difference between table and row locks

我正在研究MySQL及其工作方式,这使我感到困惑,并且我在网络上找不到任何明确的解释。 行锁和表锁之间到底有什么区别? 一个锁定行,另一个锁定表。 正确? 那么,在哪种情况下您将使用表锁和行锁? 是程序员或数据库管理员可以编程的东西,还是它为您服务? 如果您认为还需要了解 ...

MySQL:INSERT 被外键引用行的 UPDATE 阻止 - MySQL: INSERT blocked by an UPDATE of the foreign key referenced row

让我以 SQL 示例开始我的问题。 这是表设置: 创建表x和y 。 yx指的是x.id 。 在x (id=1) 中插入一行。 现在启动一个事务 (Trx A) 来更新x的行。 在提交之前,我正在启动另一个事务(Trx B)以向y插入一行。 问题是 - 预计 Trx B ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM