Skip to Main Content

SQL & PL/SQL

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Unsupported Columns DBMS_ROLLING

BufossJun 16 2024 — edited Jun 16 2024

Hello everyone,

I need to conduct a feasibility study on the implementation of a DBMS rolling method for our database.

I found the following article and am trying to understand it better.
https://docs.oracle.com/en/database/oracle/oracle-database/21/sbydb/using-DBMS_ROLLING-to-perform-rolling-upgrade.html#GUID-647FF758-5B53-44AE-BB80-B6FA506F09C7to

Executing the below query

SELECT *
 FROM CDB_LOGSTDBY_UNSUPPORTED 
WHERE owner = 'OWNER1'
ORDER BY OWNER,TABLE_NAME;

I get enough rows as output for the following data types

  • VARCHAR2,
  • TIMESTAMP(6) and
  • NUMBER.

For example, I have got for one table the following

The definition of the table is as follow :

CREATE TABLE MOVEMENT_MESSAGE (
 ID            NUMBER(12),
 CCN_UNIQUE_ID VARCHAR2(250) NOT NULL,
 MSG_TYPE      VARCHAR2(50) NOT NULL,
 SEND_DATE     TIMESTAMP NOT NULL,
 MIN_DATE      TIMESTAMP NOT NULL,
 MAX_DATE      TIMESTAMP NOT NULL,
 SENDER        VARCHAR2(2) NOT NULL,
 RECEIVER      VARCHAR2(2) NOT NULL,
 FAILED        NUMBER(1) DEFAULT 0,
 MISSING_ACK   NUMBER(1) DEFAULT 0,
 IS_COMPLETE   NUMBER(1) DEFAULT 0,
 MOVEMENT_ID   NUMBER(12) NOT NULL,
 IS_IECA       NUMBER(1) DEFAULT 0,
 MODIFICATION_DATE TIMESTAMP DEFAULT SYSDATE,
 PRIMARY KEY (ID),
 CONSTRAINT MOVEMENT_MESSAGE_FK FOREIGN KEY (MOVEMENT_ID) REFERENCES MOVEMENT(ID)
)
PARTITION BY REFERENCE (MOVEMENT_MESSAGE_FK)
ENABLE ROW MOVEMENT
INITRANS 5
;

CREATE INDEX IDX_MOVEMENT_MSG_ID ON MOVEMENT_MESSAGE(MOVEMENT_ID) LOCAL;
CREATE INDEX IDX_MOVEMENT_MSG_MSG_TYPE_SEND_DATE ON MOVEMENT_MESSAGE(SEND_DATE, MSG_TYPE);
CREATE INDEX IDX_HAS_ANY_MISSING_ACK ON MOVEMENT(HAS_ANY_MISSING_ACK);
CREATE INDEX IDX_HAS_ANY_FAILED_SEND ON MOVEMENT(HAS_ANY_FAILED_SEND);

CREATE SEQUENCE MOVEMENT_MESSAGE_SEQ START WITH 500 INCREMENT BY 500 MAXVALUE 999999999999 NOSCALE CACHE 50 ORDER;

Could you help me understand what I need to do to avoid unsupported columns? What other queries should I check for the database?

I apologize for the broad questions, but I am confused.

I appreciate your help.

Comments
Post Details
Added on Jun 16 2024
2 comments
187 views