English

Error: Lock <#,#,Y> not found, not deleted when attempting to stop edit operation for multi-version views

Error Message

When using the sde.version_user_ddl.edit_version procedure in Oracle, the following error message displays when attempting to stop the edit operation:

"SQL> exec sde.version_user_ddl.edit_version('DEFAULT',2);
BEGIN version_user_ddl.edit_version('DEFAULT',2); END;

*
ERROR at line 1:
ORA-20048: Lock <893,1528,Y> not found, not deleted.
ORA-06512: at "SDE.VERSION_USER_DDL", line 765
ORA-06512: at line 1"

Cause

If the session has previously encountered the following error when calling sde.version_user_ddl.edit_version('DEFAULT',1) multiple times, the above error message displays when stopping an edit operation:

SQL> exec version_user_ddl.edit_version('DEFAULT',1);
BEGIN version_user_ddl.edit_version('DEFAULT',1); END;

*
ERROR at line 1:
ORA-20176: State 1528 from version DEFAULT is not closed.
ORA-06512: at "SDE.VERSION_USER_DDL", line 765
ORA-06512: at line 1

This error is expected, because the state is already open. Applications should not attempt to start multiple edit operations on the version prior to stopping the edit operation.

Solution or Workaround

After the error message is returned, the result is that the state the version references is closed, and the stop edit operation is successful. The error message is a warning indicating that the internal state lock placed on the state during the edit operation is no longer present.

The error message can be ignored.