1
0
Fork 0
Commit Graph

194 Commits

Author SHA1 Message Date
Frank Celler f810711a79 FreeBSD port 2013-04-02 18:43:10 +02:00
Jan Steemann 666eae6b41 allow writing too big markers into collections if maximalJournalSize is bigger than current datafile's size 2013-03-28 14:41:40 +01:00
Jan Steemann 6b3b181930 pass transaction collection into CRUD operations 2013-03-28 13:26:49 +01:00
Jan Steemann c473e42f77 fixed memleak 2013-03-22 18:38:17 +01:00
Jan Steemann 517c6f98dc document counting 2013-03-22 15:45:36 +01:00
Jan Steemann 564f35141e refactored writing of markers 2013-03-22 14:50:32 +01:00
Jan Steemann 28e0f8bd09 notify collections about transaction status changes 2013-03-22 13:34:02 +01:00
Jan Steemann ccc7c3665b locking 2013-03-22 11:31:36 +01:00
Jan Steemann 228f273bc0 added isRollback hints to index insert/remove functions 2013-03-22 11:18:44 +01:00
Jan Steemann 69db58a154 index cleanup 2013-03-22 10:38:47 +01:00
Jan Steemann a9ab2695d6 changed error message 2013-03-22 09:00:29 +01:00
Jan Steemann b40ade45ce simplified code 2013-03-21 10:09:52 +01:00
Jan Steemann a0bf485e11 fixed usage of invalid pointer 2013-03-19 11:31:42 +01:00
Jan Steemann 61cb229ca8 simplified writing of markers into datafiles 2013-03-18 20:04:31 +01:00
Jan Steemann e8a6c9ee6e cleaned up doc operation context 2013-03-18 17:34:17 +01:00
Jan Steemann 6f2bf0b139 removed unused property 2013-03-18 16:41:48 +01:00
Jan Steemann 99522ccb84 switch order of insertion into indexes & datafile for updates
updates are now done in the indexes first, then written to the datafile
2013-03-18 13:03:05 +01:00
Jan Steemann 0ef011d408 changed function signature 2013-03-18 09:17:49 +01:00
Jan Steemann d1cde4457a wrapped some assertions into TRI_ASSERT_DEBUG 2013-03-15 19:00:59 +01:00
Jan Steemann b5895daabe fixed some printf format specifiers 2013-03-15 18:42:30 +01:00
Jan Steemann b6f680cd46 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel
Conflicts:
	arangod/VocBase/document-collection.c
2013-03-15 18:16:36 +01:00
Jan Steemann ab83c3ea29 some cleanup 2013-03-15 18:07:22 +01:00
Jan Steemann 312b5fda64 some refactoring of document CRUD operations 2013-03-15 17:58:56 +01:00
Frank Celler 7908f2b26d cleanup of indexes, fix for compaction (hash, cap, geo, skiplist, pq, bit-array)
Conflicts:
	arangod/Ahuacatl/ahuacatl-tokens.c
	arangod/BitIndexes/bitarray.c
	arangod/BitIndexes/bitarray.h
	arangod/BitIndexes/bitarrayIndex.c
	arangod/BitIndexes/bitarrayIndex.h
	arangod/BitIndexes/masterblocktable.h
	arangod/GeoIndex/geo-index.c
	arangod/HashIndex/hash-index.c
	arangod/PriorityQueue/pqueueindex.c
	arangod/PriorityQueue/pqueueindex.h
	arangod/PriorityQueue/priorityqueue.c
	arangod/PriorityQueue/priorityqueue.h
	arangod/SkipLists/compare.h
	arangod/SkipLists/skiplist.c
	arangod/SkipLists/skiplist.h
	arangod/SkipLists/skiplistIndex.c
	arangod/SkipLists/skiplistIndex.h
	arangod/V8Server/v8-query.cpp
	arangod/VocBase/compactor.c
	arangod/VocBase/document-collection.c
	arangod/VocBase/index.c
	arangod/VocBase/index.h
	arangod/VocBase/synchroniser.c
	arangod/VocBase/voc-shaper.c
	arangod/VocBase/vocbase.c
	lib/BasicsC/hashes.h
	lib/BasicsC/memory.c
	lib/ShapedJson/json-shaper.h
	lib/ShapedJson/shaped-json.h
	utils/cleanupCFiles
2013-03-15 15:45:39 +01:00
Frank Celler 714eaa9f5f removed unused variable 2013-03-14 17:08:18 +01:00
Jan Steemann c8c0db8657 downgrade error message 2013-03-14 16:41:51 +01:00
Jan Steemann 61af5f27da added startup option `--database.force-sync-properties` 2013-03-14 13:48:58 +01:00
Frank Celler 891cac01b2 Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel
Conflicts:
	arangod/VocBase/collection.c
