When activating a config, the following error appears:
sp_ctrl (snapblv:2300)> activate config SnapBlvToSnapStl
Supplemental logging is not enabled.
SharePlex requires at least minimal supplemental logging to be enabled.
Please enable supplemental logging and reactivate
Table level supplemental logging is enabled for the tables involved in replication.
Supplemental logging is not enabled at database level
For certain combination of Shareplex and Oracle versions you need to have at least minimum supplemental logging enabled at database level, and not at the object level. For example, if running Oracle 10g on Shareplex 5.3 or up, you need to have minimum supplemental logging enabled at database level. See Release Notes for the Shareplex version in question.Since supplemental logging was enabled for the objects being replicated (table level supplemental logging) this error occurred.
To resolve the issue, please shutdown Shareplex, clean up the existing environment by running ora_cleansp and then enable minimum supplemental logging (at database level) before activating the config again. See Admin Guide or Release Notes for that Shareplex version for further details. The following is an excerpt from Admin Guide:
To turn on supplemental logging perform the following.
ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
ALTER SYSTEM SWITCH LOGFILE;
The following is the information on table level supplemental logging available in Oracle's documentation.
Table Supplemental Logging
Table supplemental logging uses log groups to log supplemental information. There are two types of log groups:
A. Unconditional log groups - The before images of specified columns are logged any time the table is updated, regardless of whether the update affected any of the specified columns. This is sometimes referred to as an ALWAYS log group.
B. Conditional log groups - The before images of all specified columns are logged only if at least one of the columns in the log group is updated.
Unconditional Log Groups
To enable supplemental logging that uses unconditional log groups, use the ALWAYS clause as shown in the following example:
SQL> ALTER TABLE scott.emp
2 ADD SUPPLEMENTAL LOG GROUP emp_parttime (empno, ename, deptno) ALWAYS;
This creates a log group named emp_parttime on scott.emp that consists of the columns empno, ename, and deptno. These columns will be logged every time an UPDATE statement is executed on scott.emp, regardless of whether or not the update affected them. If you wanted to have the entire row image logged any time an update was made, you could create a log group that contained all the columns in the table.
Conditional Log Groups
To enable supplemental logging that uses conditional log groups, omit the ALWAYS clause from your ALTER TABLE statement, as shown in the following example:
SQL> ALTER TABLE scott.emp
2 ADD SUPPLEMENTAL LOG GROUP emp_fulltime (empno, ename, deptno);
This creates a log group named emp_fulltime on scott.emp. Just like the previous example, it consists of the columns empno, ename, and deptno. But because the ALWAYS clause was omitted, before images of the columns will be logged only if at least one of the columns is updated.