Simon Grätzer
27c617fe10
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
...
# Conflicts:
# 3rdParty/V8/v8
# arangod/Transaction/Methods.h
# arangod/Utils/UserTransaction.h
# arangod/V8Server/v8-collection.cpp
2017-03-01 14:52:35 +01:00
Michael Hackstein
7950270134
Removed obsolete code in LogicalCollection.
2017-02-28 16:08:54 +01:00
Michael Hackstein
900b15dd3a
API cleanup in LogicalCollection. Removed some unused exposed toVelocypack functions. Removed toVelocyPack with maxTick variant. That is available in the StorageEngine instead
2017-02-28 15:35:31 +01:00
Michael Hackstein
df4eadac75
Replaced several specialized toVelocyPack functions of LogicalCollection by toVelocyPackIgnore(). Fixed distributeLike bug that occured through this.
2017-02-28 14:54:32 +01:00
Michael Hackstein
a884ee2bfb
Intermediate commit. Moved many toVPack functions of LogicalCollection to a unified vpack + ignore-keys alternative. This commit is used to run all tests everywhere. May be red
2017-02-27 13:01:07 +01:00
Michael Hackstein
c8f03d16e3
updateProperties now returns an CollectionResult container with errorMessage and code. Moved error reporting logic for cluster-case into this function.
2017-02-24 17:00:41 +01:00
Michael Hackstein
076198106d
Now also the cluster variant of collection properties uses the shared toVPackVariant
2017-02-23 16:40:33 +01:00
Michael Hackstein
cc78b0131f
v8-collection-properties now reuses propertiesVPack on logical collection (SingleServerCase)
2017-02-23 15:31:13 +01:00
Michael Hackstein
de31c68539
Moved isVolatile into MMfiles collection.
2017-02-23 14:56:54 +01:00
Michael Hackstein
853394da79
Moved keyGenerator into physicalCollection. Only used when actually storing data.
2017-02-23 11:10:58 +01:00
Michael Hackstein
df59411710
Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api
2017-02-22 14:43:10 +01:00
Michael Hackstein
a359424af0
Moved logic of write Marker out of the dropIndex API from Logical collection. Can be derived from the engine internally.
2017-02-22 12:32:54 +01:00
Jan Christoph Uhde
711a71ac4d
add LogicalCollection::invokeOnAllElements()
...
and remove MMFilesPrimaryIndex.h from Transaction/Methods.cpp
2017-02-22 10:40:27 +01:00
Jan Christoph Uhde
fcfe66e254
add getAll/AnyIterator to LogicalCollection
2017-02-22 09:24:38 +01:00
Jan Christoph Uhde
3467031cb9
remove transferMarkers from StorageEngine.h
2017-02-21 16:00:37 +01:00
Michael Hackstein
0f7d50765d
Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api
2017-02-21 14:12:16 +01:00
Michael Hackstein
fbdbfdcb6d
Moved primaryIndex knowledge out of Logical Collection. Also moved logic for close into MMFiles
2017-02-21 14:12:07 +01:00
Jan Christoph Uhde
133961ff8d
remove applyForTickRange from LogicalCollection
2017-02-21 13:42:59 +01:00
Jan Christoph Uhde
e9555e4b10
remove rotateJournals from LogicalCollection
2017-02-21 11:06:53 +01:00
Jan Christoph Uhde
6e1f77be24
remove ditches from interface. the ditches concept needs fixing!!
2017-02-21 10:53:51 +01:00
Jan Christoph Uhde
0f86801645
remove updateStats from LogicalCollection interface
2017-02-21 10:06:51 +01:00
Jan Christoph Uhde
cf970ed230
Squashed commit of the following:
...
commit 2644735fe06806ec8ffb78ceb2ede04037258952
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date: Tue Feb 21 09:10:55 2017 +0100
failed ammend
commit c2b8604df5a60fd00e57b4f088fe8a2624d9ac3b
Author: Jan Christoph Uhde <Jan@UhdeJC.com>
Date: Mon Feb 20 12:49:58 2017 +0100
move - maxTick to Physical - RACE!
2017-02-21 09:19:49 +01:00
Jan Christoph Uhde
071137adf6
move doCompact into PhysicalColletion
2017-02-20 10:53:11 +01:00
Jan Christoph Uhde
f3a1f128ee
remove isFullyCollected from LogicalCollection
2017-02-20 10:28:28 +01:00
Jan Christoph Uhde
40a1345f76
Merge branch 'engine-api' of github.com:arangodb/arangodb into obi-engine-api
...
* 'engine-api' of github.com:arangodb/arangodb:
Moved logic for drop index into MMFilesCollection
2017-02-20 09:50:17 +01:00
Michael Hackstein
17effdc065
Moved logic for drop index into MMFilesCollection
2017-02-20 09:06:41 +01:00
Jan Christoph Uhde
21cb8e3217
Merge branch 'engine-api' of github.com:arangodb/arangodb into obi-engine-api
...
* 'engine-api' of github.com:arangodb/arangodb:
Removed readRevision from LogicalCollection. You only get readDocument with a token. Moved it's logic into MMFilesCollection. removed the ignoreWal parameter from readDocumentConditional. It was always true anyways...
Moved pre-commit document modifications out of logical-collection into the physical collection. They are only relevant when actually writing to disc.
Moved useSecondaryIndexes check from Logical to MMFiles collection
Some cleanup in Logical collection imports
Moved index filling into the MMFiles collection
changelog
grunt build
css
ui: queries now using cursors api - issue #2065
remove crosscompile hack - it doesn't work anymore
updated CHANGELOG
add changlog entry for stacktrace log messages
clean up write lockers a bit
fix too early closing of sockets
Moved restoreIndex to Physical collection.
Fix a shell script used during build.
Lower log level to debug in shutdown message.
fix spelling
Moved saveIndex logic into the physical collection
fix potential deadlock
Conflicts:
arangod/MMFiles/MMFilesCollection.cpp
arangod/MMFiles/MMFilesCollection.h
arangod/VocBase/LogicalCollection.cpp
2017-02-18 19:10:45 +01:00
Jan Christoph Uhde
2d5e74f7f6
move journaize() to PhysicalCollection
...
MMFilesCollection ctor might be buggy
2017-02-17 20:06:47 +01:00
Michael Hackstein
91f303e963
Removed readRevision from LogicalCollection. You only get readDocument with a token. Moved it's logic into MMFilesCollection. removed the ignoreWal parameter from readDocumentConditional. It was always true anyways...
2017-02-17 17:29:49 +01:00
Michael Hackstein
b84b05244f
Moved pre-commit document modifications out of logical-collection into the physical collection. They are only relevant when actually writing to disc.
2017-02-17 16:07:02 +01:00
Michael Hackstein
5366f09ec8
Moved useSecondaryIndexes check from Logical to MMFiles collection
2017-02-17 13:33:00 +01:00
Michael Hackstein
e396446a17
Some cleanup in Logical collection imports
2017-02-17 13:16:22 +01:00
Michael Hackstein
c543dd06a4
Moved index filling into the MMFiles collection
2017-02-17 12:56:54 +01:00
Michael Hackstein
f0fbe78b2d
Moved restoreIndex to Physical collection.
2017-02-16 15:01:00 +01:00
Michael Hackstein
a3aae2e43b
Moved saveIndex logic into the physical collection
2017-02-16 12:53:05 +01:00
Michael Hackstein
94fbfaa453
Moved the entire logic of open() to the Physical collection. It is different for each StorageEngine.
2017-02-15 16:26:55 +01:00
Michael Hackstein
c3ff82f4e1
Moved version management to MMFiles collection. Logical does not need to know it. Removed PhysicalCollection inclode from logicical collection. Now we should rebuild less code whan changing sth in storage engine.
2017-02-15 15:48:33 +01:00
jsteemann
7ff2e19abb
Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api
2017-02-15 12:46:06 +01:00
Jan Christoph Uhde
be89cac445
move path from logical to physical
2017-02-15 11:43:38 +01:00
Michael Hackstein
d49cbffc46
Moved revision handling from Logical to MMFiles collection. That is only relevant for MMFiles.
2017-02-15 11:26:58 +01:00
Michael Hackstein
9e41a7a6bb
Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api
2017-02-15 10:09:55 +01:00
Michael Hackstein
089816a353
Moved Rollback Operation and InsertIntoIndexes from Logical to MMFilesCollection. This is marker/index specific code.
2017-02-15 10:09:51 +01:00
jsteemann
328ff8a09e
Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api
2017-02-15 00:09:42 +01:00
Jan Christoph Uhde
ce3b1ff9b5
Merge branch 'obi-storage' into devel
...
* obi-storage:
move compation locking / figures out of logical collection
Conflicts:
arangod/MMFiles/MMFilesCollection.h
arangod/VocBase/LogicalCollection.h
2017-02-14 16:14:25 +01:00
Michael Hackstein
50368b9985
Moved CollectionRead/WriteLocker to MMFiles. Also moved cleanupIndexes to MMFilesCollection
2017-02-14 15:12:36 +01:00
Michael Hackstein
d5e14a95f4
Moved truncate logic from Transaction::Methods to MMFilesCollection. It can do optimizations if close to the DB layer
2017-02-14 13:50:29 +01:00
Michael Hackstein
c6830fb999
Moved more internal logic from Logical to Physical collection
2017-02-14 12:38:09 +01:00
Jan Christoph Uhde
071d147c5f
move compation locking / figures out of logical collection
2017-02-14 12:34:46 +01:00
Michael Hackstein
6605a01410
Moved lookupDocument form LogicalCollection into MMFilesCollection. It is SE specific.
2017-02-14 11:37:45 +01:00
Michael Hackstein
32bd15d098
Renamed collection->update() to update the properties of a collection to collection->updateProperties(). There is another update() which is used for the stored Documents.
2017-02-14 10:32:24 +01:00
Michael Hackstein
c8757efc8e
Moved engine specific logic of Document Remove from Logical To Physical Collection
2017-02-14 10:20:32 +01:00
Michael Hackstein
2824c349bb
Moved EngineSpecific logic of update() from LogicalCollection to MMFilesCollection.
2017-02-13 17:45:33 +01:00
Michael Hackstein
c42b358987
Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api
2017-02-13 16:27:41 +01:00
Michael Hackstein
91a0d30122
Moved the engine specific parts of remove from LogicalCollection to Physical Collection.
2017-02-13 16:17:26 +01:00
jsteemann
383b534f5d
fix compile errors
2017-02-13 15:42:02 +01:00
jsteemann
1ce4d4a97e
Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api
2017-02-13 15:29:59 +01:00
jsteemann
92f61416ca
Merge branch 'engine-api' of https://github.com/arangodb/arangodb into engine-api
2017-02-13 15:25:17 +01:00
Jan Christoph Uhde
82f91cfa1b
prepare move of compaction to physicalcollection
2017-02-13 15:22:38 +01:00
jsteemann
7e690a0c61
renaming
2017-02-13 15:18:40 +01:00
Michael Hackstein
e0bdc5c122
Merge branch 'engine-api' of github.com:arangodb/arangodb into engine-api
2017-02-13 14:58:54 +01:00
Michael Hackstein
0c30c290c6
Moved parts of LogicalCollection->insert() into the PhysicalCollectioN
2017-02-13 14:38:22 +01:00
jsteemann
eb73dbf960
renaming
2017-02-13 13:30:57 +01:00
Jan Christoph Uhde
163b3d45bf
remove fullyCollected and friends from LogicalCollection
2017-02-13 11:47:22 +01:00
Simon Grätzer
13f19fe51b
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
...
# Conflicts:
# arangod/CMakeLists.txt
# arangod/RestServer/arangod.cpp
# arangod/Utils/ExplicitTransaction.h
# arangod/V8Server/v8-collection.cpp
2017-02-02 11:25:23 +01:00
jsteemann
6598828449
Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api
2017-01-31 00:33:42 +01:00
Simon Grätzer
40b3d1511c
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2017-01-30 20:39:36 +01:00
Dan Larkin
5b736dc319
Changed index-filling to dispatch batch insertion tasks to scheduler, obsoleted index-threads option.
2017-01-30 13:05:10 -05:00
jsteemann
d96ce9af37
Merge branch 'devel' of https://github.com/arangodb/arangodb into engine-api
2017-01-30 12:53:10 +01:00
Simon Grätzer
37243315e9
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2017-01-28 15:30:28 +01:00
jsteemann
20a2fd308b
speed up remove a bit
2017-01-26 12:49:34 +01:00
Michael Hackstein
f61a27d0e6
Merge branch 'devel' of github.com:arangodb/arangodb into devel
2017-01-26 09:50:00 +01:00
Michael Hackstein
00448bfc26
Transaction::invokeOnAllElements now works with a callback taken DocumentIdentifierTokens instead of IndexElements.
2017-01-25 15:03:08 +01:00
Michael Hackstein
ce6d3b3492
The Fulltext index now return DocumentIdentifierTokens instead of revisions. Removed one inderection rid <-> Index_doc which were a typedef.
2017-01-25 13:20:15 +01:00
Michael Hackstein
2133b1448c
Moved index API to return DocumentIdentifierTokens which are independent of the underlying storage engine. The agreement is, that the Engine gives a uint64_t sized identifier which allows to fetch any document back again. For MMFiles Engine this identifier is the revision.
2017-01-24 18:19:25 +01:00
jsteemann
e3bcb90916
remove revisions cache
2017-01-24 10:48:07 +01:00
jsteemann
c4d2ff3dce
renaming
2017-01-23 15:36:11 +01:00
Simon Grätzer
dd14b7b2dd
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2017-01-20 15:56:11 +01:00
Simon Grätzer
d71ebf7c1d
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2017-01-20 14:42:19 +01:00
Kaveh Vahedipour
648160c68a
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2017-01-20 09:35:45 +01:00
Kaveh Vahedipour
40c6e2b48c
unobserve should not create entries in agency, if empty before
2017-01-20 08:06:27 +01:00
jsteemann
1b1dacd873
fixed issues with same revisions being inserted
2017-01-19 17:14:38 +01:00
Simon Grätzer
1d66c418b6
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
...
# Conflicts:
# arangod/CMakeLists.txt
2017-01-16 17:56:44 +01:00
jsteemann
cdabaa931f
renaming
2017-01-16 14:48:13 +01:00
Michael Hackstein
4f67c8352c
Renewed restore-collection in RestReplicationHandler. It now uses new API to create Collections, doing all sanity-checks etc.
2017-01-16 13:36:46 +01:00
Michael Hackstein
1d33197a4f
Updated the clusterInventory endpoint to use LogicalCollection instead of reading the Agency.
2017-01-12 13:39:46 +01:00
Simon Grätzer
20d32d05b2
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
...
# Conflicts:
# arangod/VocBase/LogicalCollection.cpp
2017-01-09 13:34:37 +01:00
jsteemann
3c9d71fdcf
performance fix for locks
2017-01-02 15:36:43 +01:00
Simon Grätzer
730ea4755e
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
...
# Conflicts:
# scripts/startLocalCluster.sh
2016-12-09 14:30:19 +01:00
Andreas Streichardt
11bd9381d5
Add satellite collections
2016-12-06 16:40:50 +01:00
Simon Grätzer
bc4c441f30
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2016-11-25 17:03:26 +01:00
Andreas Streichardt
aff77dea41
Fix replicationFactor: -1 almost endless loop
2016-11-25 13:38:52 +01:00
Simon Grätzer
6258f79fa2
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2016-11-09 16:51:13 +01:00
jsteemann
da2aa24703
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2016-11-09 14:46:56 +01:00
jsteemann
ab4933c994
performance optimizations
2016-11-09 14:46:50 +01:00
Simon Grätzer
bcf545c856
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2016-11-08 11:38:49 +01:00
Jan Steemann
5324a6bbe8
fix _rev handling when creating collections
2016-11-08 10:29:53 +01:00
jsteemann
5f65a9ed4f
allow more control over handling of pre-3.1 _rev values
...
this changes the server startup option `--database.check-30-revisions` from a boolean (true/false)
parameter to a string parameter with the following possible values:
- "fail":
will validate _rev values of 3.0 collections on collection loading and throw an exception when invalid _rev values are found.
in this case collections with invalid _rev values are marked as corrupted and cannot be used in the ArangoDB 3.1 instance.
the fix procedure for such collections is to export the collections from 3.0 database with arangodump and restore them in 3.1 with arangorestore.
collections that do not contain invalid _rev values are marked as ok and will not be re-checked on following loads.
collections that contain invalid _rev values will be re-checked on following loads.
- "true":
will validate _rev values of 3.0 collections on collection loading and print a warning when invalid _rev values are found.
in this case collections with invalid _rev values can be used in the ArangoDB 3.1 instance.
however, subsequent operations on documents with invalid _rev values may silently fail or fail with explicit errors.
the fix procedure for such collections is to export the collections from 3.0 database with arangodump and restore them in 3.1 with arangorestore.
collections that do not contain invalid _rev values are marked as ok and will not be re-checked on following loads.
collections that contain invalid _rev values will be re-checked on following loads.
- "false":
will not validate _rev values on collection loading and not print warnings.
no hint is given when invalid _rev values are found.
subsequent operations on documents with invalid _rev values may silently fail or fail with explicit errors.
this setting does not affect whether collections are re-checked later.
collections will be re-checked on following loads if `--database.check-30-revisions` is later set to either `true` or `fail`.
The change also suppresses warnings that were printed when collections were restored using arangorestore, and the restore
data contained invalid _rev values. Now these warnings are suppressed, and new HLC _rev values are generated for these documents
as before.
2016-11-04 23:17:01 +01:00
Simon Grätzer
1c0253e5dc
Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
2016-11-03 00:12:56 +01:00
jsteemann
cfc9ecd198
fix Visual Studio complaints
2016-10-31 09:59:18 +01:00
jsteemann
b31ef5356c
fix compile warnings because of mismatched class/struct usages
2016-10-24 10:51:03 +02:00