Nicholas DiPiazza created TIKA-4594:
---------------------------------------
Summary: PipesServer does not share ConfigStore with gRPC server
causing runtime fetcher/emitter configs to be unavailable
Key: TIKA-4594
URL: https://issues.apache.org/jira/browse/TIKA-4594
Project: Tika
Issue Type: Bug
Reporter: Nicholas DiPiazza
When using tika-grpc, fetchers and emitters saved via the gRPC
saveFetcher/saveEmitter endpoints are not available to the forked PipesServer
workers because they use separate ConfigStore instances.
The TikaGrpcServerImpl creates a ConfigStore from the PipesConfig, but
PipesServer.initializeResources() loads FetcherManager and EmitterManager
without passing a ConfigStore, so they create separate in-memory ConfigStores.
This causes fetchAndParse requests to fail with FetcherNotFoundException even
after successfully calling saveFetcher.
The fix is to make PipesServer create and use the same type of ConfigStore
(from PipesConfig) that TikaGrpcServerImpl uses, so both processes can share
the runtime configurations.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)