Istio 1.5.4 sometime communication to svc in other ns does not work

I have a problem with istio version 1.5.4
I have 2 namespaces say NS_A and NS_B and both of them has a service with serviceRole (that allows access from NS_A to NS_B) deployed. I have a java client in NS_A that curls to a service in NS_B (curl svc-b.NS_B) it works but after sometime it does not work (connection_reset). Same mechanism always works in istio 1.2.2
For istio 1.5.4, only java client fails to curl however some other pod in NS_A is able to talk to service in NS_B but the same java client always works in cluster with istio 1.2.2 (I’m sure that java client is always fine). Istiod is always running

istio-proxy logs
[Envoy (Epoch 0)] [info][upstream] [external/envoy/source/common/upstream/] add/update cluster 'outbound|9090||svc-b.NS_B.svc.cluster.local'

Help would be appreciated