madeindra / signal-setup-guide

Setup guide for Signal (OpenWhisper) server & client. Please refer to the discussion section for questions & difficulties.
MIT License
157 stars 94 forks source link

Infinite Error Loop after starting Server v5.xx #88

Open ankushbhardwxj opened 3 years ago

ankushbhardwxj commented 3 years ago

Server Version : (Server v5.xx)

Client Version : (Android vX.XX.XX / iOS vX.XX.XX / Desktop vX.XX.XX)

Dependencies : (Twilio / AWS / Nginx / Apache / Self-Signed SSL Certificate / Docker / On Premise Redis / On Premise Postgresql / Turn )

Describe what are you trying to achieve

I want to get the server running without any errors. The server starts up fine, but it then goes into an infinite error loop, possibly due to redis & APN. Need help.

Describe the issue that you face

I have followed the latest Signal-Server 5.x guide. After getting everything running, I had got an error that there is no table by the name of signal in postgres. Signal is the databaseName defined in config file. I then used docker exec -it postgres bash and then manually created the database. After that, when I ran the server using java -jar <TextSecure.jar> server <configfilePath>, I got the server running and then got an infinite error loop, log of which is given below.

Describe the step to reproduce the errors

Logs

INFO  [2021-05-23 16:39:47,222] org.eclipse.jetty.util.log: Logging initialized @2357ms to org.eclipse.jetty.util.log.Slf4jLog
INFO  [2021-05-23 16:39:47,358] io.dropwizard.server.DefaultServerFactory: Registering jersey handler with root path prefix: /
INFO  [2021-05-23 16:39:47,361] io.dropwizard.server.DefaultServerFactory: Registering admin handler with root path prefix: /
INFO  [2021-05-23 16:39:47,537] io.micrometer.core.instrument.push.PushMeterRegistry: publishing metrics for  every 1m
WARN  [2021-05-23 16:39:50,073] io.dropwizard.lifecycle.setup.ExecutorServiceBuilder: Parameter 'maximumPoolSize' is conflicting with unbounded work queues
WARN  [2021-05-23 16:39:50,073] io.dropwizard.lifecycle.setup.ExecutorServiceBuilder: Parameter 'maximumPoolSize' is conflicting with unbounded work queues
INFO  [2021-05-23 16:39:50,118] com.amazonaws.internal.DefaultServiceEndpointBuilder: {appconfig, us-east-2} was not found in region metadata, trying to construct an endpoint using the standard pattern for this region: 'appconfig.us-east-2.amazonaws.com'.
INFO  [2021-05-23 16:39:52,116] org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager: Received new config version: 1
INFO  [2021-05-23 16:39:52,547] com.eatthepath.pushy.apns.ApnsClientBuilder: Native SSL provider is available; will use native provider.
INFO  [2021-05-23 16:39:53,835] io.dropwizard.jersey.DropwizardResourceConfig: The following paths were found for the configured resources:

    GET     /v1/attachments (org.whispersystems.textsecuregcm.controllers.AttachmentControllerV1)
    GET     /v1/attachments/{attachmentId} (org.whispersystems.textsecuregcm.controllers.AttachmentControllerV1)
    GET     /v1/config (org.whispersystems.textsecuregcm.controllers.RemoteConfigController)
    PUT     /v1/config (org.whispersystems.textsecuregcm.controllers.RemoteConfigController)
    DELETE  /v1/config/{name} (org.whispersystems.textsecuregcm.controllers.RemoteConfigController)
    POST    /v1/donation/authorize-apple-pay (org.whispersystems.textsecuregcm.controllers.DonationController)
    GET     /v1/keepalive (org.whispersystems.textsecuregcm.controllers.KeepAliveController)
    GET     /v1/keepalive/provisioning (org.whispersystems.textsecuregcm.controllers.KeepAliveController)
    GET     /v1/messages (org.whispersystems.textsecuregcm.controllers.MessageController)
    PUT     /v1/messages/multi_recipient (org.whispersystems.textsecuregcm.controllers.MessageController)
    POST    /v1/messages/report/{sourceNumber}/{messageGuid} (org.whispersystems.textsecuregcm.controllers.MessageController)
    DELETE  /v1/messages/uuid/{uuid} (org.whispersystems.textsecuregcm.controllers.MessageController)
    PUT     /v1/messages/{destination} (org.whispersystems.textsecuregcm.controllers.MessageController)
    DELETE  /v1/messages/{source}/{timestamp} (org.whispersystems.textsecuregcm.controllers.MessageController)
    PUT     /v1/profile (org.whispersystems.textsecuregcm.controllers.ProfileController)
    GET     /v1/profile/form/avatar (org.whispersystems.textsecuregcm.controllers.ProfileController)
    PUT     /v1/profile/name/{name} (org.whispersystems.textsecuregcm.controllers.ProfileController)
    GET     /v1/profile/username/{username} (org.whispersystems.textsecuregcm.controllers.ProfileController)
    GET     /v1/profile/{identifier} (org.whispersystems.textsecuregcm.controllers.ProfileController)
    GET     /v1/profile/{uuid}/{version} (org.whispersystems.textsecuregcm.controllers.ProfileController)
    GET     /v1/profile/{uuid}/{version}/{credentialRequest} (org.whispersystems.textsecuregcm.controllers.ProfileController)
    GET     /v2/attachments/form/upload (org.whispersystems.textsecuregcm.controllers.AttachmentControllerV2)
    GET     /v3/attachments/form/upload (org.whispersystems.textsecuregcm.controllers.AttachmentControllerV3)

