Skip to content

No suitable object store found for *** #2136

Description

@ZhangqyTJ

I found this issue when trying to add s3-objectstore:
I use the ctx.runtime_env().register_object_store() method to register the objectstore into the SessionContext, but I can't get the objectstore through get_by_uri() in the Scheduler.
Exception: No suitable object store found for ***

This exception can be reproduced using LocalFileSystem.
Reproduced method: ObjectStoreRegistry does not store LocalFileSystem when it is created, and registers LocalFileSystem in ObjectStoreRegistry.object_stores through the register_object_store() method. Run tpch-benchmark-ballista, the path parameter format is file://***/***

step

  1. Delete line 58 of object_store_registry.rs "map.insert(LOCAL_SCHEME.to_string(), Arc::new(LocalFileSystem));"
  2. Delete lines 243 and 244 of ballista/rust/client/src/context.rs and add "ctx.runtime_env().register_object_store("file",Arc::new(LocalFileSystem{}));" in line 245 under
  3. According to the "Ballista Benchmarks" content of benchmarks/README.md, start Scheduler and Executor, and execute the benchmark command: cargo run --bin tpch --release benchmark ballista **** --path file://*** /***
    The exception is thrown as:
    [2022-04-02T05:45:26Z ERROR ballista_scheduler::scheduler_server::grpc] Could not parse logical plan protobuf: Not implemented: No object store is registered for path file://E:/datafusion/lineitem.tbl: Internal ("No suitable object store found for file")

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions