Eventstore Replicator with grpc as a Reader is not working

Hello,

After a couple of years where I managed to always make it work with tcp as a reader, I am now stuck again.

With the recent release of 24.x tcp has been deprecated, I am currently in the process to migrate from 23.x to 24.x.

But for development/debugging it is still useful for me, from time to time to download a backup of the cloud.I have been using the replicator for that purpose, to replicate to a VM to which I have access in order to then download the backup.

I have been wondering if the issue with the grpc reader has been fixed, as in the documentation for the replication there is often the tcp used for the reader, and it is also “advised” to use the TCP: Known limitations | Replicator

Are there still issues with the grpc reader?

I’m a little confused by the title of this post. What exactly is not working? gRPC as a reader is available and works. When it comes to performance, one could say that any improvements in .NET and their support of gRPC will be reflected in EventStoreDB and Replicator. I’d advise you to try it out and use the built-in replicator metrics to see whether it satisfies your needs.

Hello,

thank you for the reply. I will try to expand.
I first noticed this issue and posted about it here a couple of years ago, where I could not get the replicator to work, if the source (reader) was using a gRPC protocol, and the solution was to switch to tcp for the reader.
In the limitations page, in the first paragraph it is said that it is recommended using tcp as a source and gRPC for the sink.

Now I am facing a similar issue where I am not able to make use the EventStore replicator, to replicate from a cloud eventstore instance to a vm on my gcp cloud. My source eventstore instance is on 24.2, hence tcp Is not supported. I tried using gRPC protocol for the source but the replicator just hung there doing nothing. So I had to restore a backup on an older (23.x) instance, in order to make the replicator work with tcp as a source.

Not sure if this explains better my issue.

That being said, from your answer, it seems like you are not aware of any issues in running the replicator with gRPC as both source and sink protocols. I will therefore try again and see if I missed something.

I will post back here once I get some more information, and I will try to get a reproducible example if the replication fails.

Thank you

TCP makes sense for older servers that only speak the TCP protocol.

I tried using gRPC protocol for the source but the replicator just hung there doing nothing

  • Do you have any logging associated with the replicator process when this happens?
  • Are you able to connect to the server/cluster using the gRPC protocol by any other means, e.g. a simple test script/program that uses the same connection string and one of our clients?

Hello,
sorry for not answering, we had a busy period.

For the logs, sadly no, I will try to get an example with a docker compose to see if I can give you a reproducible example.

Regarding being able to connect, I would say yes, as I have the actual application being connected to the instance in the source, and I am able to read fine.

Anyway, I will try to get an example when I have time, in the meantime, thank you for the answer.