INFO  [2021-05-23 16:39:53,893] io.dropwizard.jersey.DropwizardResourceConfig: The following paths were found for the configured resources:

    GET     /v1/keepalive (org.whispersystems.textsecuregcm.controllers.KeepAliveController)
    GET     /v1/keepalive/provisioning (org.whispersystems.textsecuregcm.controllers.KeepAliveController)

INFO  [2021-05-23 16:39:53,926] io.dropwizard.server.ServerFactory: Starting whisper-server
 _____  _                       _  _____
/  ___|(_)                     | |/  ___|
\ `--.  _   __ _  _ __    __ _ | |\ `--.   ___  _ __ __   __ ___  _ __
 `--. \| | / _` || '_ \  / _` || | `--. \ / _ \| '__|\ \ / // _ \| '__|
/\__/ /| || (_| || | | || (_| || |/\__/ /|  __/| |    \ V /|  __/| |
\____/ |_| \__, ||_| |_| \__,_||_|\____/  \___||_|     \_/  \___||_|
            __/ |
           |___/

INFO  [2021-05-23 16:39:54,060] org.eclipse.jetty.setuid.SetUIDListener: Opened application@73fe7483{HTTP/1.1, (http/1.1)}{0.0.0.0:8080}
INFO  [2021-05-23 16:39:54,060] org.eclipse.jetty.setuid.SetUIDListener: Opened admin@11577ab8{HTTP/1.1, (http/1.1)}{0.0.0.0:8081}
INFO  [2021-05-23 16:39:54,064] org.eclipse.jetty.server.Server: jetty-9.4.39.v20210325; built: 2021-03-25T14:42:11.471Z; git: 9fc7ca5a922f2a37b84ec9dbc26a5168cee7e667; jvm 11.0.10+9-Ubuntu-0ubuntu1.18.04
WARN  [2021-05-23 16:39:54,369] org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster: Redis operation failure
! io.lettuce.core.cluster.PartitionSelectorException: Cannot determine a partition for slot 8151.
! at io.lettuce.core.cluster.PooledClusterConnectionProvider.getWriteConnection(PooledClusterConnectionProvider.java:148)
! at io.lettuce.core.cluster.PooledClusterConnectionProvider.getConnectionAsync(PooledClusterConnectionProvider.java:133)
! at io.lettuce.core.cluster.ClusterDistributionChannelWriter.doWrite(ClusterDistributionChannelWriter.java:132)
! at io.lettuce.core.cluster.ClusterDistributionChannelWriter.write(ClusterDistributionChannelWriter.java:82)
! at io.lettuce.core.RedisChannelHandler.dispatch(RedisChannelHandler.java:183)
! at io.lettuce.core.cluster.StatefulRedisClusterConnectionImpl.dispatch(StatefulRedisClusterConnectionImpl.java:205)
! at io.lettuce.core.AbstractRedisAsyncCommands.dispatch(AbstractRedisAsyncCommands.java:509)
! at io.lettuce.core.AbstractRedisAsyncCommands.incr(AbstractRedisAsyncCommands.java:853)
! at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
! at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
! at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
! at java.base/java.lang.reflect.Method.invoke(Method.java:566)
! at io.lettuce.core.cluster.ClusterFutureSyncInvocationHandler.handleInvocation(ClusterFutureSyncInvocationHandler.java:121)
! at io.lettuce.core.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
! at com.sun.proxy.$Proxy51.incr(Unknown Source)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager.lambda$getNextSlot$0(ApnFallbackManager.java:259)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.lambda$withConnection$3(FaultTolerantRedisCluster.java:154)
! at io.github.resilience4j.retry.Retry.lambda$decorateCallable$5(Retry.java:306)
! at io.github.resilience4j.retry.Retry.executeCallable(Retry.java:465)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.lambda$withConnection$93600edb$1(FaultTolerantRedisCluster.java:152)
! at io.github.resilience4j.circuitbreaker.CircuitBreaker.lambda$decorateCheckedSupplier$82a9021a$1(CircuitBreaker.java:73)
! at io.github.resilience4j.circuitbreaker.CircuitBreaker.executeCheckedSupplier(CircuitBreaker.java:810)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.withConnection(FaultTolerantRedisCluster.java:152)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.withCluster(FaultTolerantRedisCluster.java:118)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager.getNextSlot(ApnFallbackManager.java:259)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager$NotificationWorker.processNextSlot(ApnFallbackManager.java:89)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager$NotificationWorker.run(ApnFallbackManager.java:77)
! at java.base/java.lang.Thread.run(Thread.java:834)
WARN  [2021-05-23 16:39:54,369] org.whispersystems.textsecuregcm.push.ApnFallbackManager: Exception while operating
! io.lettuce.core.cluster.PartitionSelectorException: Cannot determine a partition for slot 8151.
! at io.lettuce.core.cluster.PooledClusterConnectionProvider.getWriteConnection(PooledClusterConnectionProvider.java:148)
! at io.lettuce.core.cluster.PooledClusterConnectionProvider.getConnectionAsync(PooledClusterConnectionProvider.java:133)
! at io.lettuce.core.cluster.ClusterDistributionChannelWriter.doWrite(ClusterDistributionChannelWriter.java:132)
! at io.lettuce.core.cluster.ClusterDistributionChannelWriter.write(ClusterDistributionChannelWriter.java:82)
! at io.lettuce.core.RedisChannelHandler.dispatch(RedisChannelHandler.java:183)
! at io.lettuce.core.cluster.StatefulRedisClusterConnectionImpl.dispatch(StatefulRedisClusterConnectionImpl.java:205)
! at io.lettuce.core.AbstractRedisAsyncCommands.dispatch(AbstractRedisAsyncCommands.java:509)
! at io.lettuce.core.AbstractRedisAsyncCommands.incr(AbstractRedisAsyncCommands.java:853)
! at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
! at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
! at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
! at java.base/java.lang.reflect.Method.invoke(Method.java:566)
! at io.lettuce.core.cluster.ClusterFutureSyncInvocationHandler.handleInvocation(ClusterFutureSyncInvocationHandler.java:121)
! at io.lettuce.core.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
! at com.sun.proxy.$Proxy51.incr(Unknown Source)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager.lambda$getNextSlot$0(ApnFallbackManager.java:259)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.lambda$withConnection$3(FaultTolerantRedisCluster.java:154)
! at io.github.resilience4j.retry.Retry.lambda$decorateCallable$5(Retry.java:306)
! at io.github.resilience4j.retry.Retry.executeCallable(Retry.java:465)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.lambda$withConnection$93600edb$1(FaultTolerantRedisCluster.java:152)
! at io.github.resilience4j.circuitbreaker.CircuitBreaker.lambda$decorateCheckedSupplier$82a9021a$1(CircuitBreaker.java:73)
! at io.github.resilience4j.circuitbreaker.CircuitBreaker.executeCheckedSupplier(CircuitBreaker.java:810)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.withConnection(FaultTolerantRedisCluster.java:152)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.withCluster(FaultTolerantRedisCluster.java:118)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager.getNextSlot(ApnFallbackManager.java:259)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager$NotificationWorker.processNextSlot(ApnFallbackManager.java:89)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager$NotificationWorker.run(ApnFallbackManager.java:77)
! at java.base/java.lang.Thread.run(Thread.java:834)
WARN  [2021-05-23 16:39:54,369] org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster: Redis operation failure
! io.lettuce.core.cluster.PartitionSelectorException: Cannot determine a partition for slot 8151.
! at io.lettuce.core.cluster.PooledClusterConnectionProvider.getWriteConnection(PooledClusterConnectionProvider.java:148)
! at io.lettuce.core.cluster.PooledClusterConnectionProvider.getConnectionAsync(PooledClusterConnectionProvider.java:133)
! at io.lettuce.core.cluster.ClusterDistributionChannelWriter.doWrite(ClusterDistributionChannelWriter.java:132)
! at io.lettuce.core.cluster.ClusterDistributionChannelWriter.write(ClusterDistributionChannelWriter.java:82)
! at io.lettuce.core.RedisChannelHandler.dispatch(RedisChannelHandler.java:183)
! at io.lettuce.core.cluster.StatefulRedisClusterConnectionImpl.dispatch(StatefulRedisClusterConnectionImpl.java:205)
! at io.lettuce.core.AbstractRedisAsyncCommands.dispatch(AbstractRedisAsyncCommands.java:509)
! at io.lettuce.core.AbstractRedisAsyncCommands.incr(AbstractRedisAsyncCommands.java:853)
! at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
! at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
! at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
! at java.base/java.lang.reflect.Method.invoke(Method.java:566)
! at io.lettuce.core.cluster.ClusterFutureSyncInvocationHandler.handleInvocation(ClusterFutureSyncInvocationHandler.java:121)
! at io.lettuce.core.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
! at com.sun.proxy.$Proxy51.incr(Unknown Source)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager.lambda$getNextSlot$0(ApnFallbackManager.java:259)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.lambda$withConnection$3(FaultTolerantRedisCluster.java:154)
! at io.github.resilience4j.retry.Retry.lambda$decorateCallable$5(Retry.java:306)
! at io.github.resilience4j.retry.Retry.executeCallable(Retry.java:465)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.lambda$withConnection$93600edb$1(FaultTolerantRedisCluster.java:152)
! at io.github.resilience4j.circuitbreaker.CircuitBreaker.lambda$decorateCheckedSupplier$82a9021a$1(CircuitBreaker.java:73)
! at io.github.resilience4j.circuitbreaker.CircuitBreaker.executeCheckedSupplier(CircuitBreaker.java:810)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.withConnection(FaultTolerantRedisCluster.java:152)
! at org.whispersystems.textsecuregcm.redis.FaultTolerantRedisCluster.withCluster(FaultTolerantRedisCluster.java:118)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager.getNextSlot(ApnFallbackManager.java:259)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager$NotificationWorker.processNextSlot(ApnFallbackManager.java:89)
! at org.whispersystems.textsecuregcm.push.ApnFallbackManager$NotificationWorker.run(ApnFallbackManager.java:77)
! at java.base/java.lang.Thread.run(Thread.java:834)

Screenshots

Attach screenshots of your error here

Additional context

The error log is 77000 lines long, after which it terminates.

ankushbhardwxj commented 3 years ago

Tagging @jacob-pro, since he's written most of the guide.

bilisakuratyan commented 3 years ago

Tagging @jacob-pro, since he's written most of the guide.

hey guy, I contacted you in telegram. I wanna ask you some questions about the project and then hopefully we can do better together.

aartivshegokar commented 3 years ago

@ankingcodes I can see, you are not facing any issues with DynamicConfigurationManager AWS. I'm stuck at this point. It would be really helpful you help me.

Error Log

INFO [2021-05-25 15:06:38,859] io.dropwizard.server.DefaultServerFactory: Registering admin handler with root path prefix: / WARN [2021-05-25 15:06:41,733] io.dropwizard.lifecycle.setup.ExecutorServiceBuilder: Parameter 'maximumPoolSize' is conflicting with unbounded work queues WARN [2021-05-25 15:06:41,734] io.dropwizard.lifecycle.setup.ExecutorServiceBuilder: Parameter 'maximumPoolSize' is conflicting with unbounded work queues INFO [2021-05-25 15:06:41,768] com.amazonaws.internal.DefaultServiceEndpointBuilder: {appconfig, ap-southeast-1} was not found in region metadata, trying to construct an endpoint using the standard pattern for this region: 'appconfig.ap-southeast-1.amazonaws.com'. WARN [2021-05-25 15:06:43,833] org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager: Error retrieving initial dynamic configuration ! java.net.SocketTimeoutException: Connect timed out ! at java.base/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:546) ! at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:597) ! at java.base/java.net.Socket.connect(Socket.java:648) ! at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:177) ! at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:474) ! at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:569) ! at java.base/sun.net.www.http.HttpClient.<init>(HttpClient.java:242) ! at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:341) ! at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:362) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1261) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1239) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1082) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1016) ! at com.amazonaws.internal.ConnectionUtils.connectToEndpoint(ConnectionUtils.java:52) ! at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:80) ! ... 32 common frames omitted ! Causing: com.amazonaws.SdkClientException: Failed to connect to service endpoint: ! at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:100) ! at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:70) ! at com.amazonaws.internal.InstanceMetadataServiceResourceFetcher.readResource(InstanceMetadataServiceResourceFetcher.java:75) ! at com.amazonaws.internal.EC2ResourceFetcher.readResource(EC2ResourceFetcher.java:66) ! at com.amazonaws.auth.InstanceMetadataServiceCredentialsFetcher.getCredentialsEndpoint(InstanceMetadataServiceCredentialsFetcher.java:58) ! at com.amazonaws.auth.InstanceMetadataServiceCredentialsFetcher.getCredentialsResponse(InstanceMetadataServiceCredentialsFetcher.java:46) ! at com.amazonaws.auth.BaseCredentialsFetcher.fetchCredentials(BaseCredentialsFetcher.java:112) ! at com.amazonaws.auth.BaseCredentialsFetcher.getCredentials(BaseCredentialsFetcher.java:68) ! at com.amazonaws.auth.InstanceProfileCredentialsProvider.getCredentials(InstanceProfileCredentialsProvider.java:165) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.getCredentialsFromContext(AmazonHttpClient.java:1257) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.runBeforeRequestHandlers(AmazonHttpClient.java:833) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:783) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686) ! at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550) ! at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.doInvoke(AmazonAppConfigClient.java:2338) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.invoke(AmazonAppConfigClient.java:2305) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.invoke(AmazonAppConfigClient.java:2294) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.executeGetConfiguration(AmazonAppConfigClient.java:976) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.getConfiguration(AmazonAppConfigClient.java:946) ! at org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager.retrieveDynamicConfiguration(DynamicConfigurationManager.java:99) ! at org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager.retrieveInitialDynamicConfiguration(DynamicConfigurationManager.java:121) ! at org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager.start(DynamicConfigurationManager.java:73) ! at org.whispersystems.textsecuregcm.WhisperServerService.run(WhisperServerService.java:408) ! at org.whispersystems.textsecuregcm.WhisperServerService.run(WhisperServerService.java:1) ! at io.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:59) ! at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:98) ! at io.dropwizard.cli.Cli.run(Cli.java:78) ! at io.dropwizard.Application.run(Application.java:94) ! at org.whispersystems.textsecuregcm.WhisperServerService.main(WhisperServerService.java:641) WARN [2021-05-25 15:06:44,897] com.amazonaws.internal.InstanceMetadataServiceResourceFetcher: Fail to retrieve token ! java.net.NoRouteToHostException: No route to host ! at java.base/sun.nio.ch.Net.pollConnect(Native Method) ! at java.base/sun.nio.ch.Net.pollConnectNow(Net.java:660) ! at java.base/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:549) ! at java.base/sun.nio.ch.NioSocketImpl.connect(NioSocketImpl.java:597) ! at java.base/java.net.Socket.connect(Socket.java:648) ! at java.base/sun.net.NetworkClient.doConnect(NetworkClient.java:177) ! at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:474) ! at java.base/sun.net.www.http.HttpClient.openServer(HttpClient.java:569) ! at java.base/sun.net.www.http.HttpClient.<init>(HttpClient.java:242) ! at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:341) ! at java.base/sun.net.www.http.HttpClient.New(HttpClient.java:362) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnection.java:1261) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1239) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1082) ! at java.base/sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:1016) ! at com.amazonaws.internal.ConnectionUtils.connectToEndpoint(ConnectionUtils.java:52) ! at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:80) ! ... 32 common frames omitted ! Causing: com.amazonaws.SdkClientException: Failed to connect to service endpoint: ! at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:100) ! at com.amazonaws.internal.InstanceMetadataServiceResourceFetcher.getToken(InstanceMetadataServiceResourceFetcher.java:91) ! at com.amazonaws.internal.InstanceMetadataServiceResourceFetcher.readResource(InstanceMetadataServiceResourceFetcher.java:69) ! at com.amazonaws.internal.EC2ResourceFetcher.readResource(EC2ResourceFetcher.java:66) ! at com.amazonaws.auth.InstanceMetadataServiceCredentialsFetcher.getCredentialsEndpoint(InstanceMetadataServiceCredentialsFetcher.java:58) ! at com.amazonaws.auth.InstanceMetadataServiceCredentialsFetcher.getCredentialsResponse(InstanceMetadataServiceCredentialsFetcher.java:46) ! at com.amazonaws.auth.BaseCredentialsFetcher.fetchCredentials(BaseCredentialsFetcher.java:112) ! at com.amazonaws.auth.BaseCredentialsFetcher.getCredentials(BaseCredentialsFetcher.java:68) ! at com.amazonaws.auth.InstanceProfileCredentialsProvider.getCredentials(InstanceProfileCredentialsProvider.java:165) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.getCredentialsFromContext(AmazonHttpClient.java:1257) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.runBeforeRequestHandlers(AmazonHttpClient.java:833) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.doExecute(AmazonHttpClient.java:783) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.executeWithTimer(AmazonHttpClient.java:770) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.execute(AmazonHttpClient.java:744) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutor.access$500(AmazonHttpClient.java:704) ! at com.amazonaws.http.AmazonHttpClient$RequestExecutionBuilderImpl.execute(AmazonHttpClient.java:686) ! at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:550) ! at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:530) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.doInvoke(AmazonAppConfigClient.java:2338) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.invoke(AmazonAppConfigClient.java:2305) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.invoke(AmazonAppConfigClient.java:2294) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.executeGetConfiguration(AmazonAppConfigClient.java:976) ! at com.amazonaws.services.appconfig.AmazonAppConfigClient.getConfiguration(AmazonAppConfigClient.java:946) ! at org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager.retrieveDynamicConfiguration(DynamicConfigurationManager.java:99) ! at org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager.retrieveInitialDynamicConfiguration(DynamicConfigurationManager.java:121) ! at org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager.start(DynamicConfigurationManager.java:73) ! at org.whispersystems.textsecuregcm.WhisperServerService.run(WhisperServerService.java:408) ! at org.whispersystems.textsecuregcm.WhisperServerService.run(WhisperServerService.java:1) ! at io.dropwizard.cli.EnvironmentCommand.run(EnvironmentCommand.java:59) ! at io.dropwizard.cli.ConfiguredCommand.run(ConfiguredCommand.java:98) ! at io.dropwizard.cli.Cli.run(Cli.java:78) ! at io.dropwizard.Application.run(Application.java:94) ! at org.whispersystems.textsecuregcm.WhisperServerService.main(WhisperServerService.java:641) WARN [2021-05-25 15:06:44,897] org.whispersystems.textsecuregcm.storage.DynamicConfigurationManager: Error retrieving initial dynamic configuration

jacob-pro commented 3 years ago

@aartivshegokar please use https://github.com/madeindra/signal-setup-guide/issues/84 for the DynamicConfigurationManager / appconfig issues. this issue is for the FaultTolerantRedisCluster warning loop

aartivshegokar commented 3 years ago

@aartivshegokar please use #84 for the DynamicConfigurationManager / appconfig issues. this issue is for the FaultTolerantRedisCluster warning loop

Thanks

aartivshegokar commented 3 years ago

I'm also facing error now. Looking for the solution. I will post if found anything. Please post if you found any.

aartivshegokar commented 3 years ago

Hi All,

I found the solution for this error too.

From the error it seems that slot "8151" which is tried by the code is not available in your redis cluster.

You need to add those missing slots.

  1. To enter into redis client console/prompt.

    redis-cli After running above command your prompt will login to redis as below. 127.0.0.1:6379>

  2. Now add the slots using below command. You can pass multiple slots space separated.

    127.0.0.1:6379> cluster addslots 8151 2844

  3. Make sure after adding slots. You need to fix the cluster else may get "CLUSTERDOWN The cluster is down" error. To fix this execute below command from redis prompt.

    redis-cli --cluster fix 127.0.0.1:6379

Enjoy!