Skip to content

Commit

Permalink
Merge pull request #185 from gramian/main
Browse files Browse the repository at this point in the history
Various fixes
  • Loading branch information
lvca authored Aug 4, 2023
2 parents 5832eb7 + d0a98d2 commit 4c28fb0
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 4 deletions.
10 changes: 10 additions & 0 deletions src/main/asciidoc/api/tools.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,16 @@
[[Compatible-Tools]]
=== Compatible Tools

////
==== G.V() [gdotv]
ArcadeDB is fully compatible to https://gdotv.com/[G.V()], thus no particular configurations need to be made.
The only requirement is loading the Gremlin plugin via the server setting:
```
"-Darcadedb.server.plugins=GremlinServer:com.arcadedb.server.gremlin.GremlinServerPlugin"
```
////

==== JetBrains DataGrip/Database Plugin

Connecting via https://www.jetbrains.com/datagrip/[JetBrains DataGrid] database plugin is relatively straightforward.
Expand Down
16 changes: 15 additions & 1 deletion src/main/asciidoc/appendix/settings.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ If you're embedding a server in your Java application you can use these settings
|`profile`|Specify the preferred profile among: default, high-performance, low-ram, low-cpu|String|default
|`test`|Tells if it is running in test mode. This enables the calling of callbacks for testing purpose |Boolean|false
|===

===== SERVER

[%header,cols="20%,55%,10%,15%",stripes=even]
Expand Down Expand Up @@ -135,14 +136,15 @@ If you're embedding a server in your Java application you can use these settings
|`serverMetrics`|True to enable metrics|Boolean|true
|`server.mode`|Server mode between 'development', 'test' and 'production'|String|development
|`server.name`|Server name|String|ArcadeDB_0
|`server.plugins`|List of server plugins to install. The format to load a plugin is: `<pluginName>:<pluginFullClass>`|String|
|`server.plugins`|Server plugins to load, see <<#_available-plugins,available plugins>>. Format as comma separated list of: `<pluginName>:<pluginFullClass>`.|String|
|`server.rootPassword`|Password for root user to use at first startup of the server. Set this to avoid asking the password to the user|String|null
|`server.rootPath`|Root path in the file system where the server is looking for files. By default is the current directory|String|null
|`server.securityAlgorithm`|Default encryption algorithm used for passwords hashing|String|PBKDF2WithHmacSHA256
|`server.securitySaltCacheSize`|Cache size of hashed salt passwords. The cache works as LRU. Use 0 to disable the cache|Integer|64
|`server.saltIterations`|Number of iterations to generate the salt or user password. Changing this setting does not affect stored passwords|Integer|65536
|`server.eventBusQueueSize`|Size of the queue used as a buffer for unserviced database change events.|Integer|1000
|===

===== DATABASE

[%header,cols="20%,55%,10%,15%",stripes=even]
Expand Down Expand Up @@ -176,3 +178,15 @@ If you're embedding a server in your Java application you can use these settings
|`txWalFlush`|Flushes the WAL on disk at commit time. It can be 0 = no flush, 1 = flush without metadata and 2 = full flush (fsync)|Integer|0
|`typeDefaultBuckets`|Default number of buckets to create per type|Integer|8
|===

===== Available Plugins

[%header,cols="2",stripes=even]
|===
| Name | `server.plugins`-String
| Gremlin | `GremlinServer:com.arcadedb.server.gremlin.GremlinServerPlugin`
| MongoDB | `MongoDB:com.arcadedb.mongo.MongoDBProtocolPlugin`
| Postgres | `Postgres:com.arcadedb.postgres.PostgresProtocolPlugin`
| Redis | `Redis:com.arcadedb.redis.RedisProtocolPlugin`
|===

2 changes: 1 addition & 1 deletion src/main/asciidoc/security/secrets.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ by wrapping the `server.sh` script:
```shell
#!/bin/sh

export JAVA_TOOL_OPTIONS="-Darcadedb.server.rootPassword=password0 -Darcadedb.server.defaultDatabases=database1[user1:password1]"
export JAVA_TOOL_OPTIONS="-Darcadedb.server.rootPassword=`cat /path/to/root_secret` -Darcadedb.server.defaultDatabases=database1[user1:`cat /path/to/user_secret`]"
./bin/server.sh 2> >(grep -v "^Picked up JAVA_TOOL_OPTIONS:") &

PID="$!"
Expand Down
13 changes: 11 additions & 2 deletions src/main/asciidoc/sql/SQL-Methods.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -1045,10 +1045,19 @@ Returns the record in JSON format.
Syntax: `&lt;value&gt;.toJSON([&lt;format&gt;])`

Where:

- *format* optional, allows custom formatting rules (separate multiple options by comma).

Rules are the following:
- *rid* to include records's RIDs as attribute "@rid" - *type* to include the type name in the attribute "@type" - *attribSameRow* put all the attributes in the same row - *indent* is the indent level as integer.
By Default no ident is used - *fetchPlan* is the fetching strategy to use while fetching linked records - *alwaysFetchEmbedded* to always fetch embedded records (without considering the fetch plan) - *dateAsLong* to return dates (Date and Datetime types) as long numbers - *prettyPrint* indent the returning JSON in readeable (pretty) way.

- *rid* to include records's RIDs as attribute "@rid"
- *type* to include the type name in the attribute "@type"
- *attribSameRow* put all the attributes in the same row
- *indent* is the indent level as integer. By Default no ident is used
- *fetchPlan* is the fetching strategy to use while fetching linked records
- *alwaysFetchEmbedded* to always fetch embedded records (without considering the fetch plan)
- *dateAsLong* to return dates (Date and Datetime types) as long numbers
- *prettyPrint* indent the returning JSON in readeable (pretty) way.

Applies to the following types:

Expand Down

0 comments on commit 4c28fb0

Please sign in to comment.