package models

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. All

Type Members

  1. final case class CollectionChecksum(checksum: String, revision: String) extends Product with Serializable
  2. final case class CollectionCount(count: Long) extends Product with Serializable
  3. final case class CollectionCreate(name: CollectionName, distributeShardsLike: String = "", doCompact: Boolean = true, indexBuckets: Option[Long] = None, isSystem: Boolean = false, isVolatile: Boolean = false, journalSize: Option[Long] = None, keyOptions: Option[KeyOptions] = None, numberOfShards: Long = 1, replicationFactor: Long = 1, shardKeys: List[String] = List(DocumentKey.key), shardingStrategy: Option[String] = None, smartJoinAttribute: Option[String] = None, type: CollectionType = CollectionType.Document, waitForSync: Boolean = false, waitForSyncReplication: Int = 1, enforceReplicationFactor: Int = 1, schema: Option[CollectionSchema] = None) extends Product with Serializable

    name

    The name of the collection.

    distributeShardsLike

    (The default is *\"\"*): in an Enterprise Edition cluster, this attribute binds the specifics of sharding for the newly created collection to follow that of a specified existing collection. **Note**: Using this parameter has consequences for the prototype collection. It can no longer be dropped, before the sharding-imitating collections are dropped. Equally, backups and restores of imitating collections alone will generate warnings (which can be overridden) about missing sharding prototype.

    doCompact

    whether or not the collection will be compacted (default is *true*) This option is meaningful for the MMFiles storage engine only.

    indexBuckets

    The number of buckets into which indexes using a hash table are split. The default is 16 and this number has to be a power of 2 and less than or equal to 1024. For very large collections one should increase this to avoid long pauses when the hash table has to be initially built or resized, since buckets are resized individually and can be initially built in parallel. For example, 64 might be a sensible value for a collection with 100 000 000 documents. Currently, only the edge index respects this value, but other index types might follow in future ArangoDB versions. Changes (see below) are applied when the collection is loaded the next time. This option is meaningful for the MMFiles storage engine only.

    isSystem

    If *true*, create a system collection. In this case *collection-name* should start with an underscore. End users should normally create non-system collections only. API implementors may be required to create system collections in very special occasions, but normally a regular collection will do. (The default is *false*)

    isVolatile

    If *true* then the collection data is kept in-memory only and not made persistent. Unloading the collection will cause the collection data to be discarded. Stopping or re-starting the server will also cause full loss of data in the collection. Setting this option will make the resulting collection be slightly faster than regular collections because ArangoDB does not enforce any synchronization to disk and does not calculate any CRC checksums for datafiles (as there are no datafiles). This option should therefore be used for cache-type collections only, and not for data that cannot be re-created otherwise. (The default is *false*) This option is meaningful for the MMFiles storage engine only.

    journalSize

    The maximal size of a journal or datafile in bytes. The value must be at least 1048576 (1 MiB). (The default is a configuration parameter) This option is meaningful for the MMFiles storage engine only.

    keyOptions

    additional options for key generation

    numberOfShards

    (The default is *1*): in a cluster, this value determines the number of shards to create for the collection. In a single server setup, this option is meaningless.

    replicationFactor

    (The default is *1*): in a cluster, this attribute determines how many copies of each shard are kept on different DBServers. The value 1 means that only one copy (no synchronous replication) is kept. A value of k means that k-1 replicas are kept. Any two copies reside on different DBServers. Replication between them is synchronous, that is, every write operation to the \"leader\" copy will be replicated to all \"follower\" replicas, before the write operation is reported successful. If a server fails, this is detected automatically and one of the servers holding copies take over, usually without an error being reported.

    shardKeys

    (The default is *[ \"_key\" ]*): in a cluster, this attribute determines which document attributes are used to determine the target shard for documents. Documents are sent to shards based on the values of their shard key attributes. The values of all shard key attributes in a document are hashed, and the hash value is used to determine the target shard. **Note**: Values of shard key attributes cannot be changed once set. This option is meaningless in a single server setup.

    shardingStrategy

    This attribute specifies the name of the sharding strategy to use for the collection. Since ArangoDB 3.4 there are different sharding strategies to select from when creating a new collection. The selected *shardingStrategy* value will remain fixed for the collection and cannot be changed afterwards. This is important to make the collection keep its sharding settings and always find documents already distributed to shards using the same initial sharding algorithm. The available sharding strategies are: - community-compat: default sharding used by ArangoDB Community Edition before version 3.4 - enterprise-compat: default sharding used by ArangoDB Enterprise Edition before version 3.4 - enterprise-smart-edge-compat: default sharding used by smart edge collections in ArangoDB Enterprise Edition before version 3.4 - hash: default sharding used for new collections starting from version 3.4 (excluding smart edge collections) - enterprise-hash-smart-edge: default sharding used for new smart edge collections starting from version 3.4 If no sharding strategy is specified, the default will be *hash* for all collections, and *enterprise-hash-smart-edge* for all smart edge collections (requires the *Enterprise Edition* of ArangoDB). Manually overriding the sharding strategy does not yet provide a benefit, but it may later in case other sharding strategies are added.

    smartJoinAttribute

    In an *Enterprise Edition* cluster, this attribute determines an attribute of the collection that must contain the shard key value of the referred-to smart join collection. Additionally, the shard key for a document in this collection must contain the value of this attribute, followed by a colon, followed by the actual primary key of the document. This feature can only be used in the *Enterprise Edition* and requires the *distributeShardsLike* attribute of the collection to be set to the name of another collection. It also requires the *shardKeys* attribute of the collection to be set to a single shard key attribute, with an additional ':' at the end. A further restriction is that whenever documents are stored or updated in the collection, the value stored in the *smartJoinAttribute* must be a string.

    waitForSync

    If *true* then the data is synchronized to disk before returning from a document create, update, replace or removal operation. (default: false)

    waitForSyncReplication

    Default is 1 which means the server will only report success back to the client if all replicas have created the collection. Set to 0 if you want faster server responses and don't care about full replication.

    enforceReplicationFactor

    Default is 1 which means the server will check if there are enough replicas available at creation time and bail out otherwise. Set to 0 to disable this extra check.

    schema

    Optional object that specifies the collection level schema for documents. The attribute keys rule, level and message must follow the rules documented in Document Schema Validation

  4. final case class CollectionInfo(id: String, name: CollectionName, status: CollectionStatus, type: CollectionType, isSystem: Boolean, globallyUniqueId: String) extends Product with Serializable

    collection information

    collection information

    id

    identifier of the collection

    name

    name of the collection

    status

    status of the collection

    isSystem

    if true then the collection is a system collection

    globallyUniqueId

    unique id of the collection

  5. final case class CollectionProperties(doCompact: Option[Boolean] = None, globallyUniqueId: Option[String], id: Option[String], indexBuckets: Option[Int] = None, isSystem: Boolean, isVolatile: Option[Boolean] = None, journalSize: Option[Int] = None, keyOptions: KeyOptions, name: CollectionName, status: Option[CollectionStatus] = None, statusString: Option[String] = None, type: Option[CollectionType], waitForSync: Boolean, minReplicationFactor: Option[Int] = None, numberOfShards: Option[Int] = None, replicationFactor: Option[Int] = None, shardKeys: Option[List[String]] = None, shardingStrategy: Option[String] = None, smartGraphAttribute: Option[String] = None, schema: Option[CollectionSchema] = None) extends Product with Serializable

    doCompact

    Whether or not the collection will be compacted. This option is only present for the MMFiles storage engine.

    globallyUniqueId

    Unique identifier of the collection

    id

    unique identifier of the collection; *deprecated*

    indexBuckets

    the number of index buckets *Only relevant for the MMFiles storage engine*

    isSystem

    true if this is a system collection; usually *name* will start with an underscore.

    isVolatile

    If *true* then the collection data will be kept in memory only and ArangoDB will not write or sync the data to disk. This option is only present for the MMFiles storage engine.

    journalSize

    The maximal size setting for journals / datafiles in bytes. This option is only present for the MMFiles storage engine.

    name

    literal name of this collection

    status

    corrosponds to **statusString**; *Only relevant for the MMFiles storage engine* - 0: \"unknown\" - may be corrupted - 1: (deprecated, maps to \"unknown\") - 2: \"unloaded\" - 3: \"loaded\" - 4: \"unloading\" - 5: \"deleted\" - 6: \"loading\"

    statusString

    any of: [\"unloaded\", \"loading\", \"loaded\", \"unloading\", \"deleted\", \"unknown\"] *Only relevant for the MMFiles storage engine*

    waitForSync

    If *true* then creating, changing or removing documents will wait until the data has been synchronized to disk.

    minReplicationFactor

    contains how many minimal copies of each shard need to be in sync on different DBServers. The shards will refuse to write, if we have less then these many copies in sync. *Cluster specific attribute.*

    numberOfShards

    The number of shards of the collection; *Cluster specific attribute.*

    replicationFactor

    contains how many copies of each shard are kept on different DBServers.; *Cluster specific attribute.*

    shardKeys

    contains the names of document attributes that are used to determine the target shard for documents; *Cluster specific attribute.*

    shardingStrategy

    the sharding strategy selected for the collection; *Cluster specific attribute.* One of 'hash' or 'enterprise-hash-smart-edge'

    smartGraphAttribute

    Attribute that is used in smart graphs, *Cluster specific attribute.*

  6. final case class CollectionRevision(revision: String) extends Product with Serializable
  7. final case class CollectionSchema(rule: VPack, level: String, message: String) extends Product with Serializable
  8. sealed abstract class CollectionStatus extends IntEnumEntry
  9. sealed abstract class CollectionType extends IntEnumEntry
  10. final case class Cursor[T](cached: Boolean, count: Option[Long] = None, extra: Option[Extra] = None, hasMore: Boolean, id: Option[String] = None, result: Vector[T]) extends Product with Serializable

    cached

    a boolean flag indicating whether the query result was served from the query cache or not. If the query result is served from the query cache, the *extra* return attribute will not contain any *stats* sub-attribute and no *profile* sub-attribute.

    count

    the total number of result documents available (only available if the query was executed with the *count* attribute set)

    extra

    an optional JSON object with extra information about the query result contained in its *stats* sub-attribute. For data-modification queries, the *extra.stats* sub-attribute will contain the number of modified documents and the number of documents that could not be modified due to an error (if *ignoreErrors* query option is specified)

    hasMore

    A boolean indicator whether there are more results available for the cursor on the server

    id

    id of temporary cursor created on the server (optional, see above)

    result

    an array of result documents (might be empty if query has no results)

  11. case class DatabaseInfo(name: DatabaseName, id: String, path: String, isSystem: Boolean) extends Product with Serializable

    database information

    database information

    name

    database name

    id

    database id

    path

    filesystem path

    isSystem

    whether or not the current database is the _system database

  12. final case class DeleteResult(id: String) extends Product with Serializable
  13. case class Document[T](_id: DocumentHandle, _key: DocumentKey, _rev: DocumentRevision, new: Option[T] = None, old: Option[T] = None, _oldRev: Option[DocumentRevision] = None) extends Product with Serializable
  14. case class Engine(name: Name, supports: Supports) extends Product with Serializable

    the storage engine the server is configured to use

    the storage engine the server is configured to use

    name

    will be mmfiles or rocksdb

    supports

    what the engine supports

  15. final case class GraphInfo(name: String) extends Product with Serializable
  16. final case class GraphList(graphs: Vector[GraphRepresentation]) extends Product with Serializable

    graphs

    list of graph representations

  17. final case class Index(fields: List[String], id: String, name: String, type: Type, isNewlyCreated: Boolean = false, selectivityEstimate: Option[Double] = None, sparse: Option[Boolean] = None, unique: Option[Boolean] = None, deduplicate: Option[Boolean] = None) extends Product with Serializable
  18. final case class IndexList(indexes: List[Index], identifiers: Map[String, Index]) extends Product with Serializable
  19. final case class Query[V](query: String, bindVars: V, batchSize: Option[Long] = None, cache: Option[Boolean] = None, count: Option[Boolean] = None, memoryLimit: Option[Long] = None, options: Option[Options] = None, ttl: Option[Long] = None) extends Product with Serializable

    query

    contains the query string to be executed

    bindVars

    key/value pairs representing the bind parameters.

    batchSize

    maximum number of result documents to be transferred from the server to the client in one roundtrip. If this attribute is not set, a server-controlled default value will be used. A *batchSize* value of *0* is disallowed.

    cache

    flag to determine whether the AQL query results cache shall be used. If set to *false*, then any query cache lookup will be skipped for the query. If set to *true*, it will lead to the query cache being checked for the query if the query cache mode is either *on* or *demand*.

    count

    indicates whether the number of documents in the result set should be returned in the \"count\" attribute of the result. Calculating the \"count\" attribute might have a performance impact for some queries in the future so this option is turned off by default, and \"count\" is only returned when requested.

    memoryLimit

    the maximum number of memory (measured in bytes) that the query is allowed to use. If set, then the query will fail with error \"resource limit exceeded\" in case it allocates too much memory. A value of *0* indicates that there is no memory limit.

    ttl

    The time-to-live for the cursor (in seconds). The cursor will be removed on the server automatically after the specified amount of time. This is useful to ensure garbage collection of cursors that are not fully fetched by clients. If not set, a server-defined value will be used (default: 30 seconds).

  20. final case class Result[T](result: T) extends Product with Serializable
  21. case class ServerRole(role: String) extends Product with Serializable

    the role of a server in a cluster

    the role of a server in a cluster

    role

    role of server

  22. case class Transaction(id: TransactionId, status: String) extends Product with Serializable

    describing a transaction

    describing a transaction

    id

    identifier of the transaction

    status

    status of the transaction “running”, “committed” or “aborted”

  23. final case class TransactionList(transactions: List[TransactionList.Transaction]) extends Product with Serializable
  24. final case class Version(server: String, license: String, version: String, details: Map[String, String] = Map.empty) extends Product with Serializable

    server

    will always contain arango

    license

    the server license

    version

    the server version string. The string has the format "major.minor.sub". major and minor will be numeric, and sub may contain a number or a textual version

    details

    additional information about included components and their versions

Value Members

  1. object CollectionChecksum extends Serializable
  2. object CollectionCount extends Serializable
  3. object CollectionCreate extends Serializable
  4. object CollectionInfo extends Serializable
  5. object CollectionProperties extends Serializable
  6. object CollectionRevision extends Serializable
  7. object CollectionSchema extends Serializable
  8. object CollectionStatus extends IntEnum[CollectionStatus] with VPackValueEnum[Int, CollectionStatus]
  9. object CollectionType extends IntEnum[CollectionType] with VPackValueEnum[Int, CollectionType]
  10. object Cursor extends Serializable
  11. object DatabaseCreate
  12. object DatabaseInfo extends Serializable
  13. object DeleteResult extends Serializable
  14. object Document extends Serializable
  15. object Engine extends Serializable
  16. object GraphInfo extends Serializable
  17. object GraphList extends Serializable
  18. object Index extends Serializable
  19. object IndexList extends Serializable
  20. object Query extends Serializable
  21. object Result extends Serializable
  22. object ServerRole extends Serializable
  23. object Transaction extends Serializable
  24. object TransactionList extends Serializable
  25. object Version extends Serializable

Ungrouped