graphprotocol / graphprotocol/graph-node

full text search not working on string array fields

Aperta
#1,818 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

area/graphql validation
Lingua principale
Rust
Stelle
3.2k
Fork
1.1k
Merge medio
4g 1h
PR unite (30g)
1

Descrizione

Hi, I am trying to implement a full text search on a one entity called File and it has a few fields which are arrays of strings. Right now if I implement the subgraph including these fields, it won't throw any compile errors but the search won't work and the subgraph itself stuck on the startup(start block). I waited for an hour and it didn't sync further.
This is the query I did :

type _Schema_
    @fulltext(
        name: "fileSearch"
        language: en
        algorithm: rank
        include: [
            {
                entity: "File"
                fields: [
                    { name: "title" }
                    { name: "artistNames" }
                    { name: "description" }
                    { name: "tags" }
                ]
            }
        ]
    )

Now if I remove fields artistNames and tags, in less than a few minutes it syncs many blocks and search also works fine.
The new search will look like this :

type _Schema_
    @fulltext(
        name: "fileSearch"
        language: en
        algorithm: rank
        include: [
            {
                entity: "File"
                fields: [{ name: "title" }, { name: "description" }]
            }
        ]
    )

I think even if searching string arrays is not implemented, at least there should be an error during the compile time.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Riproduci la configurazione di ricerca full-text segnalata con campi array di stringhe come artistNames e tags, quindi confrontala con la configurazione funzionante che contiene solo title e description. Traccia la gestione dello schema di ricerca full-text e il comportamento della sincronizzazione all'avvio. Il lavoro è completo quando i campi array non supportati vengono rifiutati chiaramente in fase di compilazione oppure quando la ricerca e la sincronizzazione funzionano correttamente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
graphql, rust
Ambito
backend, search
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.