microsoft / service-fabric

Service Fabric is a distributed systems platform for packaging, deploying, and managing stateless and stateful distributed applications and containers at large scale.
https://docs.microsoft.com/en-us/azure/service-fabric/
MIT License
3.02k stars 399 forks source link

[BUG] - Unable to call methods of a .net framework stateful service from an .net core Actor service within the service fabric cluster #1236

Open sidamr35 opened 3 years ago

sidamr35 commented 3 years ago

I already have up an running .net frameowrk (4.6.1) stateful service which has multiple methods consumed over remoting by other .net framwork services within the cluster using the Service Proxy method as shown below :

string SharedStateServiceUri = Environment.GetEnvironmentVariable("Fabric_ApplicationName") + "/SharedState.xxx.xxx.Net"; ISharedState stateProxy = ServiceProxy.Create(new System.Uri(SharedStateServiceUri),new ServicePartitionKey(1)); List clientActivity = await stateProxy.GetClientActivity();

This works fine but this technique does not work when I try to do the same thing from an .net Core 2.1 Actor Service and I get the following run time error :

NamedEndpoint 'V2_1Listener' not found in the address '{"Endpoints":{"":"MYSERVER.mydomain.local:30124+b29b429e-8401-41d0-a0ce-b76f9df3aaad-132708067723795630-191c51e8-b428-41bc-8a05-89e4aba36f6c"}}' for partition 'b29b429e-8401-41d0-a0ce-b76f9df3aaad'

I have tried using the following attributes on the IsharedState interface to make this work : [assembly: FabricTransportServiceRemotingProvider(RemotingListenerVersion = RemotingListenerVersion.V2_1, RemotingClientVersion = RemotingClientVersion.V2_1)]

[assembly: FabricTransportServiceRemotingProvider(RemotingListenerVersion = RemotingListenerVersion.V2, RemotingClientVersion = RemotingClientVersion.V2)]

[assembly: FabricTransportActorRemotingProvider(RemotingListenerVersion = RemotingListenerVersion.V2_1, RemotingClientVersion = RemotingClientVersion.V2_1)]

but nothing changed. Please note that my SharedState manifest xml already has the following endpoints :

Endpoint Name="ServiceEndpoint" Endpoint Name="ServiceEndpointV2" Endpoint Name="ServiceEndpointV2_1"

Any help on this will be much appreciated.

Thanks, Sid

sidamr35 commented 3 years ago

I am still facing the same problem. Can any one help on this ?