Hi,
One of our developers wants changes to a version enabled table, which hasn't been structurally changed for some months.
Unfortunately, I get an error when setting the table into maintenance mode, nor is the table in maintenance mode already.
NUTRIWEB: MPI > exec dbms_wm.beginddl('product');
BEGIN dbms_wm.beginddl('product'); END;
*
ERROR at line 1:
ORA-20203: enable/disable versioning or begin/commitDDL is being executed on MPI.PRODUCT
ORA-06512: at "WMSYS.LT", line 12166
ORA-06512: at line 1
NUTRIWEB: MPI > exec dbms_wm.commitddl('product');
BEGIN dbms_wm.commitddl('product'); END;
*
ERROR at line 1:
ORA-20204: beginDDL not called on MPI.PRODUCT
ORA-06512: at "WMSYS.LT", line 12253
ORA-06512: at line 1
Looking at the ALL_WM_VT_ERRORS, I can see the state of the table = DV, and from the documentation indicates 'the table is being version disabled'.
As this table should NOT be version disabled, I'm presuming someone mistakenly ran the wrong dbms_wm command over it then did a Control-C to abort.
NUTRIWEB: MPI > select owner, table_name, state, status, error_msg, sql_str from all_wm_vt_errors;
OWNER TABLE_NAME STATE STATUS ERROR_MSG
------------------------------ --------------- ------ ------------------------------ -------------------------------------------------------
SQL_STR
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
MPI PRODUCT DV DV STEP EXECUTED WITH ERRORS ORA-01013: user requested cancel of current operation
delete from MPI.PRODUCT_LT
where nextver = ',0,' or
nextver in
(select next_vers
from wmsys.wm$nextver_table
where version in (select version from wmsys.wm$version_hierarchy_table where workspace='LIVE')) or
delstatus < 0
1 row selected.
Ideas on how to get this back into a version-enabled state? I see 389k records in the PRODUCT_HIST table, so we still have history, but as to the state of the rest of the related WM objects...
Thanks in advance
Stuart.