关于sap:什么是-SAP-ABAP-Lock-Mode-的-cumulative-特性

52次阅读

共计 1104 个字符,预计需要花费 3 分钟才能阅读完成。

SAP 官网提到:

If the name, argument, and lock mode of the elementary lock are identical, and if a lock is not exclusive and non-cumulative, it can be set more than once (a cumulation). The cumulation counter is incremented by one with each successive cumulation, and reduced by one each time a lock is released. The lock is released when the counter reaches zero.

如果传入加锁函数的输出参数的锁的名称、上锁参数和锁定模式雷同,并且如果上锁模式 既不是排他性的也不是累积性的,那么它能够被屡次设置。屡次设置这种锁的行为称之为累积。每次间断累积时,锁的累积计数器会减少一次,并在开释锁定时递加一次。当计数器达到零时,锁会被开释。

在 SAP 零碎中,事务码 SM12 用于治理和监督锁定信息。锁定是一种机制,用于管制并发拜访数据库中的数据,以确保数据的一致性和完整性。当一个事务获取了对某个数据对象的锁定时,其余事务就不能批改或拜访该数据对象,从而防止了数据抵触和不一致性。

其中上图的 Counter 1 和 Counter 2,别离代表 dialog ownerupdate owner 持有的 lock enter 对应的 cumulation counter 计数器,如 SAP 官网 记录所示:

抉择 Goto-Details 能看到对应的 Lock Object 名称:

留神上图的 Date 字段,并不是上锁的精确工夫,而是 SAP LUW (Logical Unit of Work) 的起始工夫。SAP Lock 在该 LUW 里创立,工夫晚于 LUW 的起始工夫。

SAP LUW(Logical Unit of Work)是 SAP(Systems, Applications, and Products)零碎中的一个概念,它是数据库事务的一部分,涵盖了一个业务过程中的所有步骤。它在开始时关上一个数据库事务,在实现后提交该事务。

SAP LUW 的次要个性包含:

  1. 一致性:所有的数据库更新都应该在一个 LUW 中保持一致。也就是说,如果所有操作都胜利,则所有更改都应该被保留。如果有任何一个操作失败,则应该撤销所有更改。
  2. 原子性:LUW 应该被视为一个不可分割的单元。这意味着,要么所有的操作都胜利,要么所有的操作都失败。
  3. 隔离性:每个 LUW 都应该被隔离开来,使得它不会被其余 LUW 中的操作所影响。
  4. 持久性:一旦一个 LUW 被胜利提交,它的后果应该是永恒的,即便在系统故障的状况下也是如此。
正文完
 0