1
0
Fork 0
Commit Graph

1338 Commits

Author SHA1 Message Date
Jan Steemann 26af2995db some cleanup in transaction code 2013-03-20 18:44:29 +01:00
Jan Steemann 114acf1701 make datafile->_fid identical to datafile name for new datafiles 2013-03-20 12:41:36 +01:00
Jan Steemann 40199d64b7 fixed handling of empty and reserved attribute names in documents
specifying an empty attribute name in a document may have led to segmentation faults
when the document was unpacked later.
2013-03-20 11:48:33 +01:00
Jan Steemann a0bf485e11 fixed usage of invalid pointer 2013-03-19 11:31:42 +01:00
Jan Steemann d17a034d59 moved crc calculation into datafile 2013-03-18 20:17:31 +01:00
Jan Steemann 95d78faa3c fixed doxygen errors 2013-03-18 20:07:31 +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 fe8dd6d6fc Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2013-03-18 13:05:45 +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
Oreste Panaia 081ad862a6 CAS modifications 2013-03-18 19:52:53 +08:00
Oreste Panaia 8333858eac CAS modifications 2013-03-18 19:11:18 +08:00
Jan Steemann 0ef011d408 changed function signature 2013-03-18 09:17:49 +01:00
Jan Steemann 741dec2f7a changed function signature 2013-03-18 09:17:32 +01:00
Jan Steemann 9a4a0e5dfb fixed memory zone mismatches 2013-03-18 09:13:32 +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 51d8638164 typos 2013-03-15 18:16:47 +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 71fbdf87cd Mac fixes 2013-03-15 15:46:17 +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 f9ba951999 fixed comments 2013-03-15 13:42:52 +01:00
Frank Celler b0fc77d83d Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel 2013-03-15 11:37:59 +01:00
Frank Celler c773a0e825 replaced union by CONST_CAST 2013-03-15 11:37:49 +01:00
Oreste Panaia c8ea7ddc8b prepartion for skiplist transactions 2013-03-15 18:26:15 +08:00
Oreste Panaia 36733eb19f preparation for skiplists supporting transactions 2013-03-15 18:12:20 +08: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 12a0bc787c empty string optimisations 2013-03-14 16:41:28 +01:00
Jan Steemann 61af5f27da added startup option `--database.force-sync-properties` 2013-03-14 13:48:58 +01:00
Jan Steemann ab14179ee7 made fsync configurable when writing json files 2013-03-14 12:33:25 +01:00
Jan Steemann 276627fd4c only free pointers if set 2013-03-14 11:51:51 +01:00
Frank Celler d76a085a04 fixed cleanup 2013-03-13 17:12:59 +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
a-brandt 62b72d17a1 #344 added missing support of array-url-parameters 2013-03-13 14:20:01 +01:00
Jan Steemann 836963ae00 less compaction 2013-03-12 18:17:27 +01:00
Jan Steemann 3527a77f18 remove temporary files when opening a collection 2013-03-12 14:52:25 +01:00
Jan Steemann 91c38f8425 delete temporary files on startup 2013-03-12 14:45:42 +01:00
Frank Celler c501d2e0b4 fixed rollback 2013-03-12 14:26:16 +01:00
Jan Steemann 88c2bcb6f5 removed unused variable 2013-03-12 12:56:39 +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 deee332a3d fixed geo-index remove 2013-03-12 12:50:05 +01:00
Frank Celler 1803f409b2 fixed skip list index
Conflicts:
	arangod/SkipLists/skiplistIndex.c
