javarwindowseclipseh2o

ERROR: Unexpected HTTP Status code: 404 Not Found (url = http://localhost:54321/3/Frames/RTMP_sid_afb5_1?row_count=10)


I installed H2o (3.4), Java SE SDK (17), and use R (4.1.3). I am working on deep autoencoder. I was able to split my data using SplitFrame and generated autoencoder model and everything was working well. A week later, when I was working with the same data to regenerate my model because I didn't save my workspace, I had to split again, and then the following error came up. I have been battling with it for 3 days now. See the error below:

ERROR: Unexpected HTTP Status code: 404 Not Found (url = http://localhost:54321/3/Frames/RTMP_sid_afb5_1?row_count=10)

water.exceptions.H2OKeyNotFoundArgumentException
 [1] "water.exceptions.H2OKeyNotFoundArgumentException: Object 'RTMP_sid_afb5_1' not found for argument: key"      
 [2] "    water.api.FramesHandler.getFromDKV(FramesHandler.java:136)"                                              
 [3] "    water.api.FramesHandler.doFetch(FramesHandler.java:226)"                                                 
 [4] "    water.api.FramesHandler.doFetch(FramesHandler.java:221)"                                                 
 [5] "    water.api.FramesHandler.fetch(FramesHandler.java:200)"                                                   
 [6] "    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)"                          
 [7] "    java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)"        
 [8] "    java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)"
 [9] "    java.base/java.lang.reflect.Method.invoke(Method.java:568)"                                              
[10] "    water.api.Handler.handle(Handler.java:60)"                                                               
[11] "    water.api.RequestServer.serve(RequestServer.java:472)"                                                   
[12] "    water.api.RequestServer.doGeneric(RequestServer.java:303)"                                               
[13] "    water.api.RequestServer.doGet(RequestServer.java:225)"                                                   
[14] "    javax.servlet.http.HttpServlet.service(HttpServlet.java:687)"                                            
[15] "    javax.servlet.http.HttpServlet.service(HttpServlet.java:790)"                                            
[16] "    org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)"                                  
[17] "    org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:535)"                              
[18] "    org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)"                       
[19] "    org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1317)"                      
[20] "    org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)"                        
[21] "    org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)"                               
[22] "    org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)"                        
[23] "    org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1219)"                       
[24] "    org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)"                           
[25] "    org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)"                   
[26] "    org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)"                         
[27] "    water.webserver.jetty9.Jetty9ServerAdapter$LoginHandler.handle(Jetty9ServerAdapter.java:130)"            
[28] "    org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)"                   
[29] "    org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)"                         
[30] "    org.eclipse.jetty.server.Server.handle(Server.java:531)"                                                 
[31] "    org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352)"                                       
[32] "    org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)"                             
[33] "    org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:281)"             
[34] "    org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102)"                                       
[35] "    org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)"                                    
[36] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)"                  
[37] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)"                
[38] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)"               
[39] "    org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)"                      
[40] "    org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)"
[41] "    org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:762)"                        
[42] "    org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:680)"                         
[43] "    java.base/java.lang.Thread.run(Thread.java:833)"                                                         

Error in .h2o.doSafeREST(h2oRestApiVersion = h2oRestApiVersion, urlSuffix = page,  : 
  

ERROR MESSAGE:

Object 'RTMP_sid_afb5_1' not found for argument: key```

Solution

  • I have finally resolved the issue. I had to convert the dataset again to an h2o object before calling the splitFrame function.

    trans_hf <- as.h2o(atm_trans)
    splits <- h2o.splitFrame(trans_hf, ratios = c(0.4, 0.4), seed = 42)
    

    I don't know why I had to do that because the trans_hf was not empty nor null but it is ok now.