陈述 presto 时出错
Error when stating presto
我尝试在这个 link 之后的单个节点上安装 Facebook presto。
该节点具有此配置:
node.properties
node.environment=prestotestcluster
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff
node.data-dir=/home/ogama/presto/data
jvm.config
-server
-Xmx1G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:OnOutOfMemoryError=kill -9 %p
log.properties
com.facebook.presto=INFO
config.properties
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://localhost:8080
我还在 <presto_install>/etc/catalog/cassandra.properties
中配置了一个 cassandra 目录:
connector.name=cassandra
cassandra.contact-points=localhost
当我尝试使用 launcher run
启动 presto 时,出现此错误:
我收到以下错误:
4) Error in custom provider, java.lang.NullPointerException
while locating io.airlift.jmx.JmxModule$JmxAnnouncementProvider
while locating io.airlift.discovery.client.ServiceAnnouncement annotated with @com.google.inject.multibindings.Element(setName=,uniqueId=267, type=MULTIBINDER, keyType=)
at io.airlift.discovery.client.DiscoveryModule.configure(DiscoveryModule.java:68) (via modules: io.airlift.discovery.client.DiscoveryModule -> com.google.inject.multibindings.Multibinder$RealMultibinder)
while locating java.util.Set<io.airlift.discovery.client.ServiceAnnouncement>
for parameter 1 at io.airlift.discovery.client.Announcer.<init>(Announcer.java:70)
at io.airlift.discovery.client.DiscoveryModule.configure(DiscoveryModule.java:63)
while locating io.airlift.discovery.client.Announcer
for parameter 1 at io.airlift.discovery.client.DiscoveryModule.createMergingServiceSelectorFactory(DiscoveryModule.java:120)
at io.airlift.discovery.client.DiscoveryModule.createMergingServiceSelectorFactory(DiscoveryModule.java:120)
at io.airlift.discovery.client.DiscoveryModule.createMergingServiceSelectorFactory(DiscoveryModule.java:120)
while locating io.airlift.discovery.client.MergingServiceSelectorFactory
at io.airlift.discovery.client.DiscoveryModule.configure(DiscoveryModule.java:72)
while locating io.airlift.discovery.client.ServiceSelectorFactory
for parameter 0 at io.airlift.discovery.client.ServiceSelectorProvider.setServiceSelectorFactory(ServiceSelectorProvider.java:49)
at com.facebook.presto.server.CoordinatorModule.configure(CoordinatorModule.java:135) (via modules: com.facebook.presto.server.ServerMainModule -> com.facebook.presto.server.CoordinatorModule)
Caused by: java.lang.NullPointerException
at io.airlift.jmx.JmxModule$JmxAnnouncementProvider.get(JmxModule.java:67)
at io.airlift.jmx.JmxModule$JmxAnnouncementProvider.get(JmxModule.java:52)
at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)
at com.google.inject.internal.BoundProviderFactory.provision(BoundProviderFactory.java:72)
at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61)
关于这个问题有什么想法吗?
你有没有机会 运行 chrooted 环境中的 prestodb?这对我来说是个问题,我没有深入研究,只是在 Virtualbox 中的全功能 Debian Jessie VM 中尝试 运行 将其安装 运行 就好了。
感谢您的回答。
我已经通过更改可能 java 版本解决了可能的问题。
我尝试在这个 link 之后的单个节点上安装 Facebook presto。 该节点具有此配置:
node.properties
node.environment=prestotestcluster
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff
node.data-dir=/home/ogama/presto/data
jvm.config
-server
-Xmx1G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:OnOutOfMemoryError=kill -9 %p
log.properties
com.facebook.presto=INFO
config.properties
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://localhost:8080
我还在 <presto_install>/etc/catalog/cassandra.properties
中配置了一个 cassandra 目录:
connector.name=cassandra
cassandra.contact-points=localhost
当我尝试使用 launcher run
启动 presto 时,出现此错误:
我收到以下错误:
4) Error in custom provider, java.lang.NullPointerException
while locating io.airlift.jmx.JmxModule$JmxAnnouncementProvider
while locating io.airlift.discovery.client.ServiceAnnouncement annotated with @com.google.inject.multibindings.Element(setName=,uniqueId=267, type=MULTIBINDER, keyType=)
at io.airlift.discovery.client.DiscoveryModule.configure(DiscoveryModule.java:68) (via modules: io.airlift.discovery.client.DiscoveryModule -> com.google.inject.multibindings.Multibinder$RealMultibinder)
while locating java.util.Set<io.airlift.discovery.client.ServiceAnnouncement>
for parameter 1 at io.airlift.discovery.client.Announcer.<init>(Announcer.java:70)
at io.airlift.discovery.client.DiscoveryModule.configure(DiscoveryModule.java:63)
while locating io.airlift.discovery.client.Announcer
for parameter 1 at io.airlift.discovery.client.DiscoveryModule.createMergingServiceSelectorFactory(DiscoveryModule.java:120)
at io.airlift.discovery.client.DiscoveryModule.createMergingServiceSelectorFactory(DiscoveryModule.java:120)
at io.airlift.discovery.client.DiscoveryModule.createMergingServiceSelectorFactory(DiscoveryModule.java:120)
while locating io.airlift.discovery.client.MergingServiceSelectorFactory
at io.airlift.discovery.client.DiscoveryModule.configure(DiscoveryModule.java:72)
while locating io.airlift.discovery.client.ServiceSelectorFactory
for parameter 0 at io.airlift.discovery.client.ServiceSelectorProvider.setServiceSelectorFactory(ServiceSelectorProvider.java:49)
at com.facebook.presto.server.CoordinatorModule.configure(CoordinatorModule.java:135) (via modules: com.facebook.presto.server.ServerMainModule -> com.facebook.presto.server.CoordinatorModule)
Caused by: java.lang.NullPointerException
at io.airlift.jmx.JmxModule$JmxAnnouncementProvider.get(JmxModule.java:67)
at io.airlift.jmx.JmxModule$JmxAnnouncementProvider.get(JmxModule.java:52)
at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:81)
at com.google.inject.internal.BoundProviderFactory.provision(BoundProviderFactory.java:72)
at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:61)
关于这个问题有什么想法吗?
你有没有机会 运行 chrooted 环境中的 prestodb?这对我来说是个问题,我没有深入研究,只是在 Virtualbox 中的全功能 Debian Jessie VM 中尝试 运行 将其安装 运行 就好了。
感谢您的回答。 我已经通过更改可能 java 版本解决了可能的问题。