Ok. I am able to reproduce the "issue" unless we have a misunderstanding and we are talking about the same thing...
My thick client runs inside a container in a closed network NOT bridged and NOT host. I added a flag to my application that allows it to add the address resolver to the config. 1- If I disable address resolution and I connect with visor to the cluster and try to print detailed statistics for that particular client, visor freezes indefinitely at the Data Region Snapshot. Control C doesn't kill the visor either. It just stuck. This also happens when running the cache command. Just freezes indefinitely. I attached the jstack output to the email but it is also here: https://www.dropbox.com/s/wujcee1gd87gk6o/jstack.out?dl=0 2- If I enable address resolution for the thick client then all the commands work ok. I also see an "Accepted incoming communication connection" log in the client. On Mon, 29 Jun 2020 at 15:30, Ilya Kasnacheev <ilya.kasnach...@gmail.com> wrote: > Hello! > > The easiest way is jstack <process id of visor> > > Regards, > -- > Ilya Kasnacheev > > > пн, 29 июн. 2020 г. в 20:20, John Smith <java.dev....@gmail.com>: > >> How? >> >> On Mon, 29 Jun 2020 at 12:03, Ilya Kasnacheev <ilya.kasnach...@gmail.com> >> wrote: >> >>> Hello! >>> >>> Try collecting thread dump from Visor as it freezes. >>> >>> Regards, >>> -- >>> Ilya Kasnacheev >>> >>> >>> пн, 29 июн. 2020 г. в 18:11, John Smith <java.dev....@gmail.com>: >>> >>>> How though? >>>> >>>> 1- Entered node command >>>> 2- Got list of nodes, including thick clients >>>> 3- Selected thick client >>>> 4- Entered Y for detailed statistics >>>> 5- Snapshot details displayed >>>> 6- Data region stats frozen >>>> >>>> I think the address resolution is working for this as well. I need to >>>> confirm. Because I fixed the resolver as per your solution and visor no >>>> longer freezes on #6 above. >>>> >>>> On Mon, 29 Jun 2020 at 10:54, Ilya Kasnacheev < >>>> ilya.kasnach...@gmail.com> wrote: >>>> >>>>> Hello! >>>>> >>>>> This usually means there's no connectivity between node and Visor. >>>>> >>>>> Regards, >>>>> -- >>>>> Ilya Kasnacheev >>>>> >>>>> >>>>> пн, 29 июн. 2020 г. в 17:01, John Smith <java.dev....@gmail.com>: >>>>> >>>>>> Also I think for Visor as well? >>>>>> >>>>>> When I do top or node commands, I can see the thick client. But when >>>>>> I look at detailed statistics for that particular thick client it freezes >>>>>> "indefinitely". Regular statistics it seems ok. >>>>>> >>>>>> On Mon, 29 Jun 2020 at 08:08, Ilya Kasnacheev < >>>>>> ilya.kasnach...@gmail.com> wrote: >>>>>> >>>>>>> Hello! >>>>>>> >>>>>>> For thick clients, you need both 47100 and 47500, both directions >>>>>>> (perhaps for 47500 only client -> server is sufficient, but for 47100, >>>>>>> both >>>>>>> are needed). >>>>>>> >>>>>>> For thin clients, 10800 is enough. For control.sh, 11211. >>>>>>> >>>>>>> Regards, >>>>>>> -- >>>>>>> Ilya Kasnacheev >>>>>>> >>>>>>> >>>>>>> пт, 26 июн. 2020 г. в 22:06, John Smith <java.dev....@gmail.com>: >>>>>>> >>>>>>>> I'm askin in separate question so people can search for it if they >>>>>>>> ever come across this... >>>>>>>> >>>>>>>> My server nodes are started as and I also connect the client as >>>>>>>> such. >>>>>>>> >>>>>>>> <bean >>>>>>>> class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder"> >>>>>>>> <property name="addresses"> >>>>>>>> <list> >>>>>>>> <value>foo:47500</value> >>>>>>>> ... >>>>>>>> </list> >>>>>>>> </property> >>>>>>>> </bean> >>>>>>>> >>>>>>>> In my client code I used the basic address resolver >>>>>>>> >>>>>>>> And I put in the map >>>>>>>> >>>>>>>> "{internalHostIP}:47500", "{externalHostIp}:{externalPort}" >>>>>>>> >>>>>>>> igniteConfig.setAddressResolver(addrResolver); >>>>>>>> >>>>>>>> >>>>>>>> QUESTIONS >>>>>>>> ___________________ >>>>>>>> >>>>>>>> 1- Port 47500 is used for discovery only? >>>>>>>> 2- Port 47100 is used for actual coms to the nodes? >>>>>>>> 3- In my container environment I have only mapped 47100, do I also >>>>>>>> need to map for 47500 for the Tcp Discovery SPI? >>>>>>>> 4- When I connect with Visor and I try to look at details for the >>>>>>>> client node it blocks. I'm assuming that's because visor cannot connect >>>>>>>> back to the client at 47100? >>>>>>>> Se logs below >>>>>>>> >>>>>>>> LOGS >>>>>>>> ___________________ >>>>>>>> >>>>>>>> When I look at the client logs I get... >>>>>>>> >>>>>>>> IgniteConfiguration [ >>>>>>>> igniteInstanceName=xxxxxx, >>>>>>>> ... >>>>>>>> discoSpi=TcpDiscoverySpi [ >>>>>>>> addrRslvr=null, <--- Do I need to use BasicResolver or here??? >>>>>>>> ... >>>>>>>> commSpi=TcpCommunicationSpi [ >>>>>>>> ... >>>>>>>> locAddr=null, >>>>>>>> locHost=null, >>>>>>>> locPort=47100, >>>>>>>> addrRslvr=null, <--- Do I need to use BasicResolver or here??? >>>>>>>> ... >>>>>>>> ], >>>>>>>> ... >>>>>>>> addrRslvr=BasicAddressResolver [ >>>>>>>> inetAddrMap={}, >>>>>>>> inetSockAddrMap={/internalIp:47100=/externalIp:2389} <---- >>>>>>>> ], >>>>>>>> ... >>>>>>>> clientMode=true, >>>>>>>> ... >>>>>>>> >>>>>>>> >>>>>>>>
jstack.out
Description: Binary data