2013-03-13 17:05:59 +01:00
Frank Celler 1aa5109fa3 updated disclaimer 2013-03-13 17:03:18 +01:00
Jan Steemann 836963ae00 less compaction 2013-03-12 18:17:27 +01:00
Frank Celler c501d2e0b4 fixed rollback 2013-03-12 14:26:16 +01:00
Jan Steemann 80f01892b7 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2013-03-12 12:56:03 +01:00
Jan Steemann 71b2587d96 added assertions for debugging 2013-03-12 12:55:52 +01:00
Frank Celler 1803f409b2 fixed skip list index
Conflicts:
	arangod/SkipLists/skiplistIndex.c
2013-03-12 11:13:22 +01:00
Jan Steemann 9b688907f0 handle out of memory properly when open-iterating a collection 2013-03-12 10:26:35 +01:00
Frank Celler 8787bb7f00 replaced index update by remove/insert
Conflicts:
	arangod/HashIndex/hash-index.c
	arangod/VocBase/index.c
2013-03-11 14:23:23 +01:00
Jan Steemann 206681159f fixed memory zone mismatches 2013-03-11 11:10:08 +01:00
Frank Celler c915bfa5ff cleanup of indexes, fix for compaction (hash, cap, geo)
Conflicts:
	arangod/VocBase/compactor.c
	arangod/VocBase/document-collection.c
	arangod/VocBase/synchroniser.c
	arangod/VocBase/vocbase.c
2013-03-11 09:49:58 +01:00
Jan Steemann 8a6bac82ad removed headers->verify() because it was a non-op 2013-03-08 13:36:48 +01:00
Jan Steemann 5631314bc7 issue #212: added auto-increment support for collections
the feature can be used by creating a collection with the extra `keyOptions`
attribute as follows:

    db._create("mycollection", { keyOptions: { type: "autoincrement", offset: 1, increment: 10, allowUserKeys: true } });

The `type` attribute will make sure the keys will be auto-generated if no `_key` attribute is specified for a document.
The `allowUserKeys` attribute determines whether users might still supply own `_key` values with documents or if this
is considered an error.
The `increment` value determines the actual increment value, whereas the `offset` value can be used to seed to value
sequence with a specific starting value. This will be useful later in a multi-master setup, when multiple servers can use
different auto-increment seed values and thus generate non-conflicting auto-increment values.

The default values currently are:

- `allowUserKeys`: `true`
- `offset`: `0`
- `increment`: `1`

The only other available key generator type currently is `traditional`. The `traditional` key generator
will auto-generate keys in a fashion as ArangoDB always did (some increasing integer value, with a more or less unpredictable
increment value).

Note that for the `traditional` key generator there is no the option to disallow user-supplied keys and give the
server the sole responsibility for key generation.
2013-03-08 11:54:03 +01:00
Jan Steemann b307e4cd6d completed auto-increment key generator 2013-03-08 10:51:50 +01:00
Jan Steemann 0879cf8d15 added auto-increment key generator (not yet ready) 2013-03-07 18:17:35 +01:00
Jan Steemann fbceb95f97 fixes 2013-03-06 17:38:31 +01:00
Jan Steemann 2a6180b5fe fixes 2013-03-06 17:10:52 +01:00
Jan Steemann 5098792b4f fixed invalid pointers when compacting deletion markers
fixed invalid pointers for updates
2013-03-06 14:02:32 +01:00
Jan Steemann 2734060026 when compacting old markers, also adjust _key 2013-03-04 12:05:14 +01:00
Jan Steemann f613c3c4d9 fixed race conditions when reading/deleting documents 2013-03-01 16:44:40 +01:00
Jan Steemann bacdbed093 more throughput with parallel deletes/inserts 2013-03-01 10:35:39 +01:00
Jan Steemann 216f04927b potential fix for issue #411 2013-02-18 10:35:32 +01:00
Frank Celler ced7b05cca added fix for TRI_ENABLE_LOGGING from Jan 2013-02-16 14:03:35 +01:00
Jan Steemann d321f32523 moved some const value out of loop 2013-02-15 11:35:48 +01:00
Jan Steemann 0a00760907 performance patch, improving parallelity for concurrent document creation 2013-02-14 17:18:28 +01:00
Jan Steemann 5c922cca02 fixed compile warnings with conditional compilation 2013-02-13 18:00:35 +01:00
Jan Steemann f17629817a make getindexes and count nestable 2013-02-05 11:36:16 +01:00
Jan Steemann 0a2fe0e9a0 fix reload of duplicate key markers 2013-01-29 15:46:45 +01:00
Jan Steemann ba44906c24 fixed insertion into primary index when there were deleted documents 2013-01-21 12:05:03 +01:00
Jan Steemann 9a003247d0 removed the _bidirectional attribute for edges
This will be reimplemented later on collection, and not on individual edges level.
Lucas & the others were sure directed & undirected edges should not be mixed in the same collection
2013-01-18 17:02:30 +01:00
Jan Steemann 50a01424d6 fixed duplicate key insertion 2013-01-18 12:15:48 +01:00
Jan Steemann e509f92c5e added test cases for duplicate _key insertion 2013-01-18 11:11:22 +01:00
Jan Steemann bbade8c0b8 removed the non-working indexSubstrings property for fulltext indexing 2013-01-17 15:58:28 +01:00
Jan Steemann 945a437807 move creation of parameters file until after all datafiles have been created
this mitigates problems when datafile creation fails and there are dangling parameter.json files around
2013-01-16 16:40:10 +01:00
Jan Steemann 08a696a1a7 removed useless parameter 2013-01-12 01:26:52 +01:00
Jan Steemann 485d10ad51 added collection.revision() method 2013-01-10 02:02:32 +01:00
Jan Steemann b310b832fd comments 2013-01-07 13:01:26 +01:00
Jan Steemann 0471ee8a0d memory collections, intermediate commit 2013-01-04 15:50:29 +01:00
Jan Steemann 8128a6377d memory-collections, intermediate commit 2013-01-04 12:12:46 +01:00
Frank Celler 503e0ff8fe fixed merge conflicts 2013-01-02 18:07:57 +01:00
Oreste Panaia 83ded3fc1f windows fixes 2012-12-20 17:17:30 +08:00
Jan Steemann b8ca0b2d4d fulltext index massive rewrite 2012-12-15 01:01:25 +01:00
Jan Steemann 459b1ba886 fixed wrong return value in index creation functions 2012-12-11 18:58:05 +01:00
Jan Steemann cbaa57a1bd cleanup of fulltext indexes, resizing etc. 2012-12-07 18:00:01 +01:00
Jan Steemann 38809d4612 added callbacks for index cleanup 2012-12-06 15:46:11 +01:00
Oreste Panaia 857b66c490 windows version 2012-12-06 20:44:01 +08:00
Jan Steemann 1811ce9186 fixed some issues found by cppcheck 2012-12-04 18:21:29 +01:00
Jan Steemann 1130df4330 utf8 lower-casing and normalisation for fulltext strings 2012-12-03 17:14:54 +01:00
Jan Steemann d2aef2dcdc add words to fulltext index
this parses the fulltext-indexed attributes of documents when there's a fulltext index, and adds the individual words to the index.
As the fulltext index is case-sensitive, all words are added to the index in lower case.
The text tokenisation implementation is still very naive and currently works properly only for character ranges [a-z] and [A-Z].
Unicode words are also supported, but they are not normalised nor lower-cased yet. Additionally, unicode punctuation characters are not excluded and will also be added to the index.
Updating documents that are fulltext-indexed currently does not work.
2012-12-02 00:55:59 +01:00
Jan Steemann f517aa0059 ensureFulltextIndex 2012-11-30 17:53:02 +01:00
Jan Steemann d8a06fe136 removed unused flags from doc_operation_context 2012-11-29 13:44:36 +01:00
Jan Steemann 42df64d7c0 added tests for key pattern 2012-11-29 12:37:30 +01:00
Jan Steemann eac11fb793 issue #293 2012-11-24 03:16:23 +01:00
Jan Steemann 8ac81dbc85 shut up the compiler 2012-11-23 20:37:03 +01:00
Jan Steemann f812408a7e documentation for collection names / keys 2012-11-23 19:41:14 +01:00
Jan Steemann aaf34f44f4 fixed lots of compile warnings 2012-11-22 21:20:22 +01:00
a-brandt 407ac48821 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2012-11-15 11:25:22 +01:00
a-brandt 71d3d54de1 collection info struct changed 2012-11-15 11:24:35 +01:00
Jan Steemann 9e40045025 changed document CRUD API signatures 2012-11-14 17:11:16 +01:00
Jan Steemann 30ba8771a7 pluggable key generators 2012-11-14 12:44:56 +01:00
Jan Steemann 419456c1a8 some refactoring 2012-11-09 15:06:28 +01:00
Jan Steemann b9019329c8 fail gracefully on invalid marker types 2012-11-09 11:05:06 +01:00
Jan Steemann 65db6eee8b some simplification 2012-11-09 11:03:42 +01:00
Jan Steemann 7dfab2d6dc introduced validFrom, still does nothing 2012-11-09 10:42:06 +01:00
Jan Steemann 149c6c1fc1 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2012-11-08 17:47:53 +01:00
Jan Steemann 64c6bc5cb0 renamed marker member _deletion to _validTo, some cleanup 2012-11-08 17:47:18 +01:00
Jan Steemann 5b4f8431b4 removed unused _eid from master pointer 2012-11-08 16:36:08 +01:00
a-brandt 8532aecd73 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2012-11-08 16:24:43 +01:00
a-brandt cc919edc69 bug fix negative _key 2012-11-08 16:23:09 +01:00
Jan Steemann 30e29ee0b1 removed unnecessary function parameters 2012-11-08 16:14:34 +01:00
Jan Steemann 4276215251 some cleanup 2012-10-31 18:20:22 +01:00
Jan Steemann d9f34fd88e refactored and simplified document CRUD methods 2012-10-31 18:04:12 +01:00
Jan Steemann 6e22aef697 parameter reduction 2012-10-31 15:06:58 +01:00