Forum Stats

  • 3,840,408 Users
  • 2,262,600 Discussions
  • 7,901,267 Comments

Discussions

What is SYS.RMTAB$ table ?

Michael[FR]
Michael[FR] Member Posts: 45 Red Ribbon
edited Oct 7, 2013 11:45AM in General Database Discussions

Hi,

I have noticed that when I move a partition with the ONLINE clause on Oracle 12c, an object SYS_JOURNAL_% (where % corresponds to the ID of the object involved by the online operation) is generated by Oracle. It is to log changes made during the move operation and are applied on the partition once it is moved.

It comes with an other temp table SYS_RMTAB$$_H%. The % corresponds to a column of the tale SYS.RMTAB$.

I am not able to find the description of this table in Oracle Reference documentation. Can anyone tell me where to find details of system tables ?

Thanks

Best Answer

  • Michael[FR]
    Michael[FR] Member Posts: 45 Red Ribbon
    Answer ✓

    I answer to my own question. After several hours of investigation, I have discovered that in case of moving a partition online, Oracle needs to create three temporary objects. First, it creates the SYS_JOURNAL table to log changes during the move operation. Then, it creates a SYS_RMTAB$$_H% table to register ROWIDs for the source partition existing data. To finish, Oracle creates a SYS_RMTAB$$_I% table to merge logged data and source existing data, in order to load the whole in the new moved partition.

    All those objects are removed after the move operation.

Answers

  • DK2010
    DK2010 Member Posts: 1,542 Silver Trophy

    Hi,

    Did you checked the owner of those objects.

  • Michael[FR]
    Michael[FR] Member Posts: 45 Red Ribbon

    Yes, both objects are owned by the schema of the partition beeing moved...

  • Michael[FR]
    Michael[FR] Member Posts: 45 Red Ribbon
    Answer ✓

    I answer to my own question. After several hours of investigation, I have discovered that in case of moving a partition online, Oracle needs to create three temporary objects. First, it creates the SYS_JOURNAL table to log changes during the move operation. Then, it creates a SYS_RMTAB$$_H% table to register ROWIDs for the source partition existing data. To finish, Oracle creates a SYS_RMTAB$$_I% table to merge logged data and source existing data, in order to load the whole in the new moved partition.

    All those objects are removed after the move operation.

This discussion has been closed.