1

I'm brand new in the use of h2o (trough R) and have now encountered a problem when using h2o.automl. The problem is very much similar to that of another thread (R - H20 - ERROR: Unexpected HTTP Status code: 500 Server Error), however the error message thrown is different - I get a javaNullPointerException.

My R version is 4.1.1 and h2o package is the latest one (3.34.0.1)

I list below a snippet of my code, the error message, and the output after the h2o.init command.

Any help would be greatly appreciated!

Thanks heaps, Christian

library(h2o)
h2o.init()

url <- "http://h2o-public-test-data.s3.amazonaws.com/smalldata/iris/iris_wheader.csv"
iris <- h2o.importFile(url)

parts <- h2o.splitFrame(iris, 0.8)
train <- parts[[1]]
test <- parts[[2]]

summary(train)
nrow(train)
nrow(test)

mA <- h2o.automl(1:4, 5, train,
                 max_runtime_secs = 30,
                 max_models=1)

The complete error message is as follows:

ERROR: Unexpected HTTP Status code: 500 Server Error (url = http://localhost:54321/99/AutoMLBuilder)

java.lang.NullPointerException
 [1] "java.lang.NullPointerException"                                                                              
 [2] "    water.nbhm.NonBlockingHashMap.putIfMatch(NonBlockingHashMap.java:369)"                                   
 [3] "    water.nbhm.NonBlockingHashMap.put(NonBlockingHashMap.java:320)"                                          
 [4] "    ai.h2o.automl.AutoMLSession.getModelingSteps(AutoMLSession.java:76)"                                     
 [5] "    ai.h2o.automl.ModelingStepsRegistry.getOrderedSteps(ModelingStepsRegistry.java:54)"                      
 [6] "    ai.h2o.automl.AutoML.getExecutionPlan(AutoML.java:330)"                                                  
 [7] "    ai.h2o.automl.AutoML.planWork(AutoML.java:359)"                                                          
 [8] "    ai.h2o.automl.AutoML.submit(AutoML.java:395)"                                                            
 [9] "    ai.h2o.automl.AutoML.startAutoML(AutoML.java:80)"                                                        
[10] "    water.automl.api.AutoMLBuilderHandler.build(AutoMLBuilderHandler.java:15)"                               
[11] "    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)"                          
[12] "    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)"        
[13] "    java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)"
[14] "    java.base/java.lang.reflect.Method.invoke(Method.java:568)"                                              
[15] "    water.api.Handler.handle(Handler.java:60)"                                                               
[16] "    water.api.RequestServer.serve(RequestServer.java:470)"                                                   
[17] "    water.api.RequestServer.doGeneric(RequestServer.java:301)"                                               
[18] "    water.api.RequestServer.doPost(RequestServer.java:227)"                                                  
[19] "    javax.servlet.http.HttpServlet.service(HttpServlet.java:707)"                                            
[20] "    javax.servlet.http.HttpServlet.service(HttpServlet.java:790)"                                            
[21] "    org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)"                                  
[22] "    org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:535)"                              
[23] "    org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)"                       
[24] "    org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1317)"                      
[25] "    org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)"                        
[26] "    org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)"                               
[27] "    org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)"                        
[28] "    org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1219)"                       
[29] "    org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)"                           
[30] "    org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)"                   
[31] "    org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)"                         
[32] "    water.webserver.jetty9.Jetty9ServerAdapter$LoginHandler.handle(Jetty9ServerAdapter.java:130)"            
[33] "    org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)"                   
[34] "    org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)"                         
[35] "    org.eclipse.jetty.server.Server.handle(Server.java:531)"                                                 
[36] "    org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352)"                                       
[37] "    org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)"                             
[38] "    org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:281)"             
[39] "    org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102)"                                       
[40] "    org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)"                                    
[41] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)"                  
[42] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)"                
[43] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)"               
[44] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)"                      
[45] "    org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)"
[46] "    org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:762)"                        
[47] "    org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:680)"                         
[48] "    java.base/java.lang.Thread.run(Thread.java:833)"                                                         

Fejl i .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page,  : 
  

ERROR MESSAGE:

Caught exception: java.lang.NullPointerException

Should the problem be pointing towards a connection problem, here's what I get when running the h2o.init() command:

R is connected to the H2O cluster: 
    H2O cluster uptime:         43 minutes 18 seconds 
    H2O cluster timezone:       Europe/Copenhagen 
    H2O data parsing timezone:  UTC 
    H2O cluster version:        3.34.0.1 
    H2O cluster version age:    14 days, 20 hours and 2 minutes  
    H2O cluster name:           H2O_started_from_R_csoe0352_kcc786 
    H2O cluster total nodes:    1 
    H2O cluster total memory:   3.92 GB 
    H2O cluster total cores:    12 
    H2O cluster allowed cores:  12 
    H2O cluster healthy:        TRUE 
    H2O Connection ip:          localhost 
    H2O Connection port:        54321 
    H2O Connection proxy:       NA 
    H2O Internal Security:      FALSE 
    H2O API Extensions:         Amazon S3, Algos, AutoML, Core V3, TargetEncoder, Core V4 
    R Version:                  R version 4.1.1 (2021-08-10) 
cmiso84
  • 11
  • 2

1 Answers1

0

This is a known bug (I assume you're on Windows) with 3.34.0.1. Please upgrade to latest version of H2O and it should be fixed. Sorry for the bug!

Erin LeDell
  • 8,704
  • 1
  • 19
  • 35