[
https://issues.apache.org/jira/browse/HIVE-26286?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17583330#comment-17583330
]
Zhiguo Wu edited comment on HIVE-26286 at 8/23/22 4:09 AM:
-----------------------------------------------------------
I tracked the code, It's seems because class variable _*server*_ is used before
it is initialized.
{code:java}
public Server runServer(int port)
throws Exception {
// ... ignore some code
// !!!!!! server will be used inside createChannelConnector()
server.addConnector(createChannelConnector());
// Start the server
server.start();
// !!!!!! server is initialized here
this.server = server;
return server;
}
private Connector createChannelConnector() {
ServerConnector connector;
final HttpConfiguration httpConf = new HttpConfiguration();
httpConf.setRequestHeaderSize(1024 * 64);
final HttpConnectionFactory http = new HttpConnectionFactory(httpConf);
// !!!!!! server will be used here, it passes null to ServerConnector, cause
NPE
if (conf.getBoolean(AppConfig.USE_SSL, false)) {
// ... ignore some codes
connector = new ServerConnector(server, sslContextFactory, http);
} else {
connector = new ServerConnector(server, http);
}
connector.setReuseAddress(true);
connector.setHost(conf.get(AppConfig.HOST, DEFAULT_HOST));
connector.setPort(conf.getInt(AppConfig.PORT, DEFAULT_PORT));
return connector;
}{code}
was (Author: JIRAUSER294567):
I tracked the code, It's seems because class variable _*server*_ is used before
it is initialized.
{code:java}
public Server runServer(int port)
throws Exception {
... ignore some code
!!!!!! server will be used inside createChannelConnector()
server.addConnector(createChannelConnector());
// Start the server
server.start();
!!!!!! server is initialized here
this.server = server;
return server;
}
private Connector createChannelConnector() {
ServerConnector connector;
final HttpConfiguration httpConf = new HttpConfiguration();
httpConf.setRequestHeaderSize(1024 * 64);
final HttpConnectionFactory http = new HttpConnectionFactory(httpConf);
!!!!!! server will be used here, it passes null to ServerConnector, cause NPE
if (conf.getBoolean(AppConfig.USE_SSL, false)) {
... ignore some codes
connector = new ServerConnector(server, sslContextFactory, http);
} else {
connector = new ServerConnector(server, http);
}
connector.setReuseAddress(true);
connector.setHost(conf.get(AppConfig.HOST, DEFAULT_HOST));
connector.setPort(conf.getInt(AppConfig.PORT, DEFAULT_PORT));
return connector;
}{code}
> Hive WebHCat Tests are failing
> ------------------------------
>
> Key: HIVE-26286
> URL: https://issues.apache.org/jira/browse/HIVE-26286
> Project: Hive
> Issue Type: Bug
> Components: HCatalog
> Affects Versions: 4.0.0
> Environment: [link title|http://example.com]
> Reporter: Anmol Sundaram
> Priority: Major
>
> The Hive TestWebHCatE2e tests seem to be failing due to
>
> {quote}templeton: Server failed to start: null
> [main] ERROR org.apache.hive.hcatalog.templeton.Main - Server failed to
> start:
> java.lang.NullPointerException
> at
> org.eclipse.jetty.server.AbstractConnector.<init>(AbstractConnector.java:174)
> at
> org.eclipse.jetty.server.AbstractNetworkConnector.<init>(AbstractNetworkConnector.java:44)
> at org.eclipse.jetty.server.ServerConnector.<init>(ServerConnector.java:220)
> at org.eclipse.jetty.server.ServerConnector.<init>(ServerConnector.java:143)
> at
> org.apache.hive.hcatalog.templeton.Main.createChannelConnector(Main.java:295)
> at org.apache.hive.hcatalog.templeton.Main.runServer(Main.java:252)
> at org.apache.hive.hcatalog.templeton.Main.run(Main.java:147)
> at
> org.apache.hive.hcatalog.templeton.TestWebHCatE2e.startHebHcatInMem(TestWebHCatE2e.java:94)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:59){quote}
> {quote} {quote}
> This seems to be caused due to HIVE-18728 , which is breaking.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)