What is your configuration for reggie’s endpoints? Gregg
> On Feb 27, 2017, at 10:38 AM, Timothy C Haas <h...@uwm.edu> wrote: > > Folks; > > I've fixed my phoenix ClassNotFound problem. Turns out, when > I log into the San Diego cluster computer, I'm assigned randomly > to one of their 640 nodes. Almost always, a different one each time. > I wasn't emptying the phoenix log directory that stored the > node's address from the previous run > of phoenix. So, phoenix was always trying to reach classerver > on the wrong node. I now delete all files in the phoenix log > directory before I start phoenix. I noticed this problem only > because I acted on a suggestion from this forum to use curl to > see if classserver could be reached. This experience might be > interesting to others working with Apache River on a cluster > computer platform. > > I'm now trying to get my application to register with reggie. The > following error message indicates I'm timing out on the socket. > The output shows that the reggie service (I turned on reggie debugging) > is indeed running and a socket has been connected to. > My SpaceAccessor.java code that tried to register follows. I'm > using only Apache River jars. The reggie configuration files > follow that. I think reggie can be reached on port 4160 but it does > say a different port in the dump (which changes every time the > script runs). I think reggie is not hearing the registrar request > but I don't know how to debug this or fix it. > > Regards, > > -Tim > > ---------------------------------------------------------------- > > INFO: ClassServer started > [[/projects/builder-group/jpg/apache-river/lib-dl/,/projects/builder-group/jpg/apache-river/lib/, > /projects/builder-group/jpg/apache- > river/lib-ext/], port 4160] > Feb 27, 2017 8:04:54 AM org.apache.river.outrigger.OutriggerServerImpl <init> > INFO: Outrigger server started: > org.apache.river.outrigger.OutriggerServerImpl@502438db > Feb 27, 2017 8:04:54 AM org.apache.river.phoenix.Activation init > INFO: activation daemon started > Feb 27, 2017 8:04:55 AM org.apache.river.reggie.RegistrarImpl$Unicast <init> > INFO: Reggie Unicast Discovery listening on port 33,814 > Feb 27, 2017 8:04:55 AM org.apache.river.reggie.RegistrarImpl$3 run > INFO: started Reggie: 8ed3b539-4a66-4941-941a-17715df5eea9, [nonsecure], > jini:// > tscc-2-53.sdsc.edu:33814/ > java.net.SocketTimeoutException: Read timed out > at java.net.SocketInputStream.socketRead0(Native Method) > at java.net.SocketInputStream.read(SocketInputStream.java:152) > at java.net.SocketInputStream.read(SocketInputStream.java:122) > at java.io.DataInputStream.readFully(DataInputStream.java:195) > at > org.apache.river.discovery.DiscoveryV2.doUnicastDiscovery(DiscoveryV2.java:460) > at > net.jini.core.discovery.LookupLocator$2.performDiscovery(LookupLocator.java:347) > at > org.apache.river.discovery.internal.MultiIPDiscovery.getSingleResponse(MultiIPDiscovery.java:153) > at > org.apache.river.discovery.internal.MultiIPDiscovery.getResponse(MultiIPDiscovery.java:82) > at > net.jini.core.discovery.LookupLocator.getRegistrar(LookupLocator.java:341) > at > net.jini.core.discovery.LookupLocator.getRegistrar(LookupLocator.java:315) > at SpaceAccessor.<init>(SpaceAccessor.java:83) > > --------------------- Socket info from SpaceAccessor.java ------- > > spaceaccessor: jiniURL= jini://tscc-2-53.sdsc.edu > locator= jini://tscc-2-53.sdsc.edu:4160/ > Port: 4160 > Canonical Host Name: tscc-2-53.sdsc.edu > Host Address: 132.249.107.73 > > Local Address: /132.249.107.73 > Local Port: 40406 > Local Socket Address: /132.249.107.73:40406 > > Receive Buffer Size: 87379 > Send Buffer Size: 330075 > > Keep-Alive: false > SO Timeout: 0 > isConnected= true > bad request " > bad request " > Read timed out > bad request " > > --------------------- SpaceAccessor.java code fragment -------------- > > import net.jini.core.discovery.LookupLocator; > import net.jini.core.lookup.*; > import net.jini.core.entry.Entry; > import net.jini.space.JavaSpace; > import net.jini.lookup.entry.*; > import java.io.*; > import java.rmi.*; > import java.net.*; > import java.util.*; > import net.jini.discovery.LookupDiscovery; > import net.jini.discovery.DiscoveryListener; > import net.jini.discovery.DiscoveryEvent; > import net.jini.discovery.Constants; > > public class SpaceAccessor { > > static String jiniURL = "jini://" + Id.mstrip; > > static final long MAX_LOOKUP_WAIT = 2000L; > static final int WAIT = 100000; > > JavaSpace space; > > public SpaceAccessor() { > LookupLocator locator = null; > ServiceRegistrar registrar = null; > > try { > System.setSecurityManager(new SecurityManager()); > } > catch (Exception e) { > e.printStackTrace(); > } > > if (Id.client) { > jiniURL = "jini://" + Id.mstrip + ":4160/"; > } > Id.printf_("spaceaccessor: jiniURL= " + jiniURL); > > try { > locator = new LookupLocator(jiniURL); > Thread.sleep(1000); > > Id.printf_("locator= " + locator.toString()); > Socket socket = new Socket(locator.getHost(),locator.getPort()); > printSocketInformation(socket); > Id.printf_("isConnected= " + (socket.isConnected())); > > registrar = locator.getRegistrar(WAIT); > > --------------------- start-reggie.config ----------------------- > > import org.apache.river.config.ConfigUtil; > import org.apache.river.start.NonActivatableServiceDescriptor; > import org.apache.river.start.ServiceDescriptor; > > org.apache.river.start { > private static policy = "policy.all"; > port="4160"; > private static codebasePrefix= " http://" + ConfigUtil.getHostAddress() > + ":" + port + "/"; > private static codebase = codebasePrefix + "reggie-dl.jar" + > codebasePrefix + "jsk-dl.jar" + > codebasePrefix + "reggie.jar" + > codebasePrefix + "jsk-policy.jar"; > private static classpath = > > "${/}projects${/}builder-group${/}jpg${/}apache-river${/}lib${/}reggie.jar"; > private static config = "jrmp-reggie.config"; > > static serviceDescriptors = new ServiceDescriptor[] { > new NonActivatableServiceDescriptor( > codebase, policy, classpath, > "org.apache.river.reggie.TransientRegistrarImpl", > new String[] { config }) > }; > } > > --------------------- jrmp-reggie.config ----------------------- > > /* > * Licensed to the Apache Software Foundation (ASF) under one > * or more contributor license agreements. See the NOTICE file > * distributed with this work for additional information > * regarding copyright ownership. The ASF licenses this file > * to you under the Apache License, Version 2.0 (the > * "License"); you may not use this file except in compliance > * with the License. You may obtain a copy of the License at > * > * http://www.apache.org/licenses/LICENSE-2.0 > * > * Unless required by applicable law or agreed to in writing, software > * distributed under the License is distributed on an "AS IS" BASIS, > * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. > * See the License for the specific language governing permissions and > * limitations under the License. > */ > > /* Configure source file for JRMP reggie */ > > import net.jini.jrmp.JrmpExporter; > > org.apache.river.reggie { > > serverExporter = new JrmpExporter(); > initialMemberGroups = new String[] { "nonsecure" }; > > }//end org.apache.river.reggie > >