failed: IntegrationSpec - Address already in use
https://github.com/akka/akka-platform-guide/pull/554/checks?check_run_id=1863309068
[info] IntegrationSpec:
143
[2021-02-09 13:34:37,113] [INFO] [com.zaxxer.hikari.HikariDataSource] [] [] [IntegrationSpec-akka.actor.default-blocking-io-dispatcher-12] - db - Starting...
144
[2021-02-09 13:34:37,114] [INFO] [com.zaxxer.hikari.HikariDataSource] [] [] [IntegrationSpec-akka.actor.default-blocking-io-dispatcher-12] - db - Start completed.
145
[2021-02-09 13:34:37,158] [INFO] [com.zaxxer.hikari.HikariDataSource] [] [] [IntegrationSpec-akka.projection.jdbc.blocking-jdbc-dispatcher-14] - read-side-connection-pool - Starting...
146
[2021-02-09 13:34:37,164] [INFO] [com.zaxxer.hikari.HikariDataSource] [] [] [IntegrationSpec-akka.projection.jdbc.blocking-jdbc-dispatcher-14] - read-side-connection-pool - Start completed.
147
[2021-02-09 13:34:37,182] [INFO] [shopping.cart.CreateTableTestUtils] [] [] [pool-5-thread-5] - Created tables
148
[info] Shopping Cart service
149
[2021-02-09 13:34:37,354] [INFO] [akka.management.internal.HealthChecksImpl] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-6] - Loading readiness checks [(cluster-membership,akka.management.cluster.scaladsl.ClusterMembershipCheck), (sharding,akka.cluster.sharding.ClusterShardingHealthCheck)]
150
[2021-02-09 13:34:37,355] [INFO] [akka.management.internal.HealthChecksImpl] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-6] - Loading liveness checks []
151
[2021-02-09 13:34:37,428] [INFO] [akka.management.internal.HealthChecksImpl] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Loading readiness checks [(cluster-membership,akka.management.cluster.scaladsl.ClusterMembershipCheck), (sharding,akka.cluster.sharding.ClusterShardingHealthCheck)]
152
[2021-02-09 13:34:37,428] [INFO] [akka.management.internal.HealthChecksImpl] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Loading liveness checks []
153
[2021-02-09 13:34:37,451] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-6] - Binding Akka Management (HTTP) endpoint to: 127.0.0.1:40073
154
[2021-02-09 13:34:37,455] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Binding Akka Management (HTTP) endpoint to: 127.0.0.1:35011
155
[2021-02-09 13:34:37,533] [INFO] [akka.management.internal.HealthChecksImpl] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Loading readiness checks [(cluster-membership,akka.management.cluster.scaladsl.ClusterMembershipCheck), (sharding,akka.cluster.sharding.ClusterShardingHealthCheck)]
156
[2021-02-09 13:34:37,533] [INFO] [akka.management.internal.HealthChecksImpl] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Loading liveness checks []
157
[2021-02-09 13:34:37,540] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Binding Akka Management (HTTP) endpoint to: 127.0.0.1:41983
158
[2021-02-09 13:34:37,554] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-20] - Including HTTP management routes for ClusterHttpManagementRouteProvider
159
[2021-02-09 13:34:37,554] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Including HTTP management routes for ClusterHttpManagementRouteProvider
160
[2021-02-09 13:34:37,555] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Including HTTP management routes for ClusterHttpManagementRouteProvider
161
[2021-02-09 13:34:37,637] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Including HTTP management routes for ClusterBootstrap
162
[2021-02-09 13:34:37,643] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-20] - Including HTTP management routes for ClusterBootstrap
163
[2021-02-09 13:34:37,643] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Using self contact point address: http://127.0.0.1:41983
164
[2021-02-09 13:34:37,648] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-20] - Using self contact point address: http://127.0.0.1:40073
165
[2021-02-09 13:34:37,648] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Including HTTP management routes for ClusterBootstrap
166
[2021-02-09 13:34:37,648] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Using self contact point address: http://127.0.0.1:35011
167
[2021-02-09 13:34:37,668] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-20] - Including HTTP management routes for HealthCheckRoutes
168
[2021-02-09 13:34:37,669] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Including HTTP management routes for HealthCheckRoutes
169
[2021-02-09 13:34:37,671] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Including HTTP management routes for HealthCheckRoutes
170
[2021-02-09 13:34:37,932] [WARN] [akka.actor.ActorSystemImpl] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Binding with a connection source not supported with HTTP/2. Falling back to HTTP/1.1.
171
[2021-02-09 13:34:37,932] [WARN] [akka.actor.ActorSystemImpl] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Binding with a connection source not supported with HTTP/2. Falling back to HTTP/1.1.
172
[2021-02-09 13:34:37,933] [WARN] [akka.actor.ActorSystemImpl] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-6] - Binding with a connection source not supported with HTTP/2. Falling back to HTTP/1.1.
173
[2021-02-09 13:34:38,059] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:46465] [akkaManagementBound] [IntegrationSpec-akka.actor.default-dispatcher-6] - Bound Akka Management (HTTP) endpoint to: 127.0.0.1:40073
174
[2021-02-09 13:34:38,060] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:44359] [akkaManagementBound] [IntegrationSpec-akka.actor.default-dispatcher-12] - Bound Akka Management (HTTP) endpoint to: 127.0.0.1:41983
175
[2021-02-09 13:34:38,061] [INFO] [akka.management.scaladsl.AkkaManagement] [akka://[email protected]:39469] [akkaManagementBound] [IntegrationSpec-akka.actor.default-dispatcher-12] - Bound Akka Management (HTTP) endpoint to: 127.0.0.1:35011
176
[2021-02-09 13:34:38,062] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-20] - Initiating bootstrap procedure using config method...
177
[2021-02-09 13:34:38,063] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Initiating bootstrap procedure using config method...
178
[2021-02-09 13:34:38,064] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Initiating bootstrap procedure using config method...
179
[2021-02-09 13:34:38,066] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Bootstrap using `akka.discovery` method: config
180
[2021-02-09 13:34:38,066] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Bootstrap using `akka.discovery` method: config
181
[2021-02-09 13:34:38,067] [INFO] [akka.management.cluster.bootstrap.ClusterBootstrap] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-20] - Bootstrap using `akka.discovery` method: config
182
[2021-02-09 13:34:38,077] [INFO] [akka.cluster.sharding.typed.scaladsl.ClusterSharding] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Starting Shard Region [ShoppingCart]...
183
[2021-02-09 13:34:38,083] [INFO] [akka.cluster.sharding.ShardRegion] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-10] - ShoppingCart: Idle entities will be passivated after [2.000 min]
184
[2021-02-09 13:34:38,092] [INFO] [akka.cluster.sharding.typed.scaladsl.ClusterSharding] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Starting Shard Region [sharded-daemon-process-ItemPopularityProjection]...
185
[2021-02-09 13:34:38,096] [INFO] [akka.cluster.sharding.typed.scaladsl.ClusterSharding] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Starting Shard Region [ShoppingCart]...
186
[2021-02-09 13:34:38,099] [INFO] [akka.cluster.sharding.ShardRegion] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - ShoppingCart: Idle entities will be passivated after [2.000 min]
187
[2021-02-09 13:34:38,099] [INFO] [akka.cluster.sharding.typed.scaladsl.ClusterSharding] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Starting Shard Region [sharded-daemon-process-ItemPopularityProjection]...
188
[2021-02-09 13:34:38,103] [INFO] [akka.cluster.sharding.typed.scaladsl.ClusterSharding] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-6] - Starting Shard Region [ShoppingCart]...
189
[2021-02-09 13:34:38,106] [INFO] [akka.cluster.sharding.ShardRegion] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-6] - ShoppingCart: Idle entities will be passivated after [2.000 min]
190
[2021-02-09 13:34:38,109] [INFO] [akka.cluster.sharding.typed.scaladsl.ClusterSharding] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-6] - Starting Shard Region [sharded-daemon-process-ItemPopularityProjection]...
191
[2021-02-09 13:34:38,118] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:44359] [akkaBootstrapInit] [IntegrationSpec-akka.actor.default-dispatcher-3] - Locating service members. Using discovery [akka.discovery.config.ConfigServiceDiscovery], join decider [akka.management.cluster.bootstrap.LowestAddressJoinDecider], scheme [http]
192
[2021-02-09 13:34:38,123] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-3] - Looking up [Lookup(shopping-cart-service,Some(management),Some(tcp))]
193
[2021-02-09 13:34:38,124] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:44359] [akkaBootstrapResolved] [IntegrationSpec-akka.actor.default-dispatcher-3] - Located service members based on: [Lookup(shopping-cart-service,Some(management),Some(tcp))]: [ResolvedTarget(127.0.0.1,Some(40073),None), ResolvedTarget(127.0.0.1,Some(41983),None), ResolvedTarget(127.0.0.1,Some(35011),None)], filtered to [127.0.0.1:40073, 127.0.0.1:41983, 127.0.0.1:35011]
194
[2021-02-09 13:34:38,137] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:46465] [akkaBootstrapInit] [IntegrationSpec-akka.actor.default-dispatcher-20] - Locating service members. Using discovery [akka.discovery.config.ConfigServiceDiscovery], join decider [akka.management.cluster.bootstrap.LowestAddressJoinDecider], scheme [http]
195
[2021-02-09 13:34:38,138] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:39469] [akkaBootstrapInit] [IntegrationSpec-akka.actor.default-dispatcher-13] - Locating service members. Using discovery [akka.discovery.config.ConfigServiceDiscovery], join decider [akka.management.cluster.bootstrap.LowestAddressJoinDecider], scheme [http]
196
[2021-02-09 13:34:38,138] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:39469] [] [IntegrationSpec-akka.actor.default-dispatcher-13] - Looking up [Lookup(shopping-cart-service,Some(management),Some(tcp))]
197
[2021-02-09 13:34:38,139] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:39469] [akkaBootstrapResolved] [IntegrationSpec-akka.actor.default-dispatcher-15] - Located service members based on: [Lookup(shopping-cart-service,Some(management),Some(tcp))]: [ResolvedTarget(127.0.0.1,Some(40073),None), ResolvedTarget(127.0.0.1,Some(41983),None), ResolvedTarget(127.0.0.1,Some(35011),None)], filtered to [127.0.0.1:40073, 127.0.0.1:41983, 127.0.0.1:35011]
198
[2021-02-09 13:34:38,138] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:46465] [] [IntegrationSpec-akka.actor.default-dispatcher-20] - Looking up [Lookup(shopping-cart-service,Some(management),Some(tcp))]
199
[2021-02-09 13:34:38,141] [INFO] [akka.management.cluster.bootstrap.internal.BootstrapCoordinator] [akka://[email protected]:46465] [akkaBootstrapResolved] [IntegrationSpec-akka.actor.default-dispatcher-20] - Located service members based on: [Lookup(shopping-cart-service,Some(management),Some(tcp))]: [ResolvedTarget(127.0.0.1,Some(40073),None), ResolvedTarget(127.0.0.1,Some(41983),None), ResolvedTarget(127.0.0.1,Some(35011),None)], filtered to [127.0.0.1:40073, 127.0.0.1:41983, 127.0.0.1:35011]
200
[2021-02-09 13:34:38,628] [INFO] [akka.actor.typed.ActorSystem] [] [] [IntegrationSpec-akka.actor.default-dispatcher-10] - Shopping online at gRPC server 127.0.0.1:44249
201
Error: 2-09 13:34:38,646] [ERROR] [akka.io.TcpListener] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-14] - Bind failed for TCP channel on endpoint [localhost/127.0.0.1:39469]
202
java.net.BindException: [localhost/127.0.0.1:39469] Address already in use
203
at java.base/sun.nio.ch.Net.bind0(Native Method)
204
at java.base/sun.nio.ch.Net.bind(Net.java:455)
205
at java.base/sun.nio.ch.Net.bind(Net.java:447)
206
at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:227)
207
at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:80)
208
at akka.io.TcpListener.liftedTree1$1(TcpListener.scala:60)
209
at akka.io.TcpListener.<init>(TcpListener.scala:57)
210
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
211
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
212
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
213
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
214
at akka.util.Reflect$.instantiate(Reflect.scala:73)
215
at akka.actor.ArgsReflectConstructor.produce(IndirectActorProducer.scala:101)
216
at akka.actor.Props.newActor(Props.scala:226)
217
at akka.actor.ActorCell.newActor(ActorCell.scala:613)
218
at akka.actor.ActorCell.create(ActorCell.scala:640)
219
at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:513)
220
at akka.actor.ActorCell.systemInvoke(ActorCell.scala:535)
221
at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:295)
222
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
223
at akka.dispatch.Mailbox.exec(Mailbox.scala:243)
224
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
225
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
226
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
227
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
228
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
229
[2021-02-09 13:34:38,651] [INFO] [akka.actor.typed.ActorSystem] [] [] [IntegrationSpec-akka.actor.default-dispatcher-24] - Shopping online at gRPC server 127.0.0.1:45379
230
Error: 2-09 13:34:38,651] [ERROR] [akka.actor.typed.ActorSystem] [] [] [IntegrationSpec-akka.actor.default-dispatcher-12] - Failed to bind gRPC endpoint, terminating system
231
akka.stream.impl.io.ConnectionSourceStage$$anon$1$$anon$2: Bind failed because of java.net.BindException: [localhost/127.0.0.1:39469] Address already in use
232
Caused by: java.net.BindException: [localhost/127.0.0.1:39469] Address already in use
233
at java.base/sun.nio.ch.Net.bind0(Native Method)
234
at java.base/sun.nio.ch.Net.bind(Net.java:455)
235
at java.base/sun.nio.ch.Net.bind(Net.java:447)
236
at java.base/sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:227)
237
at java.base/sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:80)
238
at akka.io.TcpListener.liftedTree1$1(TcpListener.scala:60)
239
at akka.io.TcpListener.<init>(TcpListener.scala:57)
240
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
241
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
242
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
243
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
244
at akka.util.Reflect$.instantiate(Reflect.scala:73)
245
at akka.actor.ArgsReflectConstructor.produce(IndirectActorProducer.scala:101)
246
at akka.actor.Props.newActor(Props.scala:226)
247
at akka.actor.ActorCell.newActor(ActorCell.scala:613)
248
at akka.actor.ActorCell.create(ActorCell.scala:640)
249
at akka.actor.ActorCell.invokeAll$1(ActorCell.scala:513)
250
at akka.actor.ActorCell.systemInvoke(ActorCell.scala:535)
251
at akka.dispatch.Mailbox.processAllSystemMessages(Mailbox.scala:295)
252
at akka.dispatch.Mailbox.run(Mailbox.scala:230)
253
at akka.dispatch.Mailbox.exec(Mailbox.scala:243)
254
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
255
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
256
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
257
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
258
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
259
[2021-02-09 13:34:38,656] [INFO] [akka.cluster.singleton.ClusterSingletonManager] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-7] - Exited [akka://[email protected]:44359]
260
[2021-02-09 13:34:38,656] [INFO] [akka.cluster.singleton.ClusterSingletonManager] [akka://[email protected]:44359] [] [IntegrationSpec-akka.actor.default-dispatcher-7] - Exited [akka://[email protected]:44359]
gRPC is trying to bind to the same port as Akka remoting. The reason is that the gRPC ports are allocated by the test with SocketUtil.temporaryServerAddresses. Those are released before the ActorSystem is started and Artery binds to same port, which is then taken when gRPC tries to bind to the configured port.
Let's see how frequent this failure is before doing anything.
We could assign the Artery ports via SocketUtil.temporaryServerAddresses also, but adds some more complexity to the test.
We could assign the Artery ports via
SocketUtil.temporaryServerAddressesalso, but adds some more complexity to the test.
I'd rather ban a few ports from the values returned by SocketUtil.temporaryServerAddresses if that means that Artery can run on tests using well-known ports.
OTOH, artery may be the only last port we assign statically. If we make that random would we be able to run tests in parallel?
port 0 is used for Artery in these tests, i.e. random port, but it's selection is not coordinated with SocketUtil.temporaryServerAddresses