1
0
Fork 0
Commit Graph

66 Commits

Author SHA1 Message Date
Jan 4c6337611b
properly unlock after restore-indexes (#4369) 2018-01-25 15:56:13 +01:00
Michael Hackstein ffbc7058cd
Bug fix 3.3/rocksdb truncate (#4338) 2018-01-16 19:52:27 +01:00
Jan f83a1a0394
Feature 3.3/add recovery tests for intermediate commits (#4106)
* added several recovery tests that check intermediate commits

* small fixes

* fix tests
2017-12-20 09:46:12 +01:00
Jan b4f6ee9273 Feature/improved index api for unique constraints and replication (#3715) 2017-11-16 21:02:01 +01:00
jsteemann 571d4587ca Revert "Return offending key for unique constraint violations (#3624)"
This reverts commit 68bd31ac99.
2017-11-10 16:40:56 +01:00
Dan Larkin 68bd31ac99 Return offending key for unique constraint violations (#3624) 2017-11-10 16:03:10 +01:00
Jan 7613bc4314 Bug fix/fixes 0211 (#3568)
* remove some non-unused V8 persistents

* do not throw that many bogus assertions

* do not rely on server role being defined

* slightly better debug output for V8 context debugging

* fix collection ids in inventory response

* simplify bootstrap a bit

* slightly better error handling

* make elapsed time a queryable value

* use less memory for stub collections

* added assertions that will always make sense

* added assertions

* do not garbage-collect while waiting

* less copying of parameters

* do not show "load indexes into memory" buttons for mmfiles engine

  as all indexes are in memory anyway

* when a collection is truncated via the web interface, flush the WAL and rotate all active journals

this will make close all open journals on leader and followers and make them subject to compaction opportunities

* fix invalid server id values being passed from web interface to backend

* introduce afterTruncate method for indexes

* added test case for issue #3447

* updated CHANGELOG

* don't warn about replicationFactor for system collections

* check that the queries actually use the geo index and not some other index

* properly report error in web interface

* fix some internals checks that made truncate fail for bigger collections in maintainer mode

* also run a compact() operation after a serious truncate

in order to make iteration over the truncated range much faster
when the collection is next accessed

* increase default maximum number of V8 contexts to at least 16
2017-11-09 12:48:15 +01:00
Jan 0561bf45ce Bug fix/isrestore (#3283)
* Make isRestore work in the cluster.

This covers sharded collections with default sharding and non-default
sharding.

* always use locally generate revision ids for storing and looking up documents
2017-10-03 11:53:49 +02:00
Michael Hackstein da4d7966a8 Bug fix/truncate geo (#3173)
* Add geo truncate test

* added a specific truncate method to rocksdb geo index

* Fixing truncate on rocksdb geo-indexes with support for rollbacks
2017-09-04 17:48:04 +02:00
Simon Grätzer 88d01b89b5 Optimizations for Caches and Graph Traversals (#3169) 2017-08-31 18:33:10 +02:00
Jan a212f45a86 Bug fix/issues 2308 (#3117)
* remove API docs for endpoints that were deleted in 3.0

* remove unused variable

* set all scalar values in the ctor, so check tools do not complain

* move Result objects

* prevent potential nullptr access

* remove ambiguous boolean parameter with no clear meaning

* make code check tools happy

* don't allow copying cache Findings, allow moving Results

* the debug functionality for counting RocksDB key ranges was broken

this produced sporadic test failures

* remove superfluous iostream include

* fix range checks

* don't leak if an error happens during database removal

* try to simplify Result a bit

* try to deletion checks a bit more robust
2017-08-24 14:47:22 +02:00
Jan 8e4dac4fc4 fix fulltext index removal performance, simplified code (#3015)
* simplify index API a bit

* fix fulltext index removal performance, simplified code

* updated CHANGELOG

* fix hanging test

* try to fix shutdown problem

* improve fulltext query performance

* fixed duplicate var

* removed obsolete code

* fix some shutdown races

* do not call ensureIndex that often
2017-08-12 09:25:30 +02:00
Simon Grätzer 4cc8686e82 RocksDB: Optimizing dropCollection / dropIndex / fillIndex (#2927)
* cleaning up several duplicate versions of Index::memory, Index::cleanup, Index::drop, integrating branch issue-383-ensure-delete

* fixing wrong column family
2017-08-05 21:09:41 +02:00
Simon Grätzer d8c57f2cc8 Feature/rocksdb hashsearch (#2713)
* Testing hash for documents

* fixing logspam error

* added base support for kHash in the edge index

* Current version of hash enabled edge index

* removed rocksdb key type byte, dynamic prefixes for hash-index

* Fixing issues with key classes

* Fixing merge conflict

* Fixing version with semi-working hash index

* fixing various issues

* Fixing hanger in EdgeIndexIterator nextExta, when _cache is disabled. Reenable cache

* Fixing geo index bounds, and fillIndexes error handling

* Adding back failure point

* Fixing RocksDBKey::vertexId

* Added version check on startup

* Fixing version check

* added one more check

* properly detect column families at startup

* Adding additional sanity checking

* Adding missing column family

* some fixes

* Turned off geoindex sync

* fixed error

* added asserts (untested)

* Adding more asserts
2017-07-05 10:18:52 +02:00
Jan 61a80ed697 fix typo (#2718) 2017-07-03 18:40:59 +02:00
Jan 6db52fe25f fix compile warnings once again (#2673) 2017-06-26 20:23:15 +02:00
Dan Larkin a3ae2b7191 Augmented cache API and fixed a potential deadlock scenario. (#2579)
* Augmented cache API and fixed a potential deadlock scenario.

* The RocksDBEdgeIndex now tries to read up to 10 times form the cache on lock_timeout. Instead of rewriting everything after first attempt
2017-06-19 17:28:04 +02:00
Simon Grätzer 634254b80f adding load and unload 2017-06-02 14:44:38 +02:00
Simon Grätzer 6c905c8d26 Missed some markers 2017-05-23 11:37:17 +02:00
Simon Grätzer 88977d204a Merge branch 'devel' of https://github.com/arangodb/arangodb into column-family
# Conflicts:
#	arangod/RocksDBEngine/RocksDBIndex.cpp
#	arangod/RocksDBEngine/RocksDBIndex.h
#	arangod/RocksDBEngine/RocksDBPrimaryIndex.cpp
#	arangod/RocksDBEngine/RocksDBPrimaryIndex.h
2017-05-23 11:17:30 +02:00
Simon Grätzer ddfa15b8cc Adding bound checking back 2017-05-22 19:09:32 +02:00
Simon Grätzer 9679aecf53 Adding bounds back 2017-05-22 17:39:19 +02:00
Simon Grätzer a99611e7c0 Various changes 2017-05-19 16:43:00 +02:00
Simon Grätzer 2bd2a15cb3 Column family support 2017-05-18 22:08:34 +02:00
jsteemann 226920d7fa optimizations 2017-05-17 23:41:16 +02:00
Jan Christoph Uhde 415cbfea60 fix figures and add tests 2017-05-17 12:22:43 +02:00
Simon Grätzer e25f88ef4d Merge branch 'devel' of https://github.com/arangodb/arangodb into devel
# Conflicts:
#	arangod/RocksDBEngine/RocksDBCuckooIndexEstimator.h
#	arangod/RocksDBEngine/RocksDBEdgeIndex.cpp
#	arangod/RocksDBEngine/RocksDBIndex.cpp
2017-05-16 16:59:50 +02:00
jsteemann a75271e1f9 optimizations for key bounds 2017-05-16 12:53:44 +02:00
Simon Grätzer df3eed2289 Various changes 2017-05-16 10:58:15 +02:00
Michael Hackstein d7d650e27d Implemented index estimates for RocksDB. Now the following indexes have
a proper estimate:
* HashIndex
* SkiplistIndex / Persistent
* EdgeIndex
2017-05-15 17:17:58 +02:00
Jan Christoph Uhde d6c06e3672 exose cache hit rate for rocksdb caches 2017-05-12 15:59:26 +02:00
Dan Larkin 787335929c Merge branch 'devel' of github.com:arangodb/arangodb into devel 2017-05-11 14:39:06 -04:00
Dan Larkin 1fc3480a6b Added document cache. 2017-05-11 14:39:00 -04:00
Simon Grätzer 310166d3cf Fixing locking error 2017-05-11 15:55:06 +02:00
Dan Larkin 52711a2b00 Added proper truncation support for RocksDB indexes. 2017-05-10 19:57:22 -04:00
Jan Christoph Uhde e2b78d71b6 Merge branch 'devel' of https://github.com/arangodb/arangodb into feature/edge-index-cache
* 'devel' of https://github.com/arangodb/arangodb:
  Fix abort conditions of FailedLeader
  removing unused and unimplemented methods
  cppcheck
  getting rid of exceptions in supervision
  change to sleep_until so older windows are pleased (and is a better fitting method anyway)
  "searching for culprit breaking ensureIndex in cluster through go driver"
  Fixing fulltext deduplication
2017-05-10 19:00:19 +02:00
Jan Christoph Uhde ce515abbd9 report size of cache for rocksdb indexes 2017-05-10 18:44:01 +02:00
Jan Christoph Uhde 3e25aec2f3 fix enabling of caches 2017-05-10 15:58:28 +02:00
Jan Christoph Uhde e5db579b25 Merge branch 'devel' of https://github.com/arangodb/arangodb into feature/edge-index-cache
* 'devel' of https://github.com/arangodb/arangodb: (54 commits)
  attempt to fix races in replication
  grunt build
  use exclusive transaction in syncer
  change feature order around
  dashboard
  added api cluster api routes
  add selection of storage engine
  use some parallelism
  micro optimizations
  Fix truncate for geo
  added assertions
  remove unused include
  try to fix initial sync problem
  remove unnecessary includes
  Finally fix the error where suddenly an array of dbservers are being called
  Update queryView.js
  initialize bool variable
  remove debug output
  removed unused private field
  Wrong index number
  ...
2017-05-10 15:14:08 +02:00
jsteemann 12093e809f added assertions 2017-05-10 12:58:28 +02:00
Jan Christoph Uhde e6d41cac9a clean up edge-index code - handling of invalidated caches still missing 2017-05-10 09:03:21 +02:00
Jan Christoph Uhde 738989f9a3 add blacklisting for keys in rocksdb-edge-index on insert/remove 2017-05-09 18:33:05 +02:00
Simon Grätzer 1c82d4448c Adding compaction and estimateSize method for rocksdb 2017-05-04 13:08:02 +02:00
Michael Hackstein 33d9e8af9d Added an Assert when persisting an index it's objectId is not allowed to be 0 2017-05-02 13:17:57 +02:00
Dan Larkin 5e0a60406a Fixed recovery bug. 2017-04-28 14:02:49 -04:00
jsteemann fe1268af97 added missing return 2017-04-24 23:30:57 +02:00
jsteemann fcc61115d8 try to fix feature startup order (Scheduler vs. CacheManager vs. DatabaseFeature) 2017-04-24 13:17:21 +02:00
Dan Larkin 841ef8b1a0 Changed index VPack building to include forPersistence flag. 2017-04-17 17:04:50 -04:00
Dan Larkin 2e0fdbf666 Fixed some bugs. 2017-04-13 20:06:25 -04:00
jsteemann 0e98a32455 fix objectId handling 2017-04-06 11:19:27 +02:00