Skip to content

Running integration tests with elasticsearch-nio fails in Intellij #28011

@ywelsch

Description

@ywelsch

I cannot run integration tests in IntelliJ that use elasticsearch-nio due to security manager permissions issue. As we randomize between elasticsearch-nio and mocksocket, there's a 50% chance that any integration test such as testAckedIndexing fails on my machine.

[2017-12-28T08:09:29,448][TRACE][o.e.d.z.UnicastZenPing   ] [node_t1] [2] failed to ping {node_t0}{xNA81hFRSBSzYh1ndH6GqQ}{3YibJ7JqTEONm0xqSMGRdw}{127.0.0.1}{127.0.0.1:30100}
org.elasticsearch.transport.ConnectTransportException: [node_t0][127.0.0.1:30100] general node connection failure
	at org.elasticsearch.transport.TcpTransport.openConnection(TcpTransport.java:661) ~[main/:?]
	at org.elasticsearch.transport.TcpTransport.openConnection(TcpTransport.java:122) ~[main/:?]
	at org.elasticsearch.test.transport.MockTransportService$LookupTestTransport.openConnection(MockTransportService.java:543) ~[main/:?]
	at org.elasticsearch.transport.TransportService.openConnection(TransportService.java:348) ~[main/:?]
	at org.elasticsearch.test.transport.MockTransportService.openConnection(MockTransportService.java:808) ~[main/:?]
	at org.elasticsearch.discovery.zen.UnicastZenPing$PingingRound.getOrConnect(UnicastZenPing.java:399) ~[main/:?]
	at org.elasticsearch.discovery.zen.UnicastZenPing$3.doRun(UnicastZenPing.java:508) [main/:?]
	at org.elasticsearch.common.util.concurrent.ThreadContext$ContextPreservingAbstractRunnable.doRun(ThreadContext.java:635) [main/:?]
	at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) [main/:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_111]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_111]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_111]
Caused by: java.security.AccessControlException: access denied ("java.net.SocketPermission" "127.0.0.1:30100" "connect,resolve")
	at java.security.AccessControlContext.checkPermission(AccessControlContext.java:472) ~[?:1.8.0_111]
	at java.security.AccessController.checkPermission(AccessController.java:884) ~[?:1.8.0_111]
	at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) ~[?:1.8.0_111]
	at java.lang.SecurityManager.checkConnect(SecurityManager.java:1051) ~[?:1.8.0_111]
	at sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:625) ~[?:?]
	at org.elasticsearch.nio.ChannelFactory$RawChannelFactory.lambda$connect$0(ChannelFactory.java:215) ~[main/:?]
	at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_111]
	at org.elasticsearch.nio.ChannelFactory$RawChannelFactory.connect(ChannelFactory.java:215) ~[main/:?]
	at org.elasticsearch.nio.ChannelFactory$RawChannelFactory.openNioChannel(ChannelFactory.java:157) ~[main/:?]
	at org.elasticsearch.nio.ChannelFactory.openNioChannel(ChannelFactory.java:45) ~[main/:?]
	at org.elasticsearch.nio.NioGroup.openChannel(NioGroup.java:104) ~[main/:?]
	at org.elasticsearch.transport.nio.NioTransport.initiateChannel(NioTransport.java:91) ~[main/:?]
	at org.elasticsearch.transport.nio.NioTransport.initiateChannel(NioTransport.java:57) ~[main/:?]
	at org.elasticsearch.transport.TcpTransport.openConnection(TcpTransport.java:604) ~[main/:?]
	... 11 more

maybe relates #27801

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions