Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion site/content/3.10/index-and-search/indexing/index-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,10 @@ by ArangoDB, without the user being required to create extra indexes for them.
are covered by an edge collection's edge index automatically.

You cannot use the `_id` system attribute, nor sub-attributes with this name, in
user-defined indexes, but indexing `_key`, `_rev`, `_from`, and `_to` is possible.
user-defined indexes (except the inverted index type). This applies to the
`fields` the index is defined over, as well as additional attributes you can
store in a persistent index using `storedValues`. However, indexing and storing
the `_key`, `_rev`, `_from`, and `_to` system attributes is possible.

You cannot index fields that contain `.` in their attribute names because dots
are interpreted as paths of nested attributes. For example, `fields: ["foo.bar"]`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,8 @@ Other attributes may be necessary, depending on the index type.

The `.` character denotes sub-attributes in attribute paths. Attributes with
literal `.` in their name cannot be indexed. Attributes with the name `_id`
cannot be indexed either, neither as a top-level attribute nor as a sub-attribute.
cannot be indexed either, neither as a top-level attribute nor as a sub-attribute
(except the inverted index type).

If an attribute path contains an `[*]` extension (e.g. `friends[*].id`), it means
that the index attribute value is treated as an array and all array members are
Expand All @@ -156,6 +157,9 @@ Other attributes may be necessary, depending on the index type.
In unique indexes, only the attributes in `fields` are checked for uniqueness,
but the attributes in `storedValues` are not checked for their uniqueness.

In `persistent` indexes, you cannot store attributes with the name `_id`,
neither as a top-level attribute nor as a sub-attribute.

- `name`: can be a string. Index names are subject to the same character
restrictions as [collection names](../../../concepts/data-structure/collections.md#collection-names).
If omitted, a name will be auto-generated so
Expand Down
5 changes: 4 additions & 1 deletion site/content/3.11/index-and-search/indexing/index-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,10 @@ by ArangoDB, without the user being required to create extra indexes for them.
are covered by an edge collection's edge index automatically.

You cannot use the `_id` system attribute, nor sub-attributes with this name, in
user-defined indexes, but indexing `_key`, `_rev`, `_from`, and `_to` is possible.
user-defined indexes (except the inverted index type). This applies to the
`fields` the index is defined over, as well as additional attributes you can
store in a persistent index using `storedValues`. However, indexing and storing
the `_key`, `_rev`, `_from`, and `_to` system attributes is possible.

You cannot index fields that contain `.` in their attribute names because dots
are interpreted as paths of nested attributes. For example, `fields: ["foo.bar"]`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,8 @@ Other attributes may be necessary, depending on the index type.

The `.` character denotes sub-attributes in attribute paths. Attributes with
literal `.` in their name cannot be indexed. Attributes with the name `_id`
cannot be indexed either, neither as a top-level attribute nor as a sub-attribute.
cannot be indexed either, neither as a top-level attribute nor as a sub-attribute
(except the inverted index type).

If an attribute path contains an `[*]` extension (e.g. `friends[*].id`), it means
that the index attribute value is treated as an array and all array members are
Expand All @@ -156,6 +157,9 @@ Other attributes may be necessary, depending on the index type.
In unique indexes, only the attributes in `fields` are checked for uniqueness,
but the attributes in `storedValues` are not checked for their uniqueness.

In `persistent` indexes, you cannot store attributes with the name `_id`,
neither as a top-level attribute nor as a sub-attribute.

- `name`: can be a string. Index names are subject to the same character
restrictions as [collection names](../../../concepts/data-structure/collections.md#collection-names).
If omitted, a name will be auto-generated so
Expand Down
5 changes: 4 additions & 1 deletion site/content/3.12/index-and-search/indexing/index-basics.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,10 @@ by ArangoDB, without the user being required to create extra indexes for them.
are covered by an edge collection's edge index automatically.

You cannot use the `_id` system attribute, nor sub-attributes with this name, in
user-defined indexes, but indexing `_key`, `_rev`, `_from`, and `_to` is possible.
user-defined indexes (except the inverted index type). This applies to the
`fields` the index is defined over but not the additional attributes you can
store in a persistent index using `storedValues`. Indexing and storing
the `_key`, `_rev`, `_from`, and `_to` system attributes is possible.

You cannot index fields that contain `.` in their attribute names because dots
are interpreted as paths of nested attributes. For example, `fields: ["foo.bar"]`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,8 @@ Other attributes may be necessary, depending on the index type.

The `.` character denotes sub-attributes in attribute paths. Attributes with
literal `.` in their name cannot be indexed. Attributes with the name `_id`
cannot be indexed either, neither as a top-level attribute nor as a sub-attribute.
cannot be indexed either, neither as a top-level attribute nor as a sub-attribute
(except the inverted index type).

If an attribute path contains an `[*]` extension (e.g. `friends[*].id`), it means
that the index attribute value is treated as an array and all array members are
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,17 @@ unknown attributes and values are detected in the request body.
Note that all invalid elements and combinations will be rejected in future
versions.

#### Index API

##### Stored values can contain the `_id` attribute

The usage of the `_id` system attribute was previously disallowed for
`persistent` indexes inside of `storedValues`. This is now allowed in v3.12.

Note that it is still forbidden to use `_id` as a top-level attribute or
sub-attribute in `fields` of persistent indexes. On the other hand, inverted
indexes have been allowing to index and store the `_id` system attribute.

### Privilege changes


Expand Down
11 changes: 11 additions & 0 deletions site/content/3.12/release-notes/version-3.12/whats-new-in-3-12.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,17 @@ Swagger 2.x compatibility.



## Indexing

### Stored values can contain the `_id` attribute

The usage of the `_id` system attribute was previously disallowed for
`persistent` indexes inside of `storedValues`. This is now allowed in v3.12.

Note that it is still forbidden to use `_id` as a top-level attribute or
sub-attribute in `fields` of persistent indexes. On the other hand, inverted
indexes have been allowing to index and store the `_id` system attribute.

## Server options

### LZ4 compression for values in the in-memory edge cache
Expand Down