Data Pump falsely reports the number of imported rows as 1 (one)

Yesterday i did a large import using data pump and the network mode feature. I noticed a table containing a large number of rows were reported by data pump as imported but with only one (1) row.

First i checked my import options, checked for errors in source and target database and even cleaned up everything and restarted the import. Surprise surprise: Same error again.

The environment was:

  • Oracle Enterprise Edition 10.2.0.4.0
  • Solaris (SPARC) 10
  • Data Pump Import with NETWORK_MODE
  • excluding STATISTICS, GRANTS and ROLE_GRANTS

Extract  from the data pump log file:

Processing object type SCHEMA_EXPORT/CLUSTER/CLUSTER
 Processing object type SCHEMA_EXPORT/CLUSTER/INDEX
 Processing object type SCHEMA_EXPORT/TABLE/TABLE
 . . imported "USER"."TABLE_A"                 55082451 rows
 . . imported "USER"."SOME_LARGE_TABLE"       307126916 rows
 . . imported "USER"."ANOTHER_TABLE"          176936257 rows
 . . imported "USER"."JUST_ANOTHER_TABLE"     215682029 rows
 . . imported "USER"."HUGE_TABLE"                     1 rows        <====
 . . imported "USER"."AND_SO_ON"              133356302 rows

So i started to dig a little bit deeper and noticed the source table has approx 62 million rows with a size of 28 GB. To my surprise the target database also reported the table with 28 gb in DBA_SEGMENTS.

So i did a simple:

SQL> select count(1) from user.huge_table;
COUNT(1)
 ----------
 62485290

Guess what? The table was imported correctly with all rows while data pump reported only one imported row.

I check metalink for related errors but found nothing.

I can only guess if this is a bug or there is some time limit when querying the rows of the just imported tables.

Update: I did some reseach and created a really large table with 1 billion rows the data pump showed:

. . imported "USER"."TABLE_WITH_1_BILLION_ROWS"             -1416726547 rows

There might be some kind of counter overflow…. i will investiage this further.

This entry was posted in Oracle in general. Bookmark the permalink.

One Response to Data Pump falsely reports the number of imported rows as 1 (one)

  1. Хочу высказать своё мнение: статья интересная, надеюсь комментаторы присоединятся ко мне

    (English translation according to google: “I want to express your opinion: an interesting article, I hope commentators join me” — Ronny Egner)

Leave a Reply

Your email address will not be published. Required fields are marked *