What are Lock Objects, and their Differences
Answers were Sorted based on User's Feedback
Answer / uma mb
Lock objects (their developer given names should begin with
EZ or EY) are resident in the ABAP dictionary once they are
created and activated by the ABAP developer. Each lock
object, on activation, creates two function modules –
ENQUEUE_EZ<given name> and DEQUEUE_EZ<given name>.
In ABAP dictionary, we can create a lock object by stating
the table name (primary table) we want to lock, its lock
mode (there are three types of lock mode E, S and X
described at the end of this answer) and lock parameters
giving the primary key fields if only a single table is
involved or foreign key field(s) to join this table with
any other required (secondary) table(s) as the process
might demand.
To understand why lock objects are required / needed is
best comprehended by understanding the LOCK (locking of
data about to be changed by business transaction) concept
and lock management first.
Locking of data (in tables or resources) prior to making a
change to the data becomes very necessary to maintain
consistency of data when several people are working on the
same data (table / application) adding, changing and
deleting (records or table entries) records to it. A very
good example of this kind of high end activity on a table
data is seen in a multi-user environment like airline
booking system. A person queries the database for currently
available seats on a flight. If seats are available indeed,
then a booking has to be done. Between the time of query of
seats availability and time of actually booking the
required seats, many seconds/minutes elapse and in the
meantime another person might have already booked thus
bring the balance of seats down and rendering earlier read
balance incorrect. Therefore, when the query is fired, the
user locks the table entry (or entries as the case might
be). After this locking, nobody else gets access to the
same entry until the entire booking is done and balance
seats are decreased and lock released finally.
It is imperative to realize that locks once set must get
released as soon as the need for them is over so that
resources (tables) are released for others to use. There is
a default internal locking mechanism (database lock
administration) of ABAP but this is not sufficient (the
reason is these locks are implicitly released whenever a
screen changes and this would harm the integrity of a
business SAP transaction under process/progression which
could run through a series of dialog steps/screens).
Before firing a SELECT query to enquire seat availability,
developer must (a) issue a call to function module
ENQUEUE_EZ<given name> to logically lock the table
(s)/resource(s). (b) On successful locking, book the
tickets, reduce balance of seats available and (c) then
issue a call to function module DEQUEUE_EZ<given name> to
release the logical lock placed on the global lock table
(the enqueue work process coordinates this activity with
the global lock table). If locking is not successful, the
transaction has to be exited.
Lock Modes: S for Shared Read Lock.
X for Extended Write (Non-cumulative) lock
E for Exclusive Write lock (Cumulate)
E – When this lock is set, then the user (aka owner of
lock) who sets it can only have exclusive access and edit
records locked. A request for any other write lock or
read / shared lock is rejected. Only the lock owner can set
the lock again (cumulate).
S – Shared read lock. Several users can read the locked
record(s). A write lock request is rejected (to
prevent ‘dirty read’ situation). However, additional read
share locks from other users are accepted by the system.
X - This type of write lock can be requested only once
even by the same SAP transaction/lock owner. All other
subsequent lock requests of any kind, even by the lock
owner fails.
Is This Answer Correct ? | 13 Yes | 1 No |
Answer / rajaram sunku
There are 3 types of locks
1. Shared Lock - Read only
2. Exclusive Lock with Cumulative - No read and Write
3. Exclusive Lock with Non-cumulative _ enahancing
Is This Answer Correct ? | 7 Yes | 2 No |
Answer / v.mari
Write lock-the locked data can be read or processed by one user only.A request for another shared lock is rejected
Shared lock-several users can read the same data at the same time,but as soon as a user edit the data .second user can no longer access this data.Rquest for further shared locks are accepted ,even if they are issued by different users,but exclusive locks are rejected.
Exclusive but not cumulative lock:Exclusive locks can be requested by the same transaction more than once and handled successively,but an exclusive but not cumulative lock can only be requested once by a given transaction.All other lock requests are rejected
Is This Answer Correct ? | 3 Yes | 0 No |
what are the fields in BDC Data?
in the time of migration of data who will decide whether it is done in bapi , call transaction or session method to the technical consultant?
Hi Experts, I faced the below questions in written exam, its simple only but i am not able to find the answer in Google also. Can any of our family ppls pls give the answer the below questions? 1.How many days once password will get expire? is it really in adminstrator hands or what? 2.SAP Logon Password length for ECC-6 and ECC-5 3.Which is the highest organizational level in SAP? Explain the various level of organizational structure in SAP? 4. You have one idoc, we need to send 3 different system. It will generate how many master idoc and how many communication idocs? 5.What is the default parameter in subroutne? call by value or call by refference? 6. Scope creep is responisible for what? 7.Who approves the project design? 8.When LUW will starts? 9.Which Website used for SAP support? 10.When a print request is not sent, which of the following is used to send the request again to the printer?..... a) print changes b) print directly c) both of the above d) none of the above 11. Its possible to transfer data into same client using ALE? 12. Customization changes are automatically stored in a Transport request or not? Explain 13 User id in SAP support system is called as what? a) Userid b). SAP userid c) S userid d) None of the above. 14. The sap for utilities is a. Program b) Function c) Approach d) Industry Solution 15.In Work flow whats the use of WF-BATCH?
I have two selection screens, i gave values in first selection screen but i din't give any values in second screen. will it display or not plz tell me?
What is bdc programming in sap?
What commands are used to change database table entries ?
What is sequence number
What are the two ways of searching an ABAP Object and How to navigate to them
Name 5 custom objects that dont start with Z or Y ?
what is defference between repository and non repository Object?
What are ranges? What are number ranges?
What is PAKEY structure, PSHD1 structure and what type of fields it contains