1
0
Fork 0
arangodb/arangod/RestServer
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
..
BootstrapFeature.cpp cause of occasional aardvard not starting up still unclear 2016-10-26 09:29:49 +00:00
BootstrapFeature.h trying to fix cleanup 2016-06-06 23:53:53 +02:00
CheckVersionFeature.cpp fix --database.check-version on an empty directory 2016-11-02 16:55:27 +01:00
CheckVersionFeature.h WIP 2016-04-12 20:27:46 +02:00
ConsoleFeature.cpp Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache 2016-07-25 11:14:44 +02:00
ConsoleFeature.h trying to fix cleanup 2016-06-06 23:53:53 +02:00
ConsoleThread.cpp added a panic interrupt of memory gets low 2016-07-31 12:58:27 +02:00
ConsoleThread.h added --console 2016-04-10 13:47:53 +02:00
DatabaseFeature.cpp allow more control over handling of pre-3.1 _rev values 2016-11-04 23:17:01 +01:00
DatabaseFeature.h allow more control over handling of pre-3.1 _rev values 2016-11-04 23:17:01 +01:00
DatabasePathFeature.cpp added different path for different editions 2016-09-30 15:24:31 +02:00
DatabasePathFeature.h refactoring 2016-07-18 17:48:24 +02:00
EndpointFeature.cpp rename vpp to vst in server options and endpoint 2016-10-27 21:45:38 +02:00
EndpointFeature.h preparations for velocystream completed 2016-07-21 09:32:00 +02:00
FileDescriptorsFeature.cpp switch to boost asio 2016-10-14 10:12:17 +00:00
FileDescriptorsFeature.h WIP 2016-04-12 20:27:46 +02:00
FrontendFeature.cpp cleaned up features a bit 2016-04-24 14:29:29 +02:00
FrontendFeature.h WIP 2016-04-13 12:30:18 +02:00
InitDatabaseFeature.cpp refactoring 2016-07-18 17:48:24 +02:00
InitDatabaseFeature.h secure-installation will remove all users except root 2016-06-12 12:19:37 +02:00
LockfileFeature.cpp refactoring 2016-07-18 17:48:24 +02:00
LockfileFeature.h moved server id detection and pagesize detection into their own features 2016-07-18 14:37:12 +02:00
QueryRegistryFeature.cpp Squashed commit of the following: 2016-10-24 10:18:30 +02:00
QueryRegistryFeature.h oops, forgot to add these files too 2016-06-09 11:09:54 +02:00
RevisionCacheFeature.cpp fix Visual Studio complaints 2016-10-31 09:59:18 +01:00
RevisionCacheFeature.h Squashed commit of the following: 2016-10-24 10:18:30 +02:00
ScriptFeature.cpp Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache 2016-07-25 11:14:44 +02:00
ScriptFeature.h script and unittests are features 2016-04-27 22:28:21 +02:00
ServerFeature.cpp rename vpp to vst in server options and endpoint 2016-10-27 21:45:38 +02:00
ServerFeature.h switch to boost asio 2016-10-14 10:12:17 +00:00
ServerIdFeature.cpp fix --database.check-version on an empty directory 2016-11-02 16:55:27 +01:00
ServerIdFeature.h moved server id detection and pagesize detection into their own features 2016-07-18 14:37:12 +02:00
TraverserEngineRegistryFeature.cpp Fixed ordering of Query and TraverserEngine Features. They both have to be started after LogfileManager. 2016-09-13 14:20:23 +02:00
TraverserEngineRegistryFeature.h Merge branch 'MIT' of github.com:arangodb/arangodb into generic-col-types 2016-09-06 09:33:23 +02:00
UnitTestsFeature.cpp Merge branch 'devel' of https://github.com/arangodb/arangodb into readcache 2016-07-25 11:14:44 +02:00
UnitTestsFeature.h script and unittests are features 2016-04-27 22:28:21 +02:00
UpgradeFeature.cpp refactoring 2016-07-26 16:25:38 +02:00
UpgradeFeature.h added restore-admin 2016-06-09 15:28:27 +02:00
VocbaseContext.cpp No more demeter chains...canUseDatabase implemented on 2016-10-26 14:05:02 +02:00
VocbaseContext.h Implement cluster authentication 2016-10-17 13:35:55 +02:00
WorkMonitorFeature.cpp fixed ownership of handler 2016-08-18 23:06:36 +02:00
WorkMonitorFeature.h fixed ownership of handler 2016-08-18 23:06:36 +02:00
arangod.cpp fixed supervisor startup 2016-11-02 19:37:49 +00:00