diff --git a/src/kernel_services/ast_queries/json_compilation_database.ml b/src/kernel_services/ast_queries/json_compilation_database.ml
index 5e0124ac2b1d59fb49d71896598f905243a8cec7..875c9431f78bec3d59d337b9d480b0dae38a28fc 100644
--- a/src/kernel_services/ast_queries/json_compilation_database.ml
+++ b/src/kernel_services/ast_queries/json_compilation_database.ml
@@ -242,6 +242,9 @@ let parse_entry jcdb_dir r =
 let compute_flags_from_file () =
   let database = Kernel.JsonCompilationDatabase.get () in
   let jcdb_dir, jcdb_path =
+    if not (Sys.file_exists database) then
+      Kernel.abort "invalid path for option %s: %s"
+        Kernel.JsonCompilationDatabase.option_name database;
     if Sys.is_directory database then
       database, Filename.concat database "compile_commands.json"
     else Filename.dirname database, database