stardog-union/stardog-examples

`query.timeout` value is ignored

kuzeko opened this issue · 1 comments

I'm using stardog in docker, the process is the following:

docker pull stardog/stardog
mkdir -p stardog
docker run -d --name=stardog \
       -v ${PWD}/stardog:/var/opt/stardog \
       -v ${PWD}/data:/data \
       -p 5820:5820 \
       -e STARDOG_SERVER_JAVA_ARGS="-Xmx64g -Xms12g -XX:MaxDirectMemorySize=2g" \
       stardog/stardog

Load Data

docker exec -it stardog /bin/bash

/opt/stardog/bin/stardog-admin db create \
   -v -n mydata @http://rdf.bonsai.uno /data/my_data/*.ttl /data/my_data/*.gz

Configure query timout

docker stop stardog
sudo cp my.system.properties ./stardog/data/db_meta/system.properties
docker start stardog

The content is the following:

compression = 4
wal_enabled = true
force_write_conflict_checking = true
index_strategy.dependency = SPO,,,
index_strategy.dependency = POS,,,
index_strategy.dependency = OSP,,,
index_strategy.dependency = PSO,,,
index_strategy.dependency = SPOC,,,
index_strategy.dependency = POSC,,,
index_strategy.dependency = OSPC,,,
index_strategy.dependency = PSOC,,,
query.timeout=1h

Yet, when I run the query I receive:

{
"message":
    "com.complexible.stardog.plan.eval.operator.OperatorException: Execution time exceeded query timeout 300000",
"code": "QEQOE2"
}

Solved:

I was using a file called $STARDOG/system.properties.
Instead, I shoulduse $STARDOG_HOME/stardog.properties

Additionally, once the database is created, the query.timeout setting is set for it, and to change it the command is required

stardog-admin metadata set -o query.timeout=1h -- myDb

See :
https://community.stardog.com/t/query-timeout-value-is-ignored/2620