2013-03-12 11:13:22 +01:00
Jan Steemann 8888fe4cc5 dont truncate collection id in error message 2013-03-12 10:31:54 +01:00
Jan Steemann 9b688907f0 handle out of memory properly when open-iterating a collection 2013-03-12 10:26:35 +01:00
Jan Steemann 082244cbeb handle out of memory in voc-shaper 2013-03-12 09:20:56 +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
Jan Steemann 799d7f02ee fixed memory zones 2013-03-11 10:59:16 +01:00
Jan Steemann ab0752102d why? 2013-03-11 10:44:26 +01:00
Jan Steemann 6a4245b5c8 fixed deadlock 2013-03-11 10:37:17 +01:00
Jan Steemann 660610ae71 fixed memory zone mismatches 2013-03-11 10:30:54 +01:00
Jan Steemann d5855c0c1f fixed some memory zone mismatches 2013-03-11 10:25:09 +01:00
Frank Celler b8ef779aa7 fixed merge errors 2013-03-11 09:54:56 +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 af2d966559 fixed a typo 2013-03-08 22:31:17 +01:00
Jan Steemann b66a7492b9 addendum for issue #443 2013-03-08 22:30:35 +01:00
Jan Steemann 83c0326145 disallow specifying indexes on internal attributes (_key, _from, _to etc.).
This has never worked before and will never work, so return an error if this is tried
2013-03-08 17:26:47 +01:00
a-brandt b3c9654895 Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel 2013-03-08 17:00:33 +01:00
Jan Steemann cd753182f1 fixed doxygen errors 2013-03-08 16:56:52 +01:00
a-brandt e952b28aab changed http return codes for document update and delete 2013-03-08 16:56:15 +01:00
Jan Steemann e6c28d50b3 cleanup: removed TRI_HAVE_ICU and internal.HAVE_ICU (always true) 2013-03-08 16:09:47 +01:00
Jan Steemann 99630450c2 removed checks for TRI_HAVE_ICU because ICU is a prerequisite for using ArangoDB 2013-03-08 16:03:54 +01:00
Jan Steemann 1ea4c1c4b0 issue #443 2013-03-08 15:16:29 +01:00
Jan Steemann 0a883f4076 merged some changes from trx branch into devel 2013-03-08 14:22:25 +01:00
Jan Steemann 8a6bac82ad removed headers->verify() because it was a non-op 2013-03-08 13:36:48 +01:00
Jan Steemann deb8946e1d added build date 2013-03-08 13:32:12 +01:00
Jan Steemann 2b97f97765 issue #212 2013-03-08 12:18:32 +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 5732ab8378 reduce the size for each collection struct
"path" attribute now has a max length of 512 bytes instead of 4K
2013-03-07 18:17:52 +01:00
Jan Steemann 0879cf8d15 added auto-increment key generator (not yet ready) 2013-03-07 18:17:35 +01:00
Jan Steemann a6dde1423d disallow defined, but non-string keys 2013-03-07 18:12:07 +01:00
Jan Steemann 4f59917201 added lost docs for collection.save() 2013-03-07 13:19:53 +01:00
Jan Steemann 092327058b potential solution for #438 (non-windows) 2013-03-07 10:50:40 +01:00
Jan Steemann 424ab3e759 removed redundant function 2013-03-07 01:30:34 +01:00
Jan Steemann a716f300a1 less strlen() calls 2013-03-07 00:58:08 +01:00
Jan Steemann a73d32c553 initialise lists to the correct size 2013-03-07 00:46:27 +01:00
Jan Steemann 529cf8c93e initialise vectors with basic sizes 2013-03-07 00:13:26 +01:00
Jan Steemann 1b2155baf8 minor AQL runtime optimisations 2013-03-06 22:31:03 +01:00
Jan Steemann 0fb397eabd adjusted startup output to be more compact, less verbose 2013-03-06 19:05:17 +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 d93c0693d0 Merge branch 'devel' of https://github.com/triAGENS/ArangoDB into devel 2013-03-06 14:33:40 +01:00
Jan Steemann bdf906ef89 fixed a memleak for barriers 2013-03-06 14:33:23 +01:00
a-brandt 82bf2bca17 Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel 2013-03-06 14:06:07 +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
a-brandt 57c2eac80e Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel 2013-03-06 10:08:12 +01:00
Jan Steemann 01bf386e08 added test cases, fixed edge index key insertion 2013-03-06 09:38:59 +01:00
Frank Celler dfd20cd4e2 use TRI_AddGlobalVariableVocbase 2013-03-05 14:49:19 +01:00
a-brandt e41847c336 moved random generators and nonce functions to internal and crypto module 2013-03-04 16:18:00 +01:00
a-brandt 58148f33a4 changed nonce handling 2013-03-04 14:03:22 +01:00
Jan Steemann 2734060026 when compacting old markers, also adjust _key 2013-03-04 12:05:14 +01:00
a-brandt d6392971bf Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel 2013-03-04 09:06:45 +01:00
Frank Celler dd96bb4abd Merge branch 'devel' of github.com:triAGENS/ArangoDB into devel 2013-03-03 22:40:55 +01:00