PROBLEM
Attempting to CHECKOUT features from an ArcStorm layer returns the message:
Executing CHECKOUT request...
Feature(s) already locked by another transaction.
There may be additional information in the wservice log.
Features can be locked for two reasons:
1. Legitimate feature locking due to another user of the database checking features out for the purpose of editing. The selected features may be locked directly or through topological association.
2. Features are locked due to a problematic transaction which was not completed successfully. This could potentially leave features locked but not associated to an existing transaction shown by the LISTTRANSACTIONS command.
Code: Arcedit: locksymbol 10 red Arcedit: draw
Code: arcedit: list lock__id Record LOCK__ID 5 12 9 12 13 11
Code: arcedit: LISTRANSACTIONS LAYER . . ID STATUS OWNER -- ------ ----- 12 CHECKOUT_COMPLETE AS_USER
Code: SchemaEdit: LISTTRANSACTIONS Listing transactions for Database: sample_db (2 found) 12 CHECKOUT_COMPLETE user 14 CHECKOUT_COMPLETE user
Code: arcedit: SELECT lock__id <> 0 or lock__id <> 12 or lock__id <> 14 2 element(s) now selected arcedit: LIST lock__id
Note: The lock__id and transaction-id are the same value.
Code: RECOVERDB LIBRARY <asdatabase>.<library> <transaction_id>
Code: SchemaEdit: LISTTRANSACTIONS Listing transactions for Database: sample_db (2 found) 12 CHECKOUT_COMPLETE user 14 CHECKOUT_COMPLETE user
Code: arcedit: SELECT lock__id <> 0 or lock__id <> 12 or lock__id <> 14 2 element(s) now selected arcedit: LIST lock__id
Note: The lock__id and transaction-id are the same value.2. Locate the files that the locked features.
Code: Arcedit: select lock__id <> 0 Arcedit: setdrawsymbol 2 Arcedit: mapextent select Arcedit: backcoverage .index 4 Arcedit: backenvironment polygon Arcedit: draw Arcedit: apc polygontext .index tile-nameRecord the tile numbers that contain a locked feature.
Schemaedit: SETEDITMODE layer all edit4. Visit each of the tiles recorded in step 2 and use ArcEdit to calculate the locked features back to 0.
Code: Arcedit: EDITCOVER <layer> Arcedit: EDITFEATURE <feature class> Arcedit: SELECT lock__id = <transaction-id> Arcedit: CALCULATE lock__id = 0 Arcedit: SAVE Arcedit: QUIT5. Set the edit mode back to protect with the SETEDITMODE command.
Code: Schemaedit: SETEDITMODE layer <library> <layer> all protect
Get help from ArcGIS experts
Download the Esri Support App