diff --git a/.env b/.env index 372bfd7baa..f5078ab152 100644 --- a/.env +++ b/.env @@ -84,6 +84,9 @@ _APP_LOGGING_CONFIG= _APP_GRAPHQL_MAX_BATCH_SIZE=10 _APP_GRAPHQL_MAX_COMPLEXITY=250 _APP_GRAPHQL_MAX_DEPTH=3 +_APP_SLOW_QUERIES_MAX_HITS=2 +_APP_SLOW_QUERIES_TIMEOUT=200 +_APP_SLOW_QUERIES=1 DOCKERHUB_PULL_USERNAME= DOCKERHUB_PULL_PASSWORD= DOCKERHUB_PULL_EMAIL= \ No newline at end of file diff --git a/app/controllers/api/databases.php b/app/controllers/api/databases.php index 40b6394772..236e1f0122 100644 --- a/app/controllers/api/databases.php +++ b/app/controllers/api/databases.php @@ -213,7 +213,7 @@ App::error() ]))); } else { $document['count']++; - $max = App::getEnv('_APP_SLOW_QUERIES_MAX_HITS', 2); // todo: set default value + $max = App::getEnv('_APP_SLOW_QUERIES_MAX_HITS', 99999); // todo: set default value if ($document['count'] > $max) { $document['blocked'] = true; } @@ -2119,7 +2119,7 @@ App::get('/v1/databases/:databaseId/collections/:collectionId/documents') } $filterQueries = Query::groupByType($queries)['filters']; - $timeout = 200; // todo: make this configurable + $timeout = App::getEnv('_APP_SLOW_QUERIES') === '1' ? App::getEnv('_APP_SLOW_QUERIES_TIMEOUT') : null; if ($documentSecurity && !$valid) { $documents = $dbForProject->find('database_' . $database->getInternalId() . '_collection_' . $collection->getInternalId(), $queries, $timeout);