Library Name | mongoDB |
---|---|
Version #1 | 1.5.4 |
Version #2 | 1.5.5 |
CPU Architecture | x86 |
GCC Version | 4.5 |
Total Header Files | 1 |
---|---|
Total Shared Libraries | 1 |
Total Symbols / Types | 430 / 331 |
Verdict | Incompatible (19.42%) |
Severity | Count | |
---|---|---|
Added Symbols | - | 6 |
Removed Symbols | High | 2 |
Problems with Data Types | High | 4 |
Medium | 3 | |
Low | 6 | |
Problems with Symbols | High | 1 |
Medium | 1 | |
Low | 0 | |
Problems with Constants | Low | 0 |
Other Changes | - | 0 |
Change | Effect | |
---|---|---|
1 | Size of this class has been changed from 40 bytes to 48 bytes. | 1) The class has only inline or auto-generated constructors which will be copied to applications at compile time and will allocate an older memory layout. Call of any exported method of this class may access a memory outside the allocated objects or inside the older memory structure and result in crash or incorrect behavior of applications. 2) The memory layout and size of subclasses will be changed. |
Change | Effect | |
---|---|---|
1 | Size of this class has been changed from 92 bytes to 100 bytes. | 1) The class has only inline or auto-generated constructors which will be copied to applications at compile time and will allocate an older memory layout. Call of any exported method of this class may access a memory outside the allocated objects or inside the older memory structure and result in crash or incorrect behavior of applications. 2) The memory layout and size of subclasses will be changed. |
Change | Effect | |
---|---|---|
1 | Size of this class has been increased from 228 bytes to 252 bytes. | 1) An object of this class can be allocated by the applications and old size will be hardcoded at the compile time. Call of any exported constructor will break the memory of neighbouring objects on the stack or heap. 2) The memory layout and size of subclasses will be changed. |
Change | Effect | |
---|---|---|
1 | Size of this class has been changed from 32 bytes to 40 bytes. | 1) The class has only inline or auto-generated constructors which will be copied to applications at compile time and will allocate an older memory layout. Call of any exported method of this class may access a memory outside the allocated objects or inside the older memory structure and result in crash or incorrect behavior of applications. 2) The memory layout and size of subclasses will be changed. |
Change | Effect | |
---|---|---|
1 | Parameters list has been changed. | The name of the appropriate symbol for this function on binary level has been changed from _ZN5mongo18DBClientConnection5queryEN5boost8functionIFvRKNS_7BSONObjEEEERKSsNS_5QueryEPS4_ to _ZN5mongo18DBClientConnection5queryEN5boost8functionIFvRKNS_7BSONObjEEEERKSsNS_5QueryEPS4_i. This may cause "undefined reference" linker error in old client applications. |
Change | Effect | |
---|---|---|
1 | The layout of v-table has been changed for unknown reason. | Call of any method in this class may result in crash or incorrect behavior of applications. |
Offset | Virtual Table (Old) - 37 entries | Virtual Table (New) - 37 entries |
---|---|---|
0 | (int (*)(...))0 | (int (*)(...))0 |
4 | (int (*)(...))(& typeinfo) | (int (*)(...))(& typeinfo) |
8 | DBClientBase::query | DBClientBase::query |
12 | DBClientBase::getMore | DBClientBase::getMore |
16 | DBClientBase::insert | DBClientBase::insert |
20 | DBClientBase::insert | DBClientBase::insert |
24 | DBClientBase::remove | DBClientBase::remove |
28 | DBClientBase::update | DBClientBase::update |
32 | ~DBClientBase | ~DBClientBase |
36 | ~DBClientBase | ~DBClientBase |
40 | DBClientInterface::findOne | DBClientInterface::findOne |
44 | DBClientWithCommands::runCommand | DBClientWithCommands::runCommand |
48 | DBClientWithCommands::auth | DBClientWithCommands::auth |
52 | DBClientWithCommands::isMaster | DBClientWithCommands::isMaster |
56 | DBClientWithCommands::getLastErrorDetailed | DBClientWithCommands::getLastErrorDetailed |
60 | DBClientWithCommands::dropCollection | DBClientWithCommands::dropCollection |
64 | DBClientWithCommands::ensureIndex | DBClientWithCommands::ensureIndex |
68 | DBClientWithCommands::resetIndexCache | DBClientWithCommands::resetIndexCache |
72 | DBClientWithCommands::getIndexes | DBClientWithCommands::getIndexes |
76 | DBClientWithCommands::dropIndex | DBClientWithCommands::dropIndex |
80 | DBClientWithCommands::dropIndex | DBClientWithCommands::dropIndex |
84 | DBClientWithCommands::dropIndexes | DBClientWithCommands::dropIndexes |
88 | DBClientWithCommands::reIndex | DBClientWithCommands::reIndex |
92 | DBClientWithCommands::dropDatabase | DBClientWithCommands::dropDatabase |
96 | __cxa_pure_virtual | __cxa_pure_virtual |
100 | __cxa_pure_virtual | __cxa_pure_virtual |
104 | __cxa_pure_virtual | __cxa_pure_virtual |
108 | __cxa_pure_virtual | __cxa_pure_virtual |
112 | (int (*)(...))-0x000000020 | (int (*)(...))-0x000000028 |
116 | (int (*)(...))(& typeinfo) | (int (*)(...))(& typeinfo) |
120 | non-virtual thunk | non-virtual thunk |
124 | non-virtual thunk | non-virtual thunk |
128 | __cxa_pure_virtual | __cxa_pure_virtual |
132 | __cxa_pure_virtual | __cxa_pure_virtual |
136 | __cxa_pure_virtual | __cxa_pure_virtual |
140 | DBConnector::checkResponse | DBConnector::checkResponse |
144 | DBConnector::recv | DBConnector::recv |
Change | Effect | |
---|---|---|
1 | The layout of v-table has been changed for unknown reason. | Call of any method in this class may result in crash or incorrect behavior of applications. |
Offset | Virtual Table (Old) - 43 entries | Virtual Table (New) - 43 entries |
---|---|---|
0 | (int (*)(...))0 | (int (*)(...))0 |
4 | (int (*)(...))(& typeinfo) | (int (*)(...))(& typeinfo) |
8 | DBClientConnection::query | DBClientConnection::query |
12 | DBClientBase::getMore | DBClientBase::getMore |
16 | DBClientBase::insert | DBClientBase::insert |
20 | DBClientBase::insert | DBClientBase::insert |
24 | DBClientBase::remove | DBClientBase::remove |
28 | DBClientBase::update | DBClientBase::update |
32 | ~DBClientConnection | ~DBClientConnection |
36 | ~DBClientConnection | ~DBClientConnection |
40 | DBClientInterface::findOne | DBClientInterface::findOne |
44 | DBClientWithCommands::runCommand | DBClientWithCommands::runCommand |
48 | DBClientConnection::auth | DBClientConnection::auth |
52 | DBClientWithCommands::isMaster | DBClientWithCommands::isMaster |
56 | DBClientWithCommands::getLastErrorDetailed | DBClientWithCommands::getLastErrorDetailed |
60 | DBClientWithCommands::dropCollection | DBClientWithCommands::dropCollection |
64 | DBClientWithCommands::ensureIndex | DBClientWithCommands::ensureIndex |
68 | DBClientWithCommands::resetIndexCache | DBClientWithCommands::resetIndexCache |
72 | DBClientWithCommands::getIndexes | DBClientWithCommands::getIndexes |
76 | DBClientWithCommands::dropIndex | DBClientWithCommands::dropIndex |
80 | DBClientWithCommands::dropIndex | DBClientWithCommands::dropIndex |
84 | DBClientWithCommands::dropIndexes | DBClientWithCommands::dropIndexes |
88 | DBClientWithCommands::reIndex | DBClientWithCommands::reIndex |
92 | DBClientWithCommands::dropDatabase | DBClientWithCommands::dropDatabase |
96 | DBClientConnection::toString | DBClientConnection::toString |
100 | DBClientConnection::getServerAddress | DBClientConnection::getServerAddress |
104 | DBClientConnection::isFailed | DBClientConnection::isFailed |
108 | DBClientConnection::killCursor | DBClientConnection::killCursor |
112 | DBClientConnection::connect | DBClientConnection::connect |
116 | DBClientConnection::recv | DBClientConnection::recv |
120 | DBClientConnection::call | DBClientConnection::call |
124 | DBClientConnection::say | DBClientConnection::say |
128 | DBClientConnection::sayPiggyBack | DBClientConnection::sayPiggyBack |
132 | DBClientConnection::checkResponse | DBClientConnection::checkResponse |
136 | (int (*)(...))-0x000000020 | (int (*)(...))-0x000000028 |
140 | (int (*)(...))(& typeinfo) | (int (*)(...))(& typeinfo) |
144 | non-virtual thunk | non-virtual thunk |
148 | non-virtual thunk | non-virtual thunk |
152 | non-virtual thunk | non-virtual thunk |
156 | non-virtual thunk | non-virtual thunk |
160 | non-virtual thunk | non-virtual thunk |
164 | non-virtual thunk | non-virtual thunk |
168 | non-virtual thunk | non-virtual thunk |
Change | Effect | |
---|---|---|
1 | The layout of v-table has been changed for unknown reason. | Call of any method in this class may result in crash or incorrect behavior of applications. |
Offset | Virtual Table (Old) - 41 entries | Virtual Table (New) - 41 entries |
---|---|---|
0 | (int (*)(...))0 | (int (*)(...))0 |
4 | (int (*)(...))(& typeinfo) | (int (*)(...))(& typeinfo) |
8 | DBClientPaired::query | DBClientPaired::query |
12 | DBClientBase::getMore | DBClientBase::getMore |
16 | DBClientPaired::insert | DBClientPaired::insert |
20 | DBClientPaired::insert | DBClientPaired::insert |
24 | DBClientPaired::remove | DBClientPaired::remove |
28 | DBClientPaired::update | DBClientPaired::update |
32 | ~DBClientPaired | ~DBClientPaired |
36 | ~DBClientPaired | ~DBClientPaired |
40 | DBClientPaired::findOne | DBClientPaired::findOne |
44 | DBClientWithCommands::runCommand | DBClientWithCommands::runCommand |
48 | DBClientWithCommands::auth | DBClientWithCommands::auth |
52 | DBClientWithCommands::isMaster | DBClientWithCommands::isMaster |
56 | DBClientWithCommands::getLastErrorDetailed | DBClientWithCommands::getLastErrorDetailed |
60 | DBClientWithCommands::dropCollection | DBClientWithCommands::dropCollection |
64 | DBClientWithCommands::ensureIndex | DBClientWithCommands::ensureIndex |
68 | DBClientWithCommands::resetIndexCache | DBClientWithCommands::resetIndexCache |
72 | DBClientWithCommands::getIndexes | DBClientWithCommands::getIndexes |
76 | DBClientWithCommands::dropIndex | DBClientWithCommands::dropIndex |
80 | DBClientWithCommands::dropIndex | DBClientWithCommands::dropIndex |
84 | DBClientWithCommands::dropIndexes | DBClientWithCommands::dropIndexes |
88 | DBClientWithCommands::reIndex | DBClientWithCommands::reIndex |
92 | DBClientWithCommands::dropDatabase | DBClientWithCommands::dropDatabase |
96 | DBClientPaired::toString | DBClientPaired::toString |
100 | DBClientPaired::getServerAddress | DBClientPaired::getServerAddress |
104 | DBClientPaired::isFailed | DBClientPaired::isFailed |
108 | DBClientPaired::killCursor | DBClientPaired::killCursor |
112 | DBClientPaired::call | DBClientPaired::call |
116 | DBClientPaired::say | DBClientPaired::say |
120 | DBClientPaired::sayPiggyBack | DBClientPaired::sayPiggyBack |
124 | DBClientPaired::checkResponse | DBClientPaired::checkResponse |
128 | (int (*)(...))-0x000000020 | (int (*)(...))-0x000000028 |
132 | (int (*)(...))(& typeinfo) | (int (*)(...))(& typeinfo) |
136 | non-virtual thunk | non-virtual thunk |
140 | non-virtual thunk | non-virtual thunk |
144 | non-virtual thunk | non-virtual thunk |
148 | non-virtual thunk | non-virtual thunk |
152 | non-virtual thunk | non-virtual thunk |
156 | non-virtual thunk | non-virtual thunk |
160 | DBConnector::recv | DBConnector::recv |
Change | Effect | |
---|---|---|
1 | Size of this global data has been changed from 52 bytes to 56 bytes. | Applications will obtain a different value and execution may change. |
Change | Effect | |
---|---|---|
1 | Field pretouch has been added to this type. | Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. |
2 | Size of this type has been changed from 52 bytes to 56 bytes. | The fields or parameters of such data type may be incorrectly initialized or accessed by old client applications. |
Change | Effect | |
---|---|---|
1 | Size of field left has been changed from 92 bytes to 100 bytes. | Size of the inclusive type has changed. |
2 | Size of field right has been changed from 92 bytes to 100 bytes. | Size of the inclusive type has changed. |
Change | Effect | |
---|---|---|
1 | Field _cachedAvailableOptions has been added to this type. | Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. |
2 | Field _haveCachedAvailableOptions has been added to this type. | Size of the inclusive type has been changed. NOTE: this field should be accessed only from the new library functions, otherwise it may result in crash or incorrect behavior of applications. |