diff --git a/CHANGELOG b/CHANGELOG index 38d6dc51c4..514eb9b7bd 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -13,6 +13,8 @@ devel v3.0.1 (XXXX-XX-XX) ------------------- +* fixed "collection is a nullptr" issue when starting a traversal from a transaction + * enable /_api/import on coordinator servers @@ -343,6 +345,8 @@ v3.0.0-rc1 (2015-06-10) v2.8.10 (XXXX-XX-XX) -------------------- +* fixed "collection is a nullptr" issue when starting a traversal from a transaction + * honor the value of startup option `--database.wait-for-sync` (that is used to control whether new collections are created with `waitForSync` set to `true` by default) also when creating collections via the HTTP API (and thus the ArangoShell). When creating diff --git a/arangod/Utils/Transaction.h b/arangod/Utils/Transaction.h index 79913ff478..39e64bf36f 100644 --- a/arangod/Utils/Transaction.h +++ b/arangod/Utils/Transaction.h @@ -235,7 +235,7 @@ class Transaction { ////////////////////////////////////////////////////////////////////////////// bool isSingleOperationTransaction() const { - return TRI_IsSingleOperationTransaction(this->getInternals()); + return TRI_IsSingleOperationTransaction(_trx); } ////////////////////////////////////////////////////////////////////////////// @@ -389,13 +389,13 @@ class Transaction { auto collection = this->trxCollection(cid); if (collection == nullptr) { - int res = TRI_AddCollectionTransaction(this->getInternals(), cid, + int res = TRI_AddCollectionTransaction(_trx, cid, type, - this->nestingLevel(), true, true); + _nestingLevel, true, true); if (res != TRI_ERROR_NO_ERROR) { THROW_ARANGO_EXCEPTION(res); } - TRI_EnsureCollectionsTransaction(this->getInternals()); + TRI_EnsureCollectionsTransaction(_trx, _nestingLevel); collection = this->trxCollection(cid); if (collection == nullptr) {