Details
-
Bug
-
Status: Closed
-
Minor - P4
-
Resolution: Fixed
-
3.6.0-rc4
-
Fully Compatible
-
ALL
-
v3.6
-
Repl 2018-01-01
-
0
Description
Here's a sequence of operations that seems to cause rollback to abort:
1. Create a collection with a long name; (long = 64 or so characters)
2. Rename it to one with a shorter name;
3. Create an index with a long name.
Rollback seems to do the rename without dropping indexes, causing the rename back to the long name to fail when the index is present.
2017-11-15T19:53:32.521+0000 I ROLLBACK [rsBackgroundSync] Attempting to rename collection with UUID: ec2f6bdc-d71b-410c-a294-62556ad94185, from: db_1.system.drop.1510775596i24t10.two, to: db_1.verylongnamespaceverylongnamespaceverylongnamespaceverylongnamespaceverylongnamespaceverylongnamespaceverylongnam
|
2017-11-15T19:53:32.521+0000 F ROLLBACK [rsBackgroundSync] Unable to roll back renameCollection command: InvalidLength: collection name length of 118 exceeds maximum length of 116, allowing for index names
|
2017-11-15T19:53:32.521+0000 I ROLLBACK [rsBackgroundSync] Rollback finished. The final minValid is: { ts: Timestamp 1510775610000|106, t: 11 }
|
2017-11-15T19:53:32.522+0000 F ROLLBACK [rsBackgroundSync] Unable to complete rollback. A full resync may be needed: UnrecoverableRollbackError: Unable to rollback renameCollection command
|
2017-11-15T19:53:32.522+0000 F - [rsBackgroundSync] Fatal Assertion 40507 at src/mongo/db/repl/rs_rollback.cpp 1475
|
2017-11-15T19:53:32.522+0000 F - [rsBackgroundSync]
|
|
***aborting after fassert() failure
|