Skip to content

Version 8.0 #606

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 12 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 1 commit
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
Prev Previous commit
Next Next commit
removed enterprise edition checks
  • Loading branch information
rashtao committed Jun 6, 2025
commit 37fbb93ada7ac939268b4eadaa3b0725204305c9
10 changes: 5 additions & 5 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ commands:
parameters:
docker-img:
type: 'string'
default: 'docker.io/arangodb/arangodb:latest'
default: 'docker.io/arangodb/enterprise:latest'
topology:
type: 'string'
default: 'single'
Expand Down Expand Up @@ -131,7 +131,7 @@ jobs:
parameters:
docker-img:
type: 'string'
default: 'docker.io/arangodb/arangodb:latest'
default: 'docker.io/arangodb/enterprise:latest'
topology:
type: 'string'
default: 'single'
Expand Down Expand Up @@ -199,7 +199,7 @@ jobs:
parameters:
docker-img:
type: 'string'
default: 'docker.io/arangodb/arangodb:latest'
default: 'docker.io/arangodb/enterprise:latest'
topology:
type: 'string'
default: 'single'
Expand Down Expand Up @@ -454,7 +454,7 @@ workflows:
matrix:
parameters:
docker-img:
- 'docker.io/arangodb/arangodb:3.12'
- 'docker.io/arangodb/enterprise:3.12'
topology:
- 'single'
args:
Expand All @@ -464,7 +464,7 @@ workflows:
matrix:
parameters:
docker-img:
- 'docker.io/arangodb/arangodb:3.12'
- 'docker.io/arangodb/enterprise:3.12'
topology:
- 'cluster'
args:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ public final class CollectionPropertiesEntity extends CollectionEntity {
private Collection<String> shardKeys;
private String shardingStrategy; // cluster option
private String smartGraphAttribute;
private String smartJoinAttribute; // enterprise option
private String smartJoinAttribute;
private Integer writeConcern;
private Long count;

Expand Down
2 changes: 1 addition & 1 deletion core/src/main/java/com/arangodb/entity/EdgeDefinition.java
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ public Options getOptions() {

/**
* @param satellites collection names that will be used to create SatelliteCollections
* for a Hybrid (Disjoint) SmartGraph (Enterprise Edition only). Each array element
* for a Hybrid (Disjoint) SmartGraph. Each array element
* must be a valid collection name. The collection type cannot be modified later.
* @return this
* @since ArangoDB 3.9.0
Expand Down
11 changes: 5 additions & 6 deletions core/src/main/java/com/arangodb/entity/GraphEntity.java
Original file line number Diff line number Diff line change
Expand Up @@ -86,8 +86,7 @@ public String getRev() {
}

/**
* @return The replication factor used for every new collection in the graph. Can also be satellite for a SmartGraph
* (Enterprise Edition only).
* @return The replication factor used for every new collection in the graph. Can also be satellite for a SmartGraph.
*/
public ReplicationFactor getReplicationFactor() {
return replicationFactor;
Expand All @@ -104,28 +103,28 @@ public Integer getWriteConcern() {
}

/**
* @return Whether the graph is a SmartGraph (Enterprise Edition only).
* @return Whether the graph is a SmartGraph.
*/
public Boolean getIsSmart() {
return isSmart;
}

/**
* @return Whether the graph is a Disjoint SmartGraph (Enterprise Edition only).
* @return Whether the graph is a Disjoint SmartGraph.
*/
public Boolean getIsDisjoint() {
return isDisjoint;
}

/**
* @return Name of the sharding attribute in the SmartGraph case (Enterprise Edition only).
* @return Name of the sharding attribute in the SmartGraph case.
*/
public String getSmartGraphAttribute() {
return smartGraphAttribute;
}

/**
* @return Flag if the graph is a SatelliteGraph (Enterprise Edition only) or not.
* @return Flag if the graph is a SatelliteGraph or not.
*/
public Boolean getIsSatellite() {
return isSatellite;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ public Boolean getCache() {
* @param cache Enable this option to always cache the field normalization values in memory for this specific field.
* This can improve the performance of scoring and ranking queries. Otherwise, these values are
* memory-mapped and it is up to the operating system to load them from disk into memory and to evict
* them from memory. (Enterprise Edition only)
* them from memory.
* @return this
* @since ArangoDB 3.10.2
*/
Expand Down Expand Up @@ -142,7 +142,7 @@ public Collection<InvertedIndexField> getNested() {
* @param nested Index the specified sub-objects that are stored in an array. Other than with the fields property,
* the values get indexed in a way that lets you query for co-occurring values. For example, you can
* search the sub-objects and all the conditions need to be met by a single sub-object instead of
* across all of them. This property is available in the Enterprise Edition only.
* across all of them.
* @return this
*/
public InvertedIndexField nested(InvertedIndexField... nested) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ public Boolean getCache() {
* @param cache If you enable this option, then the primary sort columns are always cached in memory. This can
* improve the performance of queries that utilize the primary sort order. Otherwise, these values are
* memory-mapped and it is up to the operating system to load them from disk into memory and to evict
* them from memory (Enterprise Edition only).
* them from memory.
* @return this
* @since ArangoDB 3.10.2
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ public enum AnalyzerFeature {
position,

/**
* enable search highlighting capabilities (Enterprise Edition only). If present, then the `position` and `frequency` features are also required.
* enable search highlighting capabilities. If present, then the `position` and `frequency` features are also required.
* @since ArangoDB 3.10
*/
offset
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ public Collection<StoredValue> getStoredValues() {

/**
* @return An array of strings defining optimized sort expressions.
* @since ArangoDB 3.11, Enterprise Edition only
* @since ArangoDB 3.11
*/
public Collection<String> getOptimizeTopK() {
return optimizeTopK;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -143,7 +143,7 @@ public CollectionLink inBackground(final Boolean inBackground) {
* and it is up to the operating system to load them from disk into memory and to evict them from
* memory.
* @return link
* @since ArangoDB 3.9.5, Enterprise Edition only
* @since ArangoDB 3.9.5
*/
public CollectionLink cache(final Boolean cache) {
this.cache = cache;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ public FieldLink inBackground(final Boolean inBackground) {
* and it is up to the operating system to load them from disk into memory and to evict them from
* memory.
* @return link
* @since ArangoDB 3.9.5, Enterprise Edition only
* @since ArangoDB 3.9.5
*/
public FieldLink cache(final Boolean cache) {
this.cache = cache;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public final class StoredValue {
/**
* @param fields A list of attribute paths. The . character denotes sub-attributes.
* @param compression Defines how to compress the attribute values.
* @param cache Whether to cache stored values in memory. (Since ArangoDB 3.9.5, Enterprise Edition only)
* @param cache Whether to cache stored values in memory. (Since ArangoDB 3.9.5)
*/
@JsonCreator
public StoredValue(@JsonProperty("fields") List<String> fields,
Expand Down
6 changes: 2 additions & 4 deletions core/src/main/java/com/arangodb/model/AqlQueryOptions.java
Original file line number Diff line number Diff line change
Expand Up @@ -513,7 +513,7 @@ public Boolean getAllowDirtyReads() {
* You may observe data inconsistencies (dirty reads) when reading from followers, namely
* obsolete revisions of documents because changes have not yet been replicated to the
* follower, as well as changes to documents before they are officially committed on the
* leader. This feature is only available in the Enterprise Edition.
* leader.
* @return this
*/
public AqlQueryOptions allowDirtyReads(final Boolean allowDirtyReads) {
Expand Down Expand Up @@ -839,7 +839,7 @@ public Double getSatelliteSyncWait() {
}

/**
* @param satelliteSyncWait This enterprise parameter allows to configure how long a DBServer will have time to
* @param satelliteSyncWait This parameter allows to configure how long a DBServer will have time to
* bring the
* satellite collections involved in the query into sync. The default value is 60.0
* (seconds). When the
Expand Down Expand Up @@ -883,8 +883,6 @@ public Boolean getSkipInaccessibleCollections() {
* collections and different users execute AQL queries on that graph. You can
* now naturally limit the
* accessible results by changing the access rights of users on collections.
* This feature is only
* available in the Enterprise Edition.
* @return this
* @since ArangoDB 3.2.0
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ public final class CollectionCreateOptions {
private String distributeShardsLike;

private String shardingStrategy; // cluster option
private String smartJoinAttribute; // enterprise option
private String smartJoinAttribute;

private CollectionSchema schema;

Expand Down Expand Up @@ -255,7 +255,7 @@ public String getDistributeShardsLike() {
}

/**
* @param distributeShardsLike (The default is ""): in an enterprise cluster, this attribute binds the specifics
* @param distributeShardsLike (The default is ""): this attribute binds the specifics
* of sharding for the
* newly created collection to follow that of a specified existing collection. Note:
* Using this parameter
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ public ReplicationFactor getReplicationFactor() {
* different DB-Servers. The value 1 means that only one copy (no synchronous replication)
* is kept. A value of k means that k-1 replicas are kept. For SatelliteCollections, it
* needs to be the string "satellite", which matches the replication factor to the number
* of DB-Servers (Enterprise Edition only).
* of DB-Servers.
* <p>
* Any two copies reside on different DB-Servers. Replication between them is synchronous,
* that is, every write operation to the “leader” copy will be replicated to all “follower”
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ public Boolean getAllowDirtyReads() {
* You may observe data inconsistencies (dirty reads) when reading from followers, namely
* obsolete revisions of documents because changes have not yet been replicated to the
* follower, as well as changes to documents before they are officially committed on the
* leader. This feature is only available in the Enterprise Edition.
* leader.
* @return this
*/
public ExplainAqlQueryOptions allowDirtyReads(final Boolean allowDirtyReads) {
Expand Down Expand Up @@ -434,7 +434,7 @@ public Double getSatelliteSyncWait() {
}

/**
* @param satelliteSyncWait This enterprise parameter allows to configure how long a DBServer will have time to
* @param satelliteSyncWait This parameter allows to configure how long a DBServer will have time to
* bring the
* satellite collections involved in the query into sync. The default value is 60.0
* (seconds). When the
Expand Down Expand Up @@ -478,8 +478,6 @@ public Boolean getSkipInaccessibleCollections() {
* collections and different users execute AQL queries on that graph. You can
* now naturally limit the
* accessible results by changing the access rights of users on collections.
* This feature is only
* available in the Enterprise Edition.
* @return this
* @since ArangoDB 3.2.0
*/
Expand Down
4 changes: 2 additions & 2 deletions core/src/main/java/com/arangodb/model/GraphCreateOptions.java
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ public Boolean getIsSmart() {
}

/**
* @param isSmart Define if the created graph should be smart. This only has effect in Enterprise version.
* @param isSmart Define if the created graph should be smart.
* @return options
*/
public GraphCreateOptions isSmart(final Boolean isSmart) {
Expand Down Expand Up @@ -190,7 +190,7 @@ public Collection<String> getSatellites() {

/**
* @param satellites collection names that will be used to create SatelliteCollections
* for a Hybrid (Disjoint) SmartGraph (Enterprise Edition only). Each array element
* for a Hybrid (Disjoint) SmartGraph. Each array element
* must be a valid collection name. The collection type cannot be modified later.
* @return options
* @since ArangoDB 3.9.0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ public Collection<String> getOptimizeTopK() {
/**
* @param optimizeTopK An array of strings defining sort expressions that you want to optimize.
* @return options
* @since ArangoDB 3.11, Enterprise Edition only
* @since ArangoDB 3.11
*/
public InvertedIndexOptions optimizeTopK(String... optimizeTopK) {
Collections.addAll(this.optimizeTopK, optimizeTopK);
Expand Down Expand Up @@ -373,7 +373,7 @@ public Boolean getCache() {
* are memory-mapped and it is up to the operating system to load them from disk into memory and to
* evict them from memory.
* <p/>
* Default: `false`. (Enterprise Edition only)
* Default: `false`
* @return this
* @since ArangoDB 3.10.2
*/
Expand All @@ -390,7 +390,7 @@ public Boolean getPrimaryKeyCache() {
* @param primaryKeyCache If you enable this option, then the primary key columns are always cached in memory. This
* can improve the performance of queries that return many documents. Otherwise, these values
* are memory-mapped and it is up to the operating system to load them from disk into memory
* and to evict them from memory (Enterprise Edition only). (default: false)
* and to evict them from memory. (default: false)
* @return this
* @since ArangoDB 3.10.2
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public Collection<String> getSatellites() {

/**
* @param satellites collection names that will be used to create SatelliteCollections
* for a Hybrid (Disjoint) SmartGraph (Enterprise Edition only). Each array element
* for a Hybrid (Disjoint) SmartGraph. Each array element
* must be a valid collection name. The collection type cannot be modified later.
* @return options
* @since ArangoDB 3.9.0
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ public ArangoSearchCreateOptions storedValues(final StoredValue... storedValues)
/**
* @param optimizeTopK An array of strings defining sort expressions that you want to optimize.
* @return options
* @since ArangoDB 3.11, Enterprise Edition only
* @since ArangoDB 3.11
*/
public ArangoSearchCreateOptions optimizeTopK(final String... optimizeTopK) {
this.optimizeTopK = Arrays.asList(optimizeTopK);
Expand All @@ -169,7 +169,7 @@ public ArangoSearchCreateOptions optimizeTopK(final String... optimizeTopK) {
* Otherwise, these values are memory-mapped and it is up to the operating system to load
* them from disk into memory and to evict them from memory.
* @return options
* @since ArangoDB 3.9.6, Enterprise Edition only
* @since ArangoDB 3.9.6
*/
public ArangoSearchCreateOptions primarySortCache(final Boolean primarySortCache) {
this.primarySortCache = primarySortCache;
Expand All @@ -182,7 +182,7 @@ public ArangoSearchCreateOptions primarySortCache(final Boolean primarySortCache
* are memory-mapped and it is up to the operating system to load them from disk into memory
* and to evict them from memory.
* @return options
* @since ArangoDB 3.9.6, Enterprise Edition only
* @since ArangoDB 3.9.6
*/
public ArangoSearchCreateOptions primaryKeyCache(final Boolean primaryKeyCache) {
this.primaryKeyCache = primaryKeyCache;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1751,6 +1751,7 @@ void getInfo(ArangoDatabase db) {
@ParameterizedTest
@MethodSource("dbs")
void shouldIncludeExceptionMessage(ArangoDatabase db) {
final String exceptionMessage = "My error context";
final String action = "function (params) {" + "throw '" + exceptionMessage + "';" + "}";
try {
db.transaction(action, Void.class, null);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -686,8 +686,8 @@ void arangoSearchOptions(ArangoDatabaseAsync db) throws ExecutionException, Inte

assertThat(fieldLink.getName()).isEqualTo("f1");
assertThat(fieldLink.getNested()).isNotEmpty();
FieldLink nested = fieldLink.getNested().iterator().next();
assertThat(nested.getName()).isEqualTo("f2");
FieldLink nested2 = fieldLink.getNested().iterator().next();
assertThat(nested2.getName()).isEqualTo("f2");
assertThat(properties.getOptimizeTopK()).containsExactly(optimizeTopK);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -692,8 +692,8 @@ void arangoSearchOptions(ArangoDatabase db) {
assertThat(nested.getName()).isEqualTo("f3");
assertThat(fieldLink.getName()).isEqualTo("f1");
assertThat(fieldLink.getNested()).isNotEmpty();
FieldLink nested = fieldLink.getNested().iterator().next();
assertThat(nested.getName()).isEqualTo("f2");
FieldLink nested2 = fieldLink.getNested().iterator().next();
assertThat(nested2.getName()).isEqualTo("f2");
assertThat(properties.getOptimizeTopK()).containsExactly(optimizeTopK);
}

Expand Down
4 changes: 0 additions & 4 deletions test-functional/src/test/java/com/arangodb/BaseJunit5.java
Original file line number Diff line number Diff line change
Expand Up @@ -214,8 +214,4 @@ public static boolean isCluster() {
return role == ServerRole.COORDINATOR;
}

public static boolean isEnterprise() {
return version.getLicense() == License.ENTERPRISE;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -48,8 +48,8 @@ private void createAnalyzer(String analyzerName, ArangoDatabaseAsync db) throws
}

private InvertedIndexOptions createOptions(String analyzerName) {
Boolean cache = isEnterprise() ? true : null;
Boolean fieldCache = cache != null ? false : null;
Boolean cache = true;
Boolean fieldCache = false;
InvertedIndexField field = new InvertedIndexField()
.name("foo")
.analyzer(AnalyzerType.identity.toString())
Expand Down
Loading