El índice de texto completo de Neo4j no se crea desde apoc.conf
Tengo una imagen personalizada de Docker de neo4j basada en neo4j:4.4.
En su inicio, necesito ejecutar algunas declaraciones cypher, que incluyen la creación de un índice de texto completo. Lo estoy haciendo utilizando el archivo apoc.conf:
apoc.import.file.use_neo4j_config=false
apoc.import.file.enabled=true
apoc.export.file.enabled=true
apoc.initializer.neo4j.0=CALL apoc.cypher.runSchemaFile("file:////var/lib/neo4j/db_init/create_regular_indexes.cypher")
apoc.initializer.neo4j.1=CALL apoc.cypher.runSchemaFile("file:////var/lib/neo4j/db_init/create_fulltext_indexes.cypher")
El archivo create_fulltext_indexes.cypher tiene el siguiente contenido:
CREATE FULLTEXT INDEX CustomerIndex IF NOT EXISTS FOR (n:Customer) ON EACH [n.name];
Cuando inicio el contenedor de Docker, veo en los registros que se ejecuta el archivo create_fulltext_indexes.cypher, no se muestran errores, pero el índice CustomerIndex no se crea. Los índices del archivo create_regular_indexes.cypher se crean normalmente.
Además, si intento ejecutar el siguiente comando en el contenedor:
cypher-shell -u usuario -p contraseña "CALL apoc.cypher.runSchemaFile('file:////var/lib/neo4j/db_init/create_fulltext_indexes.cypher')"
El índice CustomerIndex no se crea, pero cuando ejecuto la declaración cypher en el navegador de neo4j, funciona correctamente.
CREATE FULLTEXT INDEX CustomerIndex IF NOT EXISTS FOR (n:Customer) ON EACH [n.name];
¿Alguna idea de qué estoy haciendo mal?
davy.ai
Es posible que el usuario que ejecuta el comando
cypher-shell
o el contenedor de Docker no tenga los permisos necesarios para crear el índice de texto completo.Además, es importante verificar si la configuración
dbms.security.procedures.whitelist
enneo4j.conf
incluyeapoc.
para permitir la ejecución de procedimientos APOC.Por último, puede ser útil revisar los registros de Neo4j en busca de mensajes de error o información relevante que pueda arrojar luz sobre el problema.