geode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From John Blum <jb...@pivotal.io>
Subject Re: Pulse is giving stale view of cluster -- lost updates
Date Fri, 22 Feb 2019 05:56:53 GMT
Hi Dharam-

I am testing with *Apache Geode 1.8.0*, now.

To modify your application POM to get Apache Geode 1.8.0 libs, you do not
need any exclusions; you simply define...

<properties>
  <geode.version>1.8.0</geode.version>
  ...
</properties>

And then declare a dependencyManagement section as follows:

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.apache.geode</groupId>
      <artifactId>geode-core</artifactId>
      <version>${geode.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.geode</groupId>
      <artifactId>geode-cq</artifactId>
      <version>${geode.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.geode</groupId>
      <artifactId>geode-lucene</artifactId>
      <version>${geode.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.geode</groupId>
      <artifactId>geode-wan</artifactId>
      <version>${geode.version}</version>
    </dependency>
  </dependencies>
</dependencyManagement>

I will respond again when I complete my testing.  Should not take long.

Regards,
John



On Thu, Feb 21, 2019 at 9:44 PM Dharam Thacker <dharamthacker88@gmail.com>
wrote:

>
> Note: Apologies as I sent previous e-mail without completing it.
>
> Apache Geode 1.8.0 has below as well.
> *[debug 2019/02/16 19:41:46.500 IST <main> tid=0x1] Management Service
> Could not initialise hence closing*
>
> Above statement is not present in Apache geode 1.6.0.
>
> How do I use Apache geode 1.8.0?
>
> geode.version = 1.8.0 (Manual override in POM with exclusions and
> inclusions)
>     <dependency>
> <groupId>org.springframework.data</groupId>
> <artifactId>spring-data-geode</artifactId>
>    <exclusions>
> <exclusion>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-core</artifactId>
> </exclusion>
> <exclusion>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-cq</artifactId>
> </exclusion>
> <exclusion>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-wan</artifactId>
> </exclusion>
> <exclusion>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-lucene</artifactId>
> </exclusion>
> </exclusions>
> </dependency>
>
> <dependency>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-core</artifactId>
> <version>${geode.version}</version>
> </dependency>
>
> <dependency>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-cq</artifactId>
> <version>${geode.version}</version>
> </dependency>
>
> <dependency>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-lucene</artifactId>
> <version>${geode.version}</version>
> </dependency>
>
> <dependency>
> <groupId>org.apache.geode</groupId>
> <artifactId>geode-wan</artifactId>
> <version>${geode.version}</version>
> </dependency>
>
> Thanks,
> - Dharam Thacker
>
>
> On Fri, Feb 22, 2019 at 10:56 AM Dharam Thacker <dharamthacker88@gmail.com>
> wrote:
>
>> Ho John/Jens,
>>
>> Ok, so this works fine with *Apache geode 1.6.0. *But I am sure,
>> something has changed between *Apache geode 1.6.0* & *Apache geode 1.8.0
>> *in code from "Management service" related files.
>>
>> Let me explain difference in logs with DEBUG level with exactly same
>> project I shared. Please take a look at highlighted texts.
>>
>> *Apache geode 1.6.0*
>>
>> [info 2019/02/22 10:22:00.292 IST <main> tid=1] *Starting membership
>> services*
>>
>> [debug 2019/02/22 10:22:00.292 IST <main> tid=1] starting Authenticator
>>
>> [debug 2019/02/22 10:22:00.293 IST <main> tid=1] starting Messenger
>>
>> [debug 2019/02/22 10:22:00.293 IST <main> tid=1] JGroups configuration:
>> <config xmlns="urn:org:jgroups"  xmlns:xsi="
>> http://www.w3.org/2001/XMLSchema-instance"
>> xsi:schemaLocation="urn:org:jgroups
>> http://www.jgroups.org/schema/jgroups.xsd"><org.apache.geode.distributed.internal.membership.gms.messenger.Transport
>> bind_addr="192.168.31.62"  bind_port="1024"  port_range="64511"
>> mcast_port="0"  tos="16"  ip_mcast="false"  ignore_dont_bundle="false"
>> ucast_recv_buf_size="65535"  ucast_send_buf_size="65535"
>> thread_naming_pattern="UDP Message Handler"  enable_batching="false"
>> enable_diagnostics="false"  disable_loopback="false"    timer_type="new3"
>> timer.min_threads="1"  timer.max_threads="4"  timer.keep_alive_time="3000"
>> timer.queue_max_size="500"  thread_pool.enabled="false"
>> thread_pool.min_threads="1"  thread_pool.max_threads="4"
>> thread_pool.keep_alive_time="5000"  thread_pool.queue_enabled="true"
>> thread_pool.queue_max_size="10000"  thread_pool.rejection_policy="discard"
>> oob_thread_pool.enabled="false"  oob_thread_pool.min_threads="1"
>> oob_thread_pool.max_threads="4"  oob_thread_pool.keep_alive_time="5000"
>> oob_thread_pool.queue_enabled="false"
>> oob_thread_pool.queue_max_size="100"
>> oob_thread_pool.rejection_policy="discard"
>> /><org.apache.geode.distributed.internal.membership.gms.messenger.AddressManager/><org.apache.geode.distributed.internal.membership.gms.messenger.StatRecorder/><UNICAST3
>> xmit_interval="500"  xmit_table_num_rows="100"
>> xmit_table_msgs_per_row="2000"  xmit_table_max_compaction_time="60000"
>> conn_expiry_timeout="0"  max_msg_batch_size="500"/><UFC
>> max_credits="1048576"  min_threshold="0.25"  max_block_time="5000"/><FRAG2
>> frag_size="60000"/></config>
>>
>> [debug 2019/02/22 10:22:00.293 IST <main> tid=1] forcing JGroups to think
>> IPv4 is being used so it will choose an IPv4 address
>>
>> [debug 2019/02/22 10:22:00.380 IST <main> tid=1] sockets will use
>> interface 192.168.31.62
>>
>> [debug 2019/02/22 10:22:00.383 IST <main> tid=1] socket information:
>> mcast_addr=null, bind_addr=/192.168.31.62, ttl=8
>> sock: bound to 192.168.31.62:1026, receive buffer size=65535, send
>> buffer size=65535
>>
>> [info 2019/02/22 10:22:00.389 IST <main> tid=1] JGroups channel created
>> (took 96ms)
>>
>> [debug 2019/02/22 10:22:00.390 IST <main> tid=1] starting JoinLeave
>>
>> [debug 2019/02/22 10:22:00.390 IST <main> tid=1] starting HealthMonitor
>>
>> [debug 2019/02/22 10:22:00.393 IST <main> tid=1] starting Manager
>>
>> [info 2019/02/22 10:22:00.404 IST <main> tid=1] GemFire P2P Listener
>> started on /192.168.31.62:62359
>>
>> [debug 2019/02/22 10:22:00.405 IST <main> tid=1] SSL Configuration:
>>   ssl-enabled = false
>>
>>
>> [info 2019/02/22 10:22:00.406 IST <Geode Failure Detection Server thread
>> 0> tid=30] Started failure detection server thread on /
>> 192.168.31.62:27763.
>>
>> [debug 2019/02/22 10:22:00.408 IST <main> tid=1] *All membership
>> services have been started*
>>
>> *Apache geode 1.8.0*
>>
>> [info 2019/02/16 19:41:44.801 IST <main> tid=0x1] *Starting membership
>> services*
>>
>> [debug 2019/02/16 19:41:44.802 IST <main> tid=0x1] starting Authenticator
>>
>> [debug 2019/02/16 19:41:44.802 IST <main> tid=0x1] starting Messenger
>>
>> [debug 2019/02/16 19:41:44.802 IST <main> tid=0x1] JGroups configuration:
>> <config xmlns="urn:org:jgroups"  xmlns:xsi="
>> http://www.w3.org/2001/XMLSchema-instance"
>> xsi:schemaLocation="urn:org:jgroups
>> http://www.jgroups.org/schema/jgroups.xsd"><org.apache.geode.distributed.internal.membership.gms.messenger.Transport
>> bind_addr="127.0.1.1"  bind_port="41000"  port_range="20000"
>> mcast_port="0"  tos="16"  ip_mcast="false"  ignore_dont_bundle="false"
>> ucast_recv_buf_size="65535"  ucast_send_buf_size="65535"
>> thread_naming_pattern="UDP Message Handler"  enable_batching="false"
>> enable_diagnostics="false"  disable_loopback="false"    timer_type="new3"
>> timer.min_threads="1"  timer.max_threads="4"  timer.keep_alive_time="3000"
>> timer.queue_max_size="500"  thread_pool.enabled="false"
>> thread_pool.min_threads="1"  thread_pool.max_threads="4"
>> thread_pool.keep_alive_time="5000"  thread_pool.queue_enabled="true"
>> thread_pool.queue_max_size="10000"  thread_pool.rejection_policy="discard"
>> oob_thread_pool.enabled="false"  oob_thread_pool.min_threads="1"
>> oob_thread_pool.max_threads="4"  oob_thread_pool.keep_alive_time="5000"
>> oob_thread_pool.queue_enabled="false"
>> oob_thread_pool.queue_max_size="100"
>> oob_thread_pool.rejection_policy="discard"
>> /><org.apache.geode.distributed.internal.membership.gms.messenger.AddressManager/><org.apache.geode.distributed.internal.membership.gms.messenger.StatRecorder/><UNICAST3
>> xmit_interval="500"  xmit_table_num_rows="100"
>> xmit_table_msgs_per_row="2000"  xmit_table_max_compaction_time="60000"
>> conn_expiry_timeout="0"  max_msg_batch_size="500"/><UFC
>> max_credits="1048576"  min_threshold="0.25"  max_block_time="5000"/><FRAG2
>> frag_size="60000"/></config>
>>
>> [debug 2019/02/16 19:41:44.802 IST <main> tid=0x1] forcing JGroups to
>> think IPv4 is being used so it will choose an IPv4 address
>>
>> [debug 2019/02/16 19:41:44.913 IST <main> tid=0x1] sockets will use
>> interface 127.0.1.1
>>
>> [error 2019/02/16 19:41:44.916 IST <main> tid=0x1] failed setting
>> interface to /127.0.1.1: java.net.SocketException: bad argument for
>> IP_MULTICAST_IF: address not bound to any interface
>> java.net.SocketException: bad argument for IP_MULTICAST_IF: address not
>> bound to any interface
>> at java.net.PlainDatagramSocketImpl.socketSetOption0(Native Method)
>> at
>> java.net.PlainDatagramSocketImpl.socketSetOption(PlainDatagramSocketImpl.java:74)
>> at
>> java.net.AbstractPlainDatagramSocketImpl.setOption(AbstractPlainDatagramSocketImpl.java:309)
>> at java.net.MulticastSocket.setInterface(MulticastSocket.java:471)
>> at org.jgroups.protocols.UDP.setInterface(UDP.java:443)
>> at org.jgroups.protocols.UDP.createMulticastSocket(UDP.java:511)
>> at
>> org.jgroups.protocols.UDP.createMulticastSocketWithBindPort(UDP.java:494)
>> at org.jgroups.protocols.UDP.createSockets(UDP.java:348)
>> at org.jgroups.protocols.UDP.start(UDP.java:266)
>> at org.jgroups.stack.ProtocolStack.startStack(ProtocolStack.java:966)
>> at org.jgroups.JChannel.startStack(JChannel.java:889)
>> at org.jgroups.JChannel._preConnect(JChannel.java:553)
>> at org.jgroups.JChannel.connect(JChannel.java:288)
>> at org.jgroups.JChannel.connect(JChannel.java:279)
>> at
>> org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger.start(JGroupsMessenger.java:349)
>> at
>> org.apache.geode.distributed.internal.membership.gms.Services.start(Services.java:146)
>> at
>> org.apache.geode.distributed.internal.membership.gms.GMSMemberFactory.newMembershipManager(GMSMemberFactory.java:105)
>> at
>> org.apache.geode.distributed.internal.membership.MemberFactory.newMembershipManager(MemberFactory.java:90)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.<init>(ClusterDistributionManager.java:771)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.<init>(ClusterDistributionManager.java:889)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:533)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:769)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:362)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:350)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:342)
>> at
>> org.apache.geode.distributed.DistributedSystem.connect(DistributedSystem.java:215)
>> at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:218)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.createCache(CacheFactoryBean.java:470)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.resolveCache(CacheFactoryBean.java:324)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.init(CacheFactoryBean.java:268)
>> at java.util.Optional.orElseGet(Optional.java:267)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.getObject(CacheFactoryBean.java:796)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.getObject(CacheFactoryBean.java:108)
>> at
>> org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:171)
>> at
>> org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:101)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1674)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getObjectForBeanInstance(AbstractAutowireCapableBeanFactory.java:1216)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:330)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
>> at
>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:367)
>> at
>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1648)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1400)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:575)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320)
>> at
>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
>> at
>> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:827)
>> at
>> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:863)
>> at
>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546)
>> at
>> org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775)
>> at
>> org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:316)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)
>> at com.example.demo.DemoApplication.main(DemoApplication.java:24)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:498)
>> at
>> org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
>> at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
>>
>> [error 2019/02/16 19:41:44.917 IST <main> tid=0x1] failed setting
>> interface to /127.0.1.1: java.net.SocketException: bad argument for
>> IP_MULTICAST_IF: address not bound to any interface
>> java.net.SocketException: bad argument for IP_MULTICAST_IF: address not
>> bound to any interface
>> at java.net.PlainDatagramSocketImpl.socketSetOption0(Native Method)
>> at
>> java.net.PlainDatagramSocketImpl.socketSetOption(PlainDatagramSocketImpl.java:74)
>> at
>> java.net.AbstractPlainDatagramSocketImpl.setOption(AbstractPlainDatagramSocketImpl.java:309)
>> at java.net.MulticastSocket.setInterface(MulticastSocket.java:471)
>> at org.jgroups.protocols.UDP.setInterface(UDP.java:443)
>> at org.jgroups.protocols.UDP.createMulticastSocket(UDP.java:511)
>> at
>> org.jgroups.protocols.UDP.createMulticastSocketWithBindPort(UDP.java:494)
>> at org.jgroups.protocols.UDP.createSockets(UDP.java:348)
>> at org.jgroups.protocols.UDP.start(UDP.java:266)
>> at org.jgroups.stack.ProtocolStack.startStack(ProtocolStack.java:966)
>> at org.jgroups.JChannel.startStack(JChannel.java:889)
>> at org.jgroups.JChannel._preConnect(JChannel.java:553)
>> at org.jgroups.JChannel.connect(JChannel.java:288)
>> at org.jgroups.JChannel.connect(JChannel.java:279)
>> at
>> org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger.start(JGroupsMessenger.java:349)
>> at
>> org.apache.geode.distributed.internal.membership.gms.Services.start(Services.java:146)
>> at
>> org.apache.geode.distributed.internal.membership.gms.GMSMemberFactory.newMembershipManager(GMSMemberFactory.java:105)
>> at
>> org.apache.geode.distributed.internal.membership.MemberFactory.newMembershipManager(MemberFactory.java:90)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.<init>(ClusterDistributionManager.java:771)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.<init>(ClusterDistributionManager.java:889)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:533)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:769)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:362)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:350)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:342)
>> at
>> org.apache.geode.distributed.DistributedSystem.connect(DistributedSystem.java:215)
>> at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:218)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.createCache(CacheFactoryBean.java:470)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.resolveCache(CacheFactoryBean.java:324)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.init(CacheFactoryBean.java:268)
>> at java.util.Optional.orElseGet(Optional.java:267)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.getObject(CacheFactoryBean.java:796)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.getObject(CacheFactoryBean.java:108)
>> at
>> org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:171)
>> at
>> org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:101)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1674)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getObjectForBeanInstance(AbstractAutowireCapableBeanFactory.java:1216)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:330)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
>> at
>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:367)
>> at
>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1648)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1400)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:575)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320)
>> at
>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
>> at
>> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:827)
>> at
>> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:863)
>> at
>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546)
>> at
>> org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775)
>> at
>> org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:316)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)
>> at com.example.demo.DemoApplication.main(DemoApplication.java:24)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:498)
>> at
>> org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
>> at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
>>
>> [error 2019/02/16 19:41:44.918 IST <main> tid=0x1] failed setting
>> interface to /127.0.1.1: java.net.SocketException: bad argument for
>> IP_MULTICAST_IF: address not bound to any interface
>> java.net.SocketException: bad argument for IP_MULTICAST_IF: address not
>> bound to any interface
>> at java.net.PlainDatagramSocketImpl.socketSetOption0(Native Method)
>> at
>> java.net.PlainDatagramSocketImpl.socketSetOption(PlainDatagramSocketImpl.java:74)
>> at
>> java.net.AbstractPlainDatagramSocketImpl.setOption(AbstractPlainDatagramSocketImpl.java:309)
>> at java.net.MulticastSocket.setInterface(MulticastSocket.java:471)
>> at org.jgroups.protocols.UDP.setInterface(UDP.java:443)
>> at org.jgroups.protocols.UDP.createMulticastSocket(UDP.java:511)
>> at
>> org.jgroups.protocols.UDP.createMulticastSocketWithBindPort(UDP.java:494)
>> at org.jgroups.protocols.UDP.createSockets(UDP.java:348)
>> at org.jgroups.protocols.UDP.start(UDP.java:266)
>> at org.jgroups.stack.ProtocolStack.startStack(ProtocolStack.java:966)
>> at org.jgroups.JChannel.startStack(JChannel.java:889)
>> at org.jgroups.JChannel._preConnect(JChannel.java:553)
>> at org.jgroups.JChannel.connect(JChannel.java:288)
>> at org.jgroups.JChannel.connect(JChannel.java:279)
>> at
>> org.apache.geode.distributed.internal.membership.gms.messenger.JGroupsMessenger.start(JGroupsMessenger.java:349)
>> at
>> org.apache.geode.distributed.internal.membership.gms.Services.start(Services.java:146)
>> at
>> org.apache.geode.distributed.internal.membership.gms.GMSMemberFactory.newMembershipManager(GMSMemberFactory.java:105)
>> at
>> org.apache.geode.distributed.internal.membership.MemberFactory.newMembershipManager(MemberFactory.java:90)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.<init>(ClusterDistributionManager.java:771)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.<init>(ClusterDistributionManager.java:889)
>> at
>> org.apache.geode.distributed.internal.ClusterDistributionManager.create(ClusterDistributionManager.java:533)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.initialize(InternalDistributedSystem.java:769)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:362)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:350)
>> at
>> org.apache.geode.distributed.internal.InternalDistributedSystem.newInstance(InternalDistributedSystem.java:342)
>> at
>> org.apache.geode.distributed.DistributedSystem.connect(DistributedSystem.java:215)
>> at org.apache.geode.cache.CacheFactory.create(CacheFactory.java:218)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.createCache(CacheFactoryBean.java:470)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.resolveCache(CacheFactoryBean.java:324)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.init(CacheFactoryBean.java:268)
>> at java.util.Optional.orElseGet(Optional.java:267)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.getObject(CacheFactoryBean.java:796)
>> at
>> org.springframework.data.gemfire.CacheFactoryBean.getObject(CacheFactoryBean.java:108)
>> at
>> org.springframework.beans.factory.support.FactoryBeanRegistrySupport.doGetObjectFromFactoryBean(FactoryBeanRegistrySupport.java:171)
>> at
>> org.springframework.beans.factory.support.FactoryBeanRegistrySupport.getObjectFromFactoryBean(FactoryBeanRegistrySupport.java:101)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getObjectForBeanInstance(AbstractBeanFactory.java:1674)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getObjectForBeanInstance(AbstractAutowireCapableBeanFactory.java:1216)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:330)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
>> at
>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:367)
>> at
>> org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:110)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1648)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1400)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:575)
>> at
>> org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:498)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:320)
>> at
>> org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:318)
>> at
>> org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:199)
>> at
>> org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:827)
>> at
>> org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:863)
>> at
>> org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:546)
>> at
>> org.springframework.boot.SpringApplication.refresh(SpringApplication.java:775)
>> at
>> org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:316)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1260)
>> at
>> org.springframework.boot.SpringApplication.run(SpringApplication.java:1248)
>> at com.example.demo.DemoApplication.main(DemoApplication.java:24)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>> at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>> at java.lang.reflect.Method.invoke(Method.java:498)
>> at
>> org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
>> at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
>> at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:51)
>>
>> [debug 2019/02/16 19:41:44.920 IST <main> tid=0x1] socket information:
>> mcast_addr=null, bind_addr=/127.0.1.1, ttl=8
>> sock: bound to 127.0.1.1:41002, receive buffer size=65535, send buffer
>> size=65535
>>
>> [info 2019/02/16 19:41:44.926 IST <main> tid=0x1] JGroups channel created
>> (took 123ms)
>>
>> [debug 2019/02/16 19:41:44.926 IST <main> tid=0x1] starting JoinLeave
>>
>> [debug 2019/02/16 19:41:44.926 IST <main> tid=0x1] starting HealthMonitor
>>
>> [debug 2019/02/16 19:41:44.928 IST <main> tid=0x1] starting Manager
>>
>> [info 2019/02/16 19:41:44.939 IST <main> tid=0x1] GemFire P2P Listener
>> started on /127.0.1.1:58408
>>
>> [debug 2019/02/16 19:41:44.940 IST <main> tid=0x1] SSL Configuration:
>>   ssl-enabled = false
>>
>>
>> [info 2019/02/16 19:41:44.941 IST <Geode Failure Detection Server thread
>> 1> tid=0x1f] Started failure detection server thread on /127.0.1.1:59926.
>>
>> [debug 2019/02/16 19:41:44.942 IST <main> tid=0x1] *All membership
>> services have been started*
>>
>>
>>
>> - Dharam Thacker
>>
>>
>> On Fri, Feb 22, 2019 at 1:23 AM John Blum <jblum@pivotal.io> wrote:
>>
>>> Dharam-
>>>
>>> Before I delve into more details on Pulse, I want to cover 1 other
>>> scenario, and that is, configuring and launcher a GemFire Server using
>>> GemFire's API, such as with the comparable class (to the Spring class I
>>> reference earlier), here (
>>> https://github.com/jxblum/spring-session-data-gemfire-serialization-example/blob/master/native-gemfire-server/src/main/java/example/app/gemfire/server/NativeGemFireServerApplication.java
>>> ).
>>>
>>> So, what do you think happens when you try to use *Gfsh* with this
>>> class, a GemFire API based class, no less?  Let's see, shall we.
>>>
>>>
>>> gfsh>connect
>>>
>>> Connecting to Locator at [host=localhost, port=10334] ..
>>>
>>> Connecting to Manager at [host=10.99.199.24, port=1099] ..
>>>
>>> Successfully connected to: [host=10.99.199.24, port=1099]
>>>
>>>
>>>
>>> gfsh>list members
>>>
>>>                  Name                   | Id
>>>
>>> --------------------------------------- |
>>> --------------------------------------------------------------------------------------
>>>
>>> NativeSessionGemFireSerializationServer |
>>> 10.99.199.24(NativeSessionGemFireSerializationServer:94332)<ec><v0>:1024
>>> [Coordinator]
>>>
>>>
>>>
>>> gfsh>describe member --name=NativeSessionGemFireSerializationServer
>>>
>>> Name        : NativeSessionGemFireSerializationServer
>>>
>>> Id          :
>>> 10.99.199.24(NativeSessionGemFireSerializationServer:94332)<ec><v0>:1024
>>>
>>> Host        : 10.99.199.24
>>>
>>> Regions     : Sessions
>>>
>>> PID         : 94332
>>>
>>> Groups      :
>>>
>>> Used Heap   : 190M
>>>
>>> Max Heap    : 3641M
>>>
>>> Working Dir :
>>> /Users/jblum/pivdev/spring-data-examples-workspace/spring-session-data-gemfire-serialization-example/native-gemfire-server/target
>>>
>>> Log file    :
>>> /Users/jblum/pivdev/spring-data-examples-workspace/spring-session-data-gemfire-serialization-example/native-gemfire-server/target
>>>
>>> Locators    : localhost[10334]
>>>
>>>
>>> Cache Server Information
>>>
>>> Server Bind              : localhost
>>>
>>> Server Port              : 52886
>>>
>>> Running                  : true
>>>
>>> Client Connections       : 0
>>>
>>>
>>>
>>> gfsh>status server --name=NativeSessionGemFireSerializationServer
>>>
>>> [error 2019/02/21 11:39:38.932 PST <Gfsh Launcher> tid=0x1f] Could not
>>> execute "status server --name=NativeSessionGemFireSerializationServer".
>>>
>>> java.lang.NullPointerException
>>>
>>> at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:128)
>>>
>>> at org.json.JSONTokener.nextValue(JSONTokener.java:106)
>>>
>>> at org.json.JSONObject.<init>(JSONObject.java:164)
>>>
>>> at org.json.JSONObject.<init>(JSONObject.java:179)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.json.GfJsonObject.<init>(GfJsonObject.java:82)
>>>
>>> at
>>> org.apache.geode.distributed.ServerLauncher$ServerState.fromJson(ServerLauncher.java:2572)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.commands.lifecycle.StatusServerCommand.statusServer(StatusServerCommand.java:55)
>>>
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>
>>> at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>>
>>> at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>
>>> at java.lang.reflect.Method.invoke(Method.java:498)
>>>
>>> at
>>> org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:223)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.invokeCommand(CommandExecutor.java:97)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:45)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:39)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.shell.GfshExecutionStrategy.execute(GfshExecutionStrategy.java:81)
>>>
>>> at
>>> org.springframework.shell.core.AbstractShell.executeCommand(AbstractShell.java:134)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.shell.Gfsh.promptLoop(Gfsh.java:1011)
>>>
>>> at org.springframework.shell.core.JLineShell.run(JLineShell.java:179)
>>>
>>> at java.lang.Thread.run(Thread.java:748)
>>>
>>>
>>> Could not process command due to error. Error while processing command
>>> <status server --name=NativeSessionGemFireSerializationServer> Reason : null
>>>
>>>
>>>
>>> gfsh>status server --pid=94332
>>>
>>> [error 2019/02/21 11:39:48.599 PST <Gfsh Launcher> tid=0x1f] Could not
>>> execute "status server --pid=94332".
>>>
>>> java.lang.NullPointerException
>>>
>>> at
>>> org.apache.geode.internal.process.MBeanProcessController.status(MBeanProcessController.java:140)
>>>
>>> at
>>> org.apache.geode.internal.process.MBeanProcessController.status(MBeanProcessController.java:84)
>>>
>>> at
>>> org.apache.geode.internal.process.MBeanOrFileProcessController.status(MBeanOrFileProcessController.java:37)
>>>
>>> at
>>> org.apache.geode.distributed.ServerLauncher.statusWithPid(ServerLauncher.java:1073)
>>>
>>> at
>>> org.apache.geode.distributed.ServerLauncher.status(ServerLauncher.java:1045)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.commands.lifecycle.StatusServerCommand.statusServer(StatusServerCommand.java:74)
>>>
>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>
>>> at
>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>>
>>> at
>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>
>>> at java.lang.reflect.Method.invoke(Method.java:498)
>>>
>>> at
>>> org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:223)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.invokeCommand(CommandExecutor.java:97)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:45)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:39)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.shell.GfshExecutionStrategy.execute(GfshExecutionStrategy.java:81)
>>>
>>> at
>>> org.springframework.shell.core.AbstractShell.executeCommand(AbstractShell.java:134)
>>>
>>> at
>>> org.apache.geode.management.internal.cli.shell.Gfsh.promptLoop(Gfsh.java:1011)
>>>
>>> at org.springframework.shell.core.JLineShell.run(JLineShell.java:179)
>>>
>>> at java.lang.Thread.run(Thread.java:748)
>>>
>>>
>>> Could not process command due to error. Error while processing command
>>> <status server --pid=94332> Reason : null
>>>
>>>
>>> gfsh>
>>>
>>>
>>>
>>>
>>> So, even when using the GemFire API, configuring and bootstrapping a
>>> GemFire Server, JVM process using the Java launcher and a main class, no
>>> good.
>>>
>>> You would run into similar problems with *Pulse*.
>>>
>>> However, you can still query your Region...
>>>
>>>
>>> gfsh>list regions
>>>
>>> List of regions
>>>
>>> ---------------
>>>
>>> Sessions
>>>
>>>
>>>
>>> gfsh>describe region --name=/Sessions
>>>
>>> ..................................................................
>>>
>>> Name            : Sessions
>>>
>>> Data Policy     : partition
>>>
>>> Hosting Members : NativeSessionGemFireSerializationServer
>>>
>>>
>>> Non-Default Attributes Shared By Hosting Members
>>>
>>>
>>>  Type  |          Name           | Value
>>>
>>> ------ | ----------------------- | ---------
>>>
>>> Region | data-policy             | PARTITION
>>>
>>>        | entry-idle-time.timeout | 1800
>>>
>>>        | size                    | 0
>>>
>>>        | statistics-enabled      | true
>>>
>>>
>>>
>>>
>>> And, after running my test class (again,
>>> https://github.com/jxblum/spring-session-data-gemfire-serialization-example/blob/master/application-client/src/test/java/example/app/client/SessionSerializationWithDataSerializationDeltasAndJavaSerializationIntegrationTests.
>>> <https://github.com/jxblum/spring-session-data-gemfire-serialization-example/blob/master/application-client/src/test/java/example/app/client/SessionSerializationWithDataSerializationDeltasAndJavaSerializationIntegrationTests.java>
>>> java
>>> <https://github.com/jxblum/spring-session-data-gemfire-serialization-example/blob/master/application-client/src/test/java/example/app/client/SessionSerializationWithDataSerializationDeltasAndJavaSerializationIntegrationTests.java>
>>> )...
>>>
>>>
>>> gfsh>describe region --name=/Sessions
>>>
>>> ..................................................................
>>>
>>> Name            : Sessions
>>>
>>> Data Policy     : partition
>>>
>>> Hosting Members : NativeSessionGemFireSerializationServer
>>>
>>>
>>> Non-Default Attributes Shared By Hosting Members
>>>
>>>
>>>  Type  |          Name           | Value
>>>
>>> ------ | ----------------------- | ---------
>>>
>>> Region | data-policy             | PARTITION
>>>
>>>        | entry-idle-time.timeout | 1800
>>>
>>>        | size                    | 1
>>>
>>>        | statistics-enabled      | true
>>>
>>>
>>>
>>>
>>> gfsh>query --query="SELECT session.id, attribute.key, attribute.value
>>> FROM /Sessions session, session.attributes attribute ORDER BY session.id
>>> ASC"
>>>
>>> Result : true
>>>
>>> Limit  : 100
>>>
>>> Rows   : 2
>>>
>>>
>>>                  id                  |   key   | value
>>>
>>> ------------------------------------ | ------- |
>>> -------------------------------
>>>
>>> 78b1c7d7-4721-48a3-8e4a-0fe26920a718 | janeDoe |
>>> example.app.core.model.Customer
>>>
>>> 78b1c7d7-4721-48a3-8e4a-0fe26920a718 | jonDoe  |
>>> example.app.core.model.Customer
>>>
>>>
>>>
>>>
>>> Stay tuned...
>>>
>>> -John
>>>
>>>
>>> On Thu, Feb 21, 2019 at 10:01 AM John Blum <jblum@pivotal.io> wrote:
>>>
>>>> Hi Dharam-
>>>>
>>>> You cannot use `status server` or `stop server` on a GemFire Server
>>>> configured and bootstrapped with *Spring*. (i.e. *Spring Boot* with
>>>> SDG, or alternatively and preferably SBDG).  Most other commands will work
>>>> (e.g. `describe member`) as expected.
>>>>
>>>> For example, if you `describe member --name=S1`, I would expect this
>>>> to work for you.
>>>>
>>>> The reason for this is that certain *Gfsh* commands (e.g. `status
>>>> server` as well as `stop server`, depending on the options used, e.g. `
>>>> --name`) are built with GemFire's MBeans.  Other commands use
>>>> Functions while still other commands might be local and use the GemFire API.
>>>>
>>>> The MBean based commands related to the server (i.e. status/stop)
>>>> assume the GemFire Server was started via *Gfsh* (i.e. `start server`)
>>>> in the first place.  When you use the `start server` command, the
>>>> o.a.g.distributed.ServerLauncher class is used (as the main class) to
>>>> launch (i.e. start) the server, forked in a separate JVM process.  The
>>>> MBean associated with `status/stop server` pulls information from the
>>>> ServerLauncher class used to carry out the function of the commands.
>>>> *Spring*, in all arrangements, does not and will not use the
>>>> ServerLauncher class (ever) to bootstrap a GemFire Server.
>>>>
>>>> I am less familiar with the internals of *Pulse*, however, I do know
>>>> it uses a fair amount of information derived from the MBeans.  This might
>>>> explain some of the issues you are experiencing there.
>>>>
>>>> The missing Regions (in Pulse) as well as the querying issues in *Gfsh*,
>>>> I have not experienced before.
>>>>
>>>> Recently, I have been helping a customer with integration of *Spring
>>>> Session using Pivotal GemFire* (SSDG) in their legacy application.
>>>> For theirs and our purposes, I created an example repo, here (
>>>> https://github.com/jxblum/spring-session-data-gemfire-serialization-example).
>>>> The example contains a GemFire Server configured and bootstrapped with
>>>> *Spring*, here (
>>>> https://github.com/jxblum/spring-session-data-gemfire-serialization-example/blob/master/spring-gemfire-server/src/main/java/example/app/gemfire/server/SpringGemFireServerApplication.java
>>>> ).
>>>>
>>>> When I start this server up, I can do the following in *Gfsh* without
>>>> issue (NOTE: I am using Pivotal GemFire 9.5.2, which would be Apache Geode
>>>> 1.6.0 since this correlates with what the customer is using):
>>>>
>>>> $ echo $GEMFIRE
>>>>
>>>> /Users/jblum/pivdev/pivotal-gemfire-9.5.2
>>>>
>>>> jblum-mbpro-2:lab jblum$
>>>>
>>>> jblum-mbpro-2:lab jblum$ gfsh
>>>>
>>>>     _________________________     __
>>>>
>>>>    / _____/ ______/ ______/ /____/ /
>>>>
>>>>   / /  __/ /___  /_____  / _____  /
>>>>
>>>>  / /__/ / ____/  _____/ / /    / /
>>>>
>>>> /______/_/      /______/_/    /_/    9.5.2
>>>>
>>>>
>>>> Monitor and Manage Pivotal GemFire
>>>>
>>>> gfsh>
>>>>
>>>> Then...
>>>>
>>>> gfsh>connect
>>>>
>>>> Connecting to Locator at [host=localhost, port=10334] ..
>>>>
>>>> Connecting to Manager at [host=10.99.199.24, port=1099] ..
>>>>
>>>> Successfully connected to: [host=10.99.199.24, port=1099]
>>>>
>>>>
>>>>
>>>> gfsh>list members
>>>>
>>>>                    Name                     | Id
>>>>
>>>> ------------------------------------------- |
>>>> ------------------------------------------------------------------------------------------
>>>>
>>>> SpringSessionDataGemFireSerializationServer |
>>>> 10.99.199.24(SpringSessionDataGemFireSerializationServer:92975)<ec><v0>:1024
>>>> [Coordinator]
>>>>
>>>>
>>>>
>>>> gfsh>describe member --name=SpringSessionDataGemFireSerializationServer
>>>>
>>>> Name        : SpringSessionDataGemFireSerializationServer
>>>>
>>>> Id          :
>>>> 10.99.199.24(SpringSessionDataGemFireSerializationServer:92975)<ec><v0>:1024
>>>>
>>>> Host        : 10.99.199.24
>>>>
>>>> Regions     : Sessions
>>>>
>>>> PID         : 92975
>>>>
>>>> Groups      :
>>>>
>>>> Used Heap   : 60M
>>>>
>>>> Max Heap    : 3641M
>>>>
>>>> Working Dir :
>>>> /Users/jblum/pivdev/spring-data-examples-workspace/spring-session-data-gemfire-serialization-example/spring-gemfire-server/target
>>>>
>>>> Log file    :
>>>> /Users/jblum/pivdev/spring-data-examples-workspace/spring-session-data-gemfire-serialization-example/spring-gemfire-server/target
>>>>
>>>> Locators    : localhost[10334]
>>>>
>>>>
>>>> Cache Server Information
>>>>
>>>> Server Bind              :
>>>>
>>>> Server Port              : 50606
>>>>
>>>> Running                  : true
>>>>
>>>> Client Connections       : 0
>>>>
>>>> However, if I execute `status server`, I see...
>>>>
>>>> gfsh>status server --name=SpringSessionDataGemFireSerializationServer
>>>>
>>>> [error 2019/02/21 09:17:51.226 PST <Gfsh Launcher> tid=0x1f] Could not
>>>> execute "status server --name=SpringSessionDataGemFireSerializationServer".
>>>>
>>>> java.lang.NullPointerException
>>>>
>>>> at org.json.JSONTokener.nextCleanInternal(JSONTokener.java:128)
>>>>
>>>> at org.json.JSONTokener.nextValue(JSONTokener.java:106)
>>>>
>>>> at org.json.JSONObject.<init>(JSONObject.java:164)
>>>>
>>>> at org.json.JSONObject.<init>(JSONObject.java:179)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.json.GfJsonObject.<init>(GfJsonObject.java:82)
>>>>
>>>> at
>>>> org.apache.geode.distributed.ServerLauncher$ServerState.fromJson(ServerLauncher.java:2572)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.commands.lifecycle.StatusServerCommand.statusServer(StatusServerCommand.java:55)
>>>>
>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>
>>>> at
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>>>
>>>> at
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>
>>>> at java.lang.reflect.Method.invoke(Method.java:498)
>>>>
>>>> at
>>>> org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.invokeCommand(CommandExecutor.java:97)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:45)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:39)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.shell.GfshExecutionStrategy.execute(GfshExecutionStrategy.java:81)
>>>>
>>>> at
>>>> org.springframework.shell.core.AbstractShell.executeCommand(AbstractShell.java:134)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.shell.Gfsh.promptLoop(Gfsh.java:1011)
>>>>
>>>> at org.springframework.shell.core.JLineShell.run(JLineShell.java:179)
>>>>
>>>> at java.lang.Thread.run(Thread.java:748)
>>>>
>>>>
>>>> Could not process command due to error. Error while processing command
>>>> <status server --name=SpringSessionDataGemFireSerializationServer> Reason :
>>>> null
>>>>
>>>>
>>>>
>>>> What if I try to execute `status server --pid=92975`...
>>>>
>>>> gfsh>status server --pid=92975
>>>>
>>>> [error 2019/02/21 09:18:40.040 PST <Gfsh Launcher> tid=0x1f] Could not
>>>> execute "status server --pid=92975".
>>>>
>>>> org.apache.geode.lang.AttachAPINotFoundException: The Attach API
>>>> classes could not be found on the classpath.  Please include JDK
>>>> tools.jar on the classpath or add the JDK tools.jar to the jre/lib/ext
>>>> directory.
>>>>
>>>> at
>>>> org.apache.geode.internal.process.FileProcessController.checkPidSupport(FileProcessController.java:101)
>>>>
>>>> at
>>>> org.apache.geode.distributed.ServerLauncher.statusWithPid(ServerLauncher.java:1072)
>>>>
>>>> at
>>>> org.apache.geode.distributed.ServerLauncher.status(ServerLauncher.java:1045)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.commands.lifecycle.StatusServerCommand.statusServer(StatusServerCommand.java:74)
>>>>
>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>>
>>>> at
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>>>>
>>>> at
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>>>>
>>>> at java.lang.reflect.Method.invoke(Method.java:498)
>>>>
>>>> at
>>>> org.springframework.util.ReflectionUtils.invokeMethod(ReflectionUtils.java:216)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.invokeCommand(CommandExecutor.java:97)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:45)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.remote.CommandExecutor.execute(CommandExecutor.java:39)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.shell.GfshExecutionStrategy.execute(GfshExecutionStrategy.java:81)
>>>>
>>>> at
>>>> org.springframework.shell.core.AbstractShell.executeCommand(AbstractShell.java:134)
>>>>
>>>> at
>>>> org.apache.geode.management.internal.cli.shell.Gfsh.promptLoop(Gfsh.java:1011)
>>>>
>>>> at org.springframework.shell.core.JLineShell.run(JLineShell.java:179)
>>>>
>>>> at java.lang.Thread.run(Thread.java:748)
>>>>
>>>>
>>>> Could not process command due to error. Error while processing command
>>>> <status server --pid=92975> Reason : The Attach API classes could not be
>>>> found on the classpath.  Please include JDK tools.jar on the classpath
>>>> or add the JDK tools.jar to the jre/lib/ext directory.
>>>>
>>>>
>>>>
>>>> OK!  That requires I have the JDK Attach API on the classpath of my
>>>> server.  However, that will not longer work...
>>>>
>>>>
>>>> https://github.com/apache/geode/blob/rel/v1.6.0/geode-core/src/main/java/org/apache/geode/internal/process/FileProcessController.java#L98-L102
>>>>
>>>> And, well...
>>>>
>>>>
>>>> https://github.com/apache/geode/blob/rel/v1.8.0/geode-core/src/main/java/org/apache/geode/internal/process/FileProcessController.java#L98-L102
>>>>
>>>> Anyway, let's continue.
>>>>
>>>> Because, I have a Spring Session based example, I have a */Sessions*
>>>> Region, here (
>>>> https://github.com/jxblum/spring-session-data-gemfire-serialization-example/blob/master/spring-gemfire-server/src/main/java/example/app/gemfire/server/SpringGemFireServerApplication.java#L47
>>>> ).
>>>>
>>>> I can...
>>>>
>>>> gfsh>list regions
>>>>
>>>> List of regions
>>>>
>>>> ---------------
>>>>
>>>> Sessions
>>>>
>>>>
>>>>
>>>> required --name: Name/Path of the region to be described.; no default
>>>> value
>>>>
>>>> gfsh>describe region --name=/Sessions
>>>>
>>>>
>>>> .................................................................................................................................................................
>>>>
>>>> Name            : Sessions
>>>>
>>>> Data Policy     : partition
>>>>
>>>> Hosting Members : SpringSessionDataGemFireSerializationServer
>>>>
>>>>
>>>> Non-Default Attributes Shared By Hosting Members
>>>>
>>>>
>>>>  Type  |          Name           | Value
>>>>
>>>> ------ | ----------------------- |
>>>> ---------------------------------------------------------------------------------------------------------------------------
>>>>
>>>> Region | data-policy             | PARTITION
>>>>
>>>>        | entry-idle-time.timeout | 1800
>>>>
>>>>        | size                    | 0
>>>>
>>>>        | statistics-enabled      | true
>>>>
>>>>        | cache-listeners         |
>>>> org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepository.SessionEventHandlerCacheListenerAdapter
>>>>
>>>>
>>>>
>>>> Now, if I run my test class (
>>>> https://github.com/jxblum/spring-session-data-gemfire-serialization-example/blob/master/application-client/src/test/java/example/app/client/SessionSerializationWithDataSerializationDeltasAndJavaSerializationIntegrationTests.java),
>>>> after the test passes, it will create a Session and persist it to GemFire,
>>>> where I can then see the size to the */Sessions* Region change and
>>>> query the data...
>>>>
>>>> gfsh>describe region --name=/Sessions
>>>>
>>>>
>>>> .................................................................................................................................................................
>>>>
>>>> Name            : Sessions
>>>>
>>>> Data Policy     : partition
>>>>
>>>> Hosting Members : SpringSessionDataGemFireSerializationServer
>>>>
>>>>
>>>> Non-Default Attributes Shared By Hosting Members
>>>>
>>>>
>>>>  Type  |          Name           | Value
>>>>
>>>> ------ | ----------------------- |
>>>> ---------------------------------------------------------------------------------------------------------------------------
>>>>
>>>> Region | data-policy             | PARTITION
>>>>
>>>>        | entry-idle-time.timeout | 1800
>>>>
>>>>        | size                    | 1
>>>>
>>>>        | statistics-enabled      | true
>>>>
>>>>        | cache-listeners         |
>>>> org.springframework.session.data.gemfire.AbstractGemFireOperationsSessionRepository.SessionEventHandlerCacheListenerAdapter
>>>>
>>>>
>>>> gfsh>query --query="SELECT session.id, attribute.key, attribute.value
>>>> FROM /Sessions session, session.attributes attribute ORDER BY
>>>> session.id ASC"
>>>>
>>>> Result : true
>>>>
>>>> Limit  : 100
>>>>
>>>> Rows   : 2
>>>>
>>>>
>>>>                  id                  |   key   | value
>>>>
>>>> ------------------------------------ | ------- |
>>>> -------------------------------
>>>>
>>>> 736eb051-d1ae-4989-b7f3-4e7b91e5bb7a | janeDoe |
>>>> example.app.core.model.Customer
>>>>
>>>> 736eb051-d1ae-4989-b7f3-4e7b91e5bb7a | jonDoe  |
>>>> example.app.core.model.Customer
>>>>
>>>>
>>>>
>>>> So, (mostly) all works as expected.
>>>>
>>>> I will follow up in another email with details on *Pulse*.
>>>>
>>>> -John
>>>>
>>>>
>>>>
>>>> On Thu, Feb 21, 2019 at 8:54 AM Dharam Thacker <
>>>> dharamthacker88@gmail.com> wrote:
>>>>
>>>>> One more thing about GFSH.
>>>>>
>>>>> gfsh>list regions
>>>>> List of regions
>>>>> ---------------
>>>>> GroupDefinition
>>>>> Sample1
>>>>> Sample2
>>>>>
>>>>> gfsh>query --query="select * from /Sample1"
>>>>> Result  : false
>>>>> Message : Cannot find regions <[/Sample1]> in any of the members
>>>>>
>>>>> Thanks,
>>>>> - Dharam Thacker
>>>>>
>>>>>
>>>>> On Thu, Feb 21, 2019 at 10:15 PM Dharam Thacker <
>>>>> dharamthacker88@gmail.com> wrote:
>>>>>
>>>>>> Hi Jens,
>>>>>>
>>>>>> I tried again as per your suggestions and traced logs as well again.
>>>>>> You can see below that, both servers have joined but no regions created, no
>>>>>> server counts changed and GFSH is behaving strangely as well.
>>>>>>
>>>>>> GFSH:
>>>>>> gfsh>list members
>>>>>>   Name   | Id
>>>>>> -------- |
>>>>>> ----------------------------------------------------------------
>>>>>> locator1 | 192.168.31.62(locator1:2719:locator)<ec><v0>:41000
>>>>>> [Coordinator]
>>>>>> locator2 | 192.168.31.62(locator2:2854:locator)<ec><v1>:41001
>>>>>> S2       | 192.168.31.62(S2:5021)<v10>:41002
>>>>>> S1       | 192.168.31.62(S1:5107)<v11>:41003
>>>>>>
>>>>>> gfsh>status server --name=S1
>>>>>> No Geode Cache Server with member name or ID S1 could be found.
>>>>>>
>>>>>>
>>>>>> gfsh>status server --name=S2
>>>>>> No Geode Cache Server with member name or ID S2 could be found.
>>>>>>
>>>>>>
>>>>>> XHR logs: No regions as well as only locators as members even though
>>>>>> servers are there.
>>>>>>
>>>>>> [image: image.png]
>>>>>>
>>>>>> [image: image.png]
>>>>>>
>>>>>> I see below logs as well on startup in case they help.
>>>>>> [debug 2019/02/21 22:04:33.839 IST <main> tid=0x1] Notification
>>>>>> Region created with Name : _notificationRegion_192.168.31.62<v10>41002
>>>>>>
>>>>>> [debug 2019/02/21 22:04:34.113 IST <unicast
>>>>>> receiver,dharam-thakkar-34169> tid=0x1b] sending via JGroups:
>>>>>> [HeartbeatMessage [requestId=1]] recipients:
>>>>>> [192.168.31.62(locator2:2854:locator)<ec><v1>:41001]
>>>>>>
>>>>>> [warn 2019/02/21 22:04:34.590 IST <main> tid=0x1] (tid=1 msgId=0) *Could
>>>>>> not load Command from*: class
>>>>>> org.apache.geode.management.internal.cli.commands.DestroyIndexCommand due
>>>>>> to org.apache.geode.management.internal.cli.commands.DestroyIndexCommand
>>>>>> cannot be cast to org.springframework.shell.core.CommandMarker
>>>>>>
>>>>>> [warn 2019/02/21 22:04:34.597 IST <main> tid=0x1] (tid=1 msgId=1) *Could
>>>>>> not load Command from*: class
>>>>>> org.apache.geode.management.internal.cli.commands.BackupDiskStoreCommand
>>>>>> due to
>>>>>> org.apache.geode.management.internal.cli.commands.BackupDiskStoreCommand
>>>>>> cannot be cast to org.springframework.shell.core.CommandMarker
>>>>>>
>>>>>> [warn 2019/02/21 22:04:34.600 IST <main> tid=0x1] (tid=1 msgId=2) *Could
>>>>>> not load Command from:* class
>>>>>> org.apache.geode.management.internal.cli.commands.PDXRenameCommand due to
>>>>>> org.apache.geode.management.internal.cli.commands.PDXRenameCommand cannot
>>>>>> be cast to org.springframework.shell.core.CommandMarker
>>>>>>
>>>>>> [debug 2019/02/21 22:04:34.632 IST <main> tid=0x1] *Closing
>>>>>> Management Service*
>>>>>>
>>>>>> Thanks,
>>>>>> Dharam
>>>>>>
>>>>>>
>>>>>> On Wed, Feb 20, 2019 at 10:53 AM Jens Deppe <jensdeppe@apache.org>
>>>>>> wrote:
>>>>>>
>>>>>>> Hi Dharam,
>>>>>>>
>>>>>>> I've tried to replicate this, but have not been successful - I've
>>>>>>> tried restarting my Spring Boot app server at least 20 times, but it always
>>>>>>> shows up in Pulse.
>>>>>>>
>>>>>>> What would be useful is to try and look at the data that Pulse is
>>>>>>> retrieving in order to update it's display. If you're using Chrome, can you
>>>>>>> open the developer console and select the 'Network' tab. From there, select
>>>>>>> the 'XHR' filter tab - that should show you a 'pulseUpdate'
>>>>>>> request/response every 5 seconds. I'd be interested to see the data (it's a
>>>>>>> JSON payload) that comes back when you have all the members in the view and
>>>>>>> then the data that comes back when you are missing a member.
>>>>>>>
>>>>>>> Thanks
>>>>>>> --Jens
>>>>>>>
>>>>>>> On Tue, Feb 19, 2019 at 2:47 PM Bruce Schuchardt <
>>>>>>> bschuchardt@pivotal.io> wrote:
>>>>>>>
>>>>>>>> I can't comment on most of the content of your server1.log.  The
>>>>>>>> java.net.SocketException doesn't seem to be causing any problems but an
>>>>>>>> internet search indicated that setting
>>>>>>>>
>>>>>>>> -Djava.net.preferIPv4Stack=true
>>>>>>>>
>>>>>>>> might fix that problem for the machine you're using for testing.
>>>>>>>> This exception is caught and logged but shouldn't cause any other
>>>>>>>> problems.  Indeed, I can see from the debug-level logging that UDP
>>>>>>>> messaging was working okay in your run.
>>>>>>>>
>>>>>>>>
>>>>>>>> On 2/16/19 6:42 AM, Dharam Thacker wrote:
>>>>>>>>
>>>>>>>> Hi Team,
>>>>>>>>
>>>>>>>> I am sure about this issue now and it's really critical and worth
>>>>>>>> to look at. I would really appreciate to address it in upcoming release as
>>>>>>>> it's a BLOCKER for monitoring systems.
>>>>>>>>
>>>>>>>> I hope below one helps for your analysis. Please let me know if I
>>>>>>>> can help with any more details for the same.
>>>>>>>>
>>>>>>>> Few quick glimpses
>>>>>>>> On startup>>
>>>>>>>> [debug 2019/02/16 19:41:45.642 IST <main> tid=0x1] Creating
>>>>>>>> Management Region :
>>>>>>>>
>>>>>>>> [debug 2019/02/16 19:41:45.680 IST <main> tid=0x1] Management
>>>>>>>> Service is not initialised hence returning from handleLockServiceCreation
>>>>>>>>
>>>>>>>> [warn 2019/02/16 19:41:46.500 IST <main> tid=0x1] Could not
>>>>>>>> initialize class org.apache.logging.log4j.util.PropertiesUtil
>>>>>>>> java.lang.NoClassDefFoundError: Could not initialize class
>>>>>>>> org.apache.logging.log4j.util.PropertiesUtil
>>>>>>>>
>>>>>>>> ...
>>>>>>>>
>>>>>>>> *System Specification : *
>>>>>>>> DISTRIB_ID=LinuxMint
>>>>>>>> DISTRIB_RELEASE=18.3
>>>>>>>> DISTRIB_CODENAME=sylvia
>>>>>>>> DISTRIB_DESCRIPTION="Linux Mint 18.3 Sylvia"
>>>>>>>>
>>>>>>>> *Java : *
>>>>>>>> openjdk version "1.8.0_191"
>>>>>>>> OpenJDK Runtime Environment (build
>>>>>>>> 1.8.0_191-8u191-b12-2ubuntu0.16.04.1-b12)
>>>>>>>> OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
>>>>>>>>
>>>>>>>> *GEODE*: 1.8.0 *Spring-Data-Geode* : 2.1.4.RELEASE (Geode version
>>>>>>>> overriden from 1.6.0 to 1.8.0)
>>>>>>>>
>>>>>>>> John,
>>>>>>>> It's fully using spring-data-geode and worth looking at several
>>>>>>>> issues related to that as well in server1.log
>>>>>>>>
>>>>>>>> The below link contains following artifacts for detailed analysis
>>>>>>>> and re-generating issues,
>>>>>>>>
>>>>>>>> *Attachments:*
>>>>>>>> https://drive.google.com/open?id=18AuPx05Aw-ezwNOKqdCfUJUwUycOqzTp
>>>>>>>> <https://urldefense.proofpoint.com/v2/url?u=https-3A__drive.google.com_open-3Fid-3D18AuPx05Aw-2DezwNOKqdCfUJUwUycOqzTp&d=DwMFaQ&c=lnl9vOaLMzsy2niBC8-h_K-7QJuNJEsFrzdndhuJ3Sw&r=JEKigqAv3f2lWHmA02pq9MDT5naXLkEStB4d4n0NQmk&m=KXGpMQ3vCHLW9I1372frvIz29jAVik7VeZ19pSYqNjU&s=Encm7VMywtgfrNZoO_gucw4q4RwpZmlQ3xpowDLpiNY&e=>
>>>>>>>>
>>>>>>>> 1. I have attached both locator (locator1,locator2) logs &
>>>>>>>> properties file
>>>>>>>> *Commands:*
>>>>>>>> start locator --name=locator1 --port=10334
>>>>>>>> --properties-file=/home/apps/work/geode/locator1/locator.properties
>>>>>>>> --dir=/home/apps/work/geode/locator1/work
>>>>>>>>
>>>>>>>> start locator --name=locator2 --port=10335
>>>>>>>> --properties-file=/home/apps/work/geode/locator2/locator.properties
>>>>>>>> --dir=/home/apps/work/geode/locator2/work
>>>>>>>>
>>>>>>>> 2. I have attached server1.log with debug level & demo.tar to
>>>>>>>> regenerate the same issue
>>>>>>>> *Command* : java -jar demo-0.0.1-SNAPSHOT.jar --demo.name
>>>>>>>> <https://urldefense.proofpoint.com/v2/url?u=http-3A__demo.name&d=DwMFaQ&c=lnl9vOaLMzsy2niBC8-h_K-7QJuNJEsFrzdndhuJ3Sw&r=JEKigqAv3f2lWHmA02pq9MDT5naXLkEStB4d4n0NQmk&m=KXGpMQ3vCHLW9I1372frvIz29jAVik7VeZ19pSYqNjU&s=onawLLFvihcvBxkdkVHzB5jqnL6Cy1UmlVfSy1I7KMQ&e=>=S1
>>>>>>>> --demo.port=40441 > server1.log &
>>>>>>>>
>>>>>>>> 3. Below is the pulse view where we can clearly say that, no more
>>>>>>>> JMX notifications regarding region initialisation or cache server were
>>>>>>>> recorded
>>>>>>>>
>>>>>>>> [image: image.png]
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>> Dharam
>>>>>>>>
>>>>>>>>
>>>>>>>> I have
>>>>>>>> - Dharam Thacker
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Feb 5, 2019 at 6:28 PM Thacker, Dharam <
>>>>>>>> dharam.thacker@jpmorgan.com> wrote:
>>>>>>>>
>>>>>>>>> Hi Team,
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I have usually seen following sequence when new member joins the
>>>>>>>>> cluster (member = cache-server)
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *JMX Notifications on pulse screen :*
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 1.       Member Joined <<SERVER_NAME>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2.       Region Created With Name /<<REGION_NAME>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 3.       Cache Server is Started in the VM
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I am using GEODE 1.8.0  + Spring data geode 2.1.4.RELEASE with
>>>>>>>>> following properties and pulse in embedded mode.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *locator1.properties*
>>>>>>>>>
>>>>>>>>> locators=dharam-thakkar[10440],dharam-thakkar[10440]
>>>>>>>>>
>>>>>>>>> mcast-port=0
>>>>>>>>>
>>>>>>>>> jmx-manager=true
>>>>>>>>>
>>>>>>>>> jmx-manager-start=true
>>>>>>>>>
>>>>>>>>> jmx-manager-port=1091
>>>>>>>>>
>>>>>>>>> jmx-manager-ssl-enabled=false
>>>>>>>>>
>>>>>>>>> jmx-manager-bind-address=dharam-thakkar
>>>>>>>>>
>>>>>>>>> enable-network-partition-detection=false
>>>>>>>>>
>>>>>>>>> http-service-port=9701
>>>>>>>>>
>>>>>>>>> http-service-bind-address=dharam-thakkar
>>>>>>>>>
>>>>>>>>> log-file=/local/var/tmp/demo-locator1/locator1.log
>>>>>>>>>
>>>>>>>>> log-file-size-limit=10
>>>>>>>>>
>>>>>>>>> log-level=config
>>>>>>>>>
>>>>>>>>> log-disk-space-limit=50
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I tried below sequence and I see that PULSE is missing “JMX
>>>>>>>>> Notifications” and gives incorrect view of cluster.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *Steps to reproduce>>*
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 1.       gfsh start locator --name=demo-locator-1 --port=10440
>>>>>>>>> --properties-file=locator1.properties --work-dir=/var/tmp/demo-locator1/work
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 2.       java -jar demo-spring-boot-geode-server.jar
>>>>>>>>> -DserverName=demo-server1 -DserverPort=40440
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 3.       java -jar demo-spring-boot-geode-server.jar
>>>>>>>>> -DserverName=demo-server2 -DserverPort=40441
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 4.       Everything will look fine as of now and you will see all
>>>>>>>>> notifications as explained in above sequence
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 5.       PID=`ps auxwww | fgrep 'java' | fgrep 'demo-server-1' |
>>>>>>>>> awk '{print $2}'` ; kill -INT $PID
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 6.       You should see *“Member Departed <<SERVER_NAME>>”*
>>>>>>>>> message on pulse
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 7.       Reboot the member -- java -jar
>>>>>>>>> demo-spring-boot-geode-server.jar -DserverName=demo-server1
>>>>>>>>> -DserverPort=40440
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 8.       Observe pulse notifications and member count
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 9.       You will only see *“Member Joined <<SERVER_NAME>>” *
>>>>>>>>> message on pulse and no update in member count
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> 10.   If you don’t see situation as step-9, repeat steps-5 to
>>>>>>>>> steps-7 few times and you will end up in this situation
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> *Note:* Please note that GFSH shows everything correctly but
>>>>>>>>> PULSE has issues.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>>
>>>>>>>>> Dharam
>>>>>>>>>
>>>>>>>>> This message is confidential and subject to terms at: https://
>>>>>>>>> www.jpmorgan.com/emaildisclaimer
>>>>>>>>> <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.jpmorgan.com_emaildisclaimer&d=DwMFaQ&c=lnl9vOaLMzsy2niBC8-h_K-7QJuNJEsFrzdndhuJ3Sw&r=JEKigqAv3f2lWHmA02pq9MDT5naXLkEStB4d4n0NQmk&m=KXGpMQ3vCHLW9I1372frvIz29jAVik7VeZ19pSYqNjU&s=wnMQ4KQ6EkepwerGG8L-HD4Bkb64Lv6lIQ77fjYolzs&e=>
>>>>>>>>> including on confidentiality, legal privilege, viruses and monitoring of
>>>>>>>>> electronic messages. If you are not the intended recipient, please delete
>>>>>>>>> this message and notify the sender immediately. Any unauthorized use is
>>>>>>>>> strictly prohibited.
>>>>>>>>>
>>>>>>>>
>>>>
>>>> --
>>>> -John
>>>> john.blum10101 (skype)
>>>>
>>>
>>>
>>> --
>>> -John
>>> john.blum10101 (skype)
>>>
>>

-- 
-John
john.blum10101 (skype)

Mime
View raw message