I am seeing this new exception while recovering from S3 on EC2 with 0.16.2.
Error injecting constructor,
java.nio.channels.OverlappingFileLockException
at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:47)
while locating org.elasticsearch.env.NodeEnvironment
Caused by: java.nio.channels.OverlappingFileLockException
at
sun.nio.ch.FileChannelImpl$SharedFileLockTable.checkList(FileChannelImpl.java:1215)
at
sun.nio.ch.FileChannelImpl$SharedFileLockTable.add(FileChannelImpl.java:1117)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:923)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:978)
at org.apache.lucene.store.NativeFSLock.obtain(NativeFSLockFactory.java:216)
at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:69)
at
org.elasticsearch.env.NodeEnvironment$$FastClassByGuice$$1ca63855.newInstance()
at
org.elasticsearch.common.inject.internal.cglib.reflect.FastConstructor.newInstance(FastConstructor.java:40)
at
org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
at
org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:85)
at
org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:111)
at
org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:45)
at
org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:811)
at
org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:42)
at org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:54)
at
org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:48)
at
org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:200)
at
org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:194)
at
org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:804)
at
org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:194)
at
org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:176)
at
org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:113)
at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:92)
at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:69)
at
org.elasticsearch.common.inject.ModulesBuilder.createInjector(ModulesBuilder.java:58)
at
org.elasticsearch.node.internal.InternalNode.(InternalNode.java:147)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:159)
at
com.tracermedia.elasticsearch.ElasticSearchServer.start(ElasticSearchServer.java:52)
I get a lot of them.
I saw some mention of this error in regards to Lucene. Should I be
concerned?
Are you running several nodes on the same machine? Basically, thats the node trying to obtain a lock for its data location (/data/nodes/N), and it fails to obtain one.
On Thursday, June 16, 2011 at 11:32 PM, James Cook wrote:
I am seeing this new exception while recovering from S3 on EC2 with 0.16.2.
Error injecting constructor, java.nio.channels.OverlappingFileLockException
at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:47)
while locating org.elasticsearch.env.NodeEnvironment
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.FileChannelImpl$SharedFileLockTable.checkList(FileChannelImpl.java:1215)
at sun.nio.ch.FileChannelImpl$SharedFileLockTable.add(FileChannelImpl.java:1117)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:923)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:978)
at org.apache.lucene.store.NativeFSLock.obtain(NativeFSLockFactory.java:216)
at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:69)
at org.elasticsearch.env.NodeEnvironment$$FastClassByGuice$$1ca63855.newInstance()
at org.elasticsearch.common.inject.internal.cglib.reflect.FastConstructor.newInstance(FastConstructor.java:40)
at org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
at org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:85)
at org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:111)
at org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:45)
at org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:811)
at org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:42)
at org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:54)
at org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:48)
at org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:200)
at org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:194)
at org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:804)
at org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:194)
at org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:176)
at org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:113)
at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:92)
at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:69)
at org.elasticsearch.common.inject.ModulesBuilder.createInjector(ModulesBuilder.java:58)
at org.elasticsearch.node.internal.InternalNode.(InternalNode.java:147)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:159)
at com.tracermedia.elasticsearch.ElasticSearchServer.start(ElasticSearchServer.java:52)
I get a lot of them.
I saw some mention of this error in regards to Lucene. Should I be concerned?
Hmmm, not intentionally. Perhaps my web app did not shut down completely as
a new one is starting up. I am using Amazon's Elastic Beanstalk service, so
I suppose something may of been active in memory as a new web app was
deployed. I'll keep an eye on it in the future and see if any additional
Java processes are running.
I don't think that was the case since I would of expected port conflicts and
such as ES was starting up prior to receiving these exceptions.
Are you running several nodes on the same machine? Basically, thats the
node trying to obtain a lock for its data location (/data/nodes/N), and it
fails to obtain one.
On Thursday, June 16, 2011 at 11:32 PM, James Cook wrote:
I am seeing this new exception while recovering from S3 on EC2 with 0.16.2.
Error injecting constructor,
java.nio.channels.OverlappingFileLockException
at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:47)
while locating org.elasticsearch.env.NodeEnvironment
Caused by: java.nio.channels.OverlappingFileLockException
at
sun.nio.ch.FileChannelImpl$SharedFileLockTable.checkList(FileChannelImpl.java:1215)
at
sun.nio.ch.FileChannelImpl$SharedFileLockTable.add(FileChannelImpl.java:1117)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:923)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:978)
at
org.apache.lucene.store.NativeFSLock.obtain(NativeFSLockFactory.java:216)
at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:69)
at
org.elasticsearch.env.NodeEnvironment$$FastClassByGuice$$1ca63855.newInstance()
at
org.elasticsearch.common.inject.internal.cglib.reflect.FastConstructor.newInstance(FastConstructor.java:40)
at
org.elasticsearch.common.inject.DefaultConstructionProxyFactory$1.newInstance(DefaultConstructionProxyFactory.java:60)
at
org.elasticsearch.common.inject.ConstructorInjector.construct(ConstructorInjector.java:85)
at
org.elasticsearch.common.inject.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:111)
at
org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:45)
at
org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:811)
at
org.elasticsearch.common.inject.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:42)
at org.elasticsearch.common.inject.Scopes$1$1.get(Scopes.java:54)
at
org.elasticsearch.common.inject.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:48)
at
org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:200)
at
org.elasticsearch.common.inject.InjectorBuilder$1.call(InjectorBuilder.java:194)
at
org.elasticsearch.common.inject.InjectorImpl.callInContext(InjectorImpl.java:804)
at
org.elasticsearch.common.inject.InjectorBuilder.loadEagerSingletons(InjectorBuilder.java:194)
at
org.elasticsearch.common.inject.InjectorBuilder.injectDynamically(InjectorBuilder.java:176)
at
org.elasticsearch.common.inject.InjectorBuilder.build(InjectorBuilder.java:113)
at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:92)
at org.elasticsearch.common.inject.Guice.createInjector(Guice.java:69)
at
org.elasticsearch.common.inject.ModulesBuilder.createInjector(ModulesBuilder.java:58)
at
org.elasticsearch.node.internal.InternalNode.(InternalNode.java:147)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:159)
at
com.tracermedia.elasticsearch.ElasticSearchServer.start(ElasticSearchServer.java:52)
I get a lot of them.
I saw some mention of this error in regards to Lucene. Should I be
concerned?
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.