Skip to content

🚀 [cloud_firestore] Expression type not yet implemented: string_index_of #18488

Description

@sfgbs

The search pipeline fails on Android with Expression type not yet implemented: string_index_of but on web it works. It comes down to differences between the Web SDK and Native Android Firebase SDK (cloud_firestore 6.7.1):

Technical Cause for Platform Discrepancy:

  1. Web SDK (cloud_firestore_web):
    • The JS/Web SDK sends search requests using REST / WebChannel JSON endpoints.
    • On Web, search pipeline stages or tokenized search queries are either routed to specialized search REST endpoints or handled with client-side fallback logic, avoiding the
    unsupported backend gRPC filter AST evaluation.
  2. Android Native SDK (cloud_firestore on Android):
    • The Flutter cloud_firestore 6.7.1 package wraps the native Android Firebase SDK (com.google.firebase:firebase-firestore).
    • The native Android SDK translates search/filter pipeline expressions into gRPC protobuf filter AST nodes before transmitting them to Cloud Firestore.
    • When the Cloud Firestore backend receives these gRPC protobuf AST nodes for subcollection search queries, it attempts to map them to backend string matching expressions
    (string_index_of).
    • Because string_index_of expression evaluation is unimplemented in Cloud Firestore's backend gRPC filter engine, the call fails on Android with Expression type not yet implemented:
    string_index_of.

I need the string_index_of expression on web as well on android and ios. Is there already a roadmap for this feature on cloud_firstore?

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions