Home | Previous Page | Next Page   Database Reference > Message-Log Messages >

Violations Table Messages

Cannot alter a table which has associated violations table.
Cause:

The user tried to add, drop, or modify a column in a table that has a violations table associated with it.

Action:

Do not change the columns in the user table.

Cannot create violations/diagnostics table.
Cause:

The user issued a START VIOLATIONS TABLE statement for a target table. The database server cannot create the violations table for this target table. Any of the following situations might be the reason for this failure:

Action:

To resolve this error, perform one of the following actions:

Cannot insert from the violations table to the target table.
Cause:

The user has issued a statement that attempts to insert rows from the violations table into the target table. For example, the user enters the following invalid statement:

INSERT INTO mytable SELECT * FROM 
mytable_vio;

Also, if the target table has filtering-mode constraints, you receive this error. Extended Parallel Server does not support filtering-mode constraints.

Action:

To recover from this error, perform the following actions:

Cannot modify/drop a violations/diagnostics table.
Cause:

The user has tried to alter or drop a table that is serving as a violations table for another table.

Action:

Do not alter or drop the violations table.

This ddl operation is not allowed due to deferred constraints pending on this table and dependent tables.
Cause:

This error gets returned when you attempt to start a violations table when constraints are in deferred mode.

Note: No error is returned if you start a violations table and then later set the constraints to deferred. However, the violations get undone immediately rather than written into the deferred constraint buffer. For more information, see the IBM Informix: Extended Parallel Server Administrator's Guide and the IBM Informix: Guide to SQL Syntax.

Action:

If you would like to start a violations table, you must either change the constraint mode to immediate or commit the transaction.

Too many violations.
Cause:

The number of violations in the diagnostics table exceeds the limit that is specified in the MAX VIOLATIONS clause of the START VIOLATIONS TABLE statement. When a single statement on the target table (such as an INSERT or UPDATE statement) inserts more records into the violations table than the limit that is specified by the MAX VIOLATIONS clause, this error is returned to the user who issued the statement on the target table.

This MAX VIOLATIONS limit applies to each coserver. For example, if you reach the MAX VIOLATIONS limit on coserver 2, you can continue to issue statements that violate rows on other coservers until you reach the MAX VIOLATIONS limit.

Action:

To resolve this error, perform one of the following actions:

Violations table is not started for the target table.
Cause:

If you issue a STOP VIOLATIONS TABLE statement for which no violations table is started, you receive this message.

Action:

To recover from this error, you must start a violations table for the target table.

Violations table reversion test completed successfully.
Cause:

This message is recorded in the logmessage table in the sysmaster database when the revtestviolations.sh script has completed successfully (no open violations tables were found).

Action:

Action: No action is necessary. For more information on revtestviolations.sh, see the IBM Informix: Migration Guide.

Violations table reversion test failed.
Cause:

When the database server finds an open violations table, it reports errors 16992 and 16993 in the logmessage table in the sysmaster database and aborts the reversion process.

Action:

When this message appears, you must issue the STOP VIOLATIONS TABLE FOR table_name command for each open violations table. After you close all open violations tables, you can restart the reversion process.

Violations table reversion test start.
Cause:

This message is recorded in the logmessage table in the sysmaster database when the revtestviolations.sh script is executed.

Action:

No action is necessary. For more information on revtestviolations.sh, see the IBM Informix: Migration Guide.

Violations tables still exist.
Cause:

This message is recorded in the logmessage table in the sysmaster database when an open violations table is found.

Action:

When this message appears, you must issue the STOP VIOLATIONS TABLE FOR table_name command for each open violations table. After you close all open violations tables, you can restart the reversion process.

Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]