ReadyNAS Photos keeps losing connection

Support forum for ReadyNAS Photos. What is ReadyNAS Photos? NOTE: This product is End of Life.

ReadyNAS Photos keeps losing connection

Postby cinskeep » Thu Mar 06, 2008 6:53 pm

I hooked up a brand new ReadyNAS NV+ rnd4250 1TB.
I upgraded firmware to 4.01c1-p1.
I enabled USER security mode and created myself as a user.
I set the MEDIA share to CIFS = read/write by default.
I also rebooted the ReadyNAS w/File system check turned on - passed.
I followed the instructions for installing ReadyNAS Photos on my computer.
I made sure that I had the latest version of JAVA installed.
I created the account for online, then I ALLOWED INTRANET access to be turned on via the prompt.
Once it detected my ReadyNAS, I clicked on it. I logged in the window on the right side, and it connected.

I imported an album from my PC. It DISCONNECTED in the middle, and I had to start over. Eventually I got it IMPORTED. I was able to share the album finally, and my wife was able to look at it on her computer, after a few times when it would not load. Now, every time I try to login to it again, it says that I am connected, and it is authenticating, and then I see the shared albums (2), but then after a minute or two, I get:

"Error: Not connected to any ReadyNAS device. Check your network connectivity."

When I reconnect again, some times it connects, but then always fails after a minute or 2. Sometimes I get this error:

Could not connect to READYNASPHOTOS database on 192.168.1.201
Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** com.mysql.jdbc.CommunicationsException MESSAGE: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.net.SocketTimeoutException MESSAGE: Read timed out STACKTRACE: java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(Unknown Source) at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:113) at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:160) at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:188) at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1910) at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:501) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:971) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2670) at com.mysql.jdbc.Connection.(Connection.java:1531) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.pramati.network.rnas.NasConfigTest.verifyDatabase(NasConfigTest.java:70) at com.pramati.network.rnas.NasConfigTest.performTests(NasConfigTest.java:58) at com.pramati.network.rnas.NasManager.testConfig(NasManager.java:313) at dekoh.rnas.RnasDwrUtil.testNasConfig(RnasDwrUtil.java:233) at dekoh.rnas.RnasDwrUtil.validateConfig(RnasDwrUtil.java:184) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at uk.ltd.getahead.dwr.impl.ExecuteQuery.execute(ExecuteQuery.java:248) at uk.ltd.getahead.dwr.impl.DefaultExecProcessor.handle(DefaultExecProcessor.java:48) at uk.ltd.getahead.dwr.impl.DefaultProcessor.handle(DefaultProcessor.java:81) at uk.ltd.getahead.dwr.AbstractDWRServlet.doPost(AbstractDWRServlet.java:162) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at com.pramati.web.servlet.core.ServiceAction.run(ServiceAction.java:83) at com.pramati.security.util.PramatiSecurityHelper._doAs(PramatiSecurityHelper.java:54) at com.pramati.security.util.AbstractSecurityHelper._doAs(AbstractSecurityHelper.java:195) at com.pramati.services.security.spi.SecurityHelper.doAs(SecurityHelper.java:146) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetWebResource(PramatiFilterChainImpl.java:315) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:166) at dekoh.portal.remote.RemoteRequestFilter.doFilter(RemoteRequestFilter.java:56) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at dekoh.portal.login.PortalLoginFilter.doFilter(PortalLoginFilter.java:76) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.bfly.filters.WebLogFilter.doFilter(WebLogFilter.java:49) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.bfly.filters.ApplicationPopularityFilter.doFilter(ApplicationPopularityFilter.java:50) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.web.servlet.core.PramatiFilterChainImpl.startDoFilter(PramatiFilterChainImpl.java:118) at com.pramati.web.interceptors.ServiceInterceptor.preProcess(ServiceInterceptor.java:114) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:70) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultProcessContainer.process(DefaultProcessContainer.java:97) at com.pramati.web.core.WorkerThread.processConnection(WorkerThread.java:289) at com.pramati.web.core.WorkerThread.processConnection(WorkerThread.java:263) at com.pramati.web.core.WorkerThread.run(WorkerThread.java:129) ** END NESTED EXCEPTION ** Last packet sent to the server was 0 ms ago. STACKTRACE: com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception: ** BEGIN NESTED EXCEPTION ** java.net.SocketTimeoutException MESSAGE: Read timed out STACKTRACE: java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) at java.net.SocketInputStream.read(Unknown Source) at com.mysql.jdbc.util.ReadAheadInputStream.fill(ReadAheadInputStream.java:113) at com.mysql.jdbc.util.ReadAheadInputStream.readFromUnderlyingStreamIfNecessary(ReadAheadInputStream.java:160) at com.mysql.jdbc.util.ReadAheadInputStream.read(ReadAheadInputStream.java:188) at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1910) at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:501) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:971) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2670) at com.mysql.jdbc.Connection.(Connection.java:1531) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.pramati.network.rnas.NasConfigTest.verifyDatabase(NasConfigTest.java:70) at com.pramati.network.rnas.NasConfigTest.performTests(NasConfigTest.java:58) at com.pramati.network.rnas.NasManager.testConfig(NasManager.java:313) at dekoh.rnas.RnasDwrUtil.testNasConfig(RnasDwrUtil.java:233) at dekoh.rnas.RnasDwrUtil.validateConfig(RnasDwrUtil.java:184) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at uk.ltd.getahead.dwr.impl.ExecuteQuery.execute(ExecuteQuery.java:248) at uk.ltd.getahead.dwr.impl.DefaultExecProcessor.handle(DefaultExecProcessor.java:48) at uk.ltd.getahead.dwr.impl.DefaultProcessor.handle(DefaultProcessor.java:81) at uk.ltd.getahead.dwr.AbstractDWRServlet.doPost(AbstractDWRServlet.java:162) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at com.pramati.web.servlet.core.ServiceAction.run(ServiceAction.java:83) at com.pramati.security.util.PramatiSecurityHelper._doAs(PramatiSecurityHelper.java:54) at com.pramati.security.util.AbstractSecurityHelper._doAs(AbstractSecurityHelper.java:195) at com.pramati.services.security.spi.SecurityHelper.doAs(SecurityHelper.java:146) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetWebResource(PramatiFilterChainImpl.java:315) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:166) at dekoh.portal.remote.RemoteRequestFilter.doFilter(RemoteRequestFilter.java:56) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at dekoh.portal.login.PortalLoginFilter.doFilter(PortalLoginFilter.java:76) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.bfly.filters.WebLogFilter.doFilter(WebLogFilter.java:49) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.bfly.filters.ApplicationPopularityFilter.doFilter(ApplicationPopularityFilter.java:50) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.web.servlet.core.PramatiFilterChainImpl.startDoFilter(PramatiFilterChainImpl.java:118) at com.pramati.web.interceptors.ServiceInterceptor.preProcess(ServiceInterceptor.java:114) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:70) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultProcessContainer.process(DefaultProcessContainer.java:97) at com.pramati.web.core.WorkerThread.processConnection(WorkerThread.java:289) at com.pramati.web.core.WorkerThread.processConnection(WorkerThread.java:263) at com.pramati.web.core.WorkerThread.run(WorkerThread.java:129) ** END NESTED EXCEPTION ** Last packet sent to the server was 0 ms ago. at com.mysql.jdbc.MysqlIO.readPacket(MysqlIO.java:569) at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:971) at com.mysql.jdbc.Connection.createNewIO(Connection.java:2670) at com.mysql.jdbc.Connection.(Connection.java:1531) at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266) at java.sql.DriverManager.getConnection(Unknown Source) at java.sql.DriverManager.getConnection(Unknown Source) at com.pramati.network.rnas.NasConfigTest.verifyDatabase(NasConfigTest.java:70) at com.pramati.network.rnas.NasConfigTest.performTests(NasConfigTest.java:58) at com.pramati.network.rnas.NasManager.testConfig(NasManager.java:313) at dekoh.rnas.RnasDwrUtil.testNasConfig(RnasDwrUtil.java:233) at dekoh.rnas.RnasDwrUtil.validateConfig(RnasDwrUtil.java:184) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at uk.ltd.getahead.dwr.impl.ExecuteQuery.execute(ExecuteQuery.java:248) at uk.ltd.getahead.dwr.impl.DefaultExecProcessor.handle(DefaultExecProcessor.java:48) at uk.ltd.getahead.dwr.impl.DefaultProcessor.handle(DefaultProcessor.java:81) at uk.ltd.getahead.dwr.AbstractDWRServlet.doPost(AbstractDWRServlet.java:162) at javax.servlet.http.HttpServlet.service(HttpServlet.java:709) at javax.servlet.http.HttpServlet.service(HttpServlet.java:802) at com.pramati.web.servlet.core.ServiceAction.run(ServiceAction.java:83) at com.pramati.security.util.PramatiSecurityHelper._doAs(PramatiSecurityHelper.java:54) at com.pramati.security.util.AbstractSecurityHelper._doAs(AbstractSecurityHelper.java:195) at com.pramati.services.security.spi.SecurityHelper.doAs(SecurityHelper.java:146) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetWebResource(PramatiFilterChainImpl.java:315) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:166) at dekoh.portal.remote.RemoteRequestFilter.doFilter(RemoteRequestFilter.java:56) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at dekoh.portal.login.PortalLoginFilter.doFilter(PortalLoginFilter.java:76) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.bfly.filters.WebLogFilter.doFilter(WebLogFilter.java:49) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.bfly.filters.ApplicationPopularityFilter.doFilter(ApplicationPopularityFilter.java:50) at com.pramati.web.servlet.core.PramatiFilterChainImpl.invokeTargetFilter(PramatiFilterChainImpl.java:241) at com.pramati.web.servlet.core.PramatiFilterChainImpl.doFilter(PramatiFilterChainImpl.java:158) at com.pramati.web.servlet.core.PramatiFilterChainImpl.startDoFilter(PramatiFilterChainImpl.java:118) at com.pramati.web.interceptors.ServiceInterceptor.preProcess(ServiceInterceptor.java:114) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:70) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultInterceptor.process(DefaultInterceptor.java:71) at com.pramati.web.interceptors.core.InterceptorChainImpl.processNext(InterceptorChainImpl.java:48) at com.pramati.web.interceptors.core.DefaultProcessContainer.process(DefaultProcessContainer.java:97) at com.pramati.web.core.WorkerThread.processConnection(WorkerThread.java:289) at com.pramati.web.core.WorkerThread.processConnection(WorkerThread.java:263) at com.pramati.web.core.WorkerThread.run(WorkerThread.java:129) ** END NESTED EXCEPTION ** Last packet sent to the server was 0 ms ago.
User avatar
cinskeep
ReadyNAS User
 
Posts: 73
Joined: Thu Dec 01, 2005 10:15 am

UPDATE

Postby cinskeep » Thu Mar 06, 2008 6:57 pm

I have already ran several IOmeter tests on this ReadyNAS to test read/write speed under various parameters, and it has not Errored out yet.
User avatar
cinskeep
ReadyNAS User
 
Posts: 73
Joined: Thu Dec 01, 2005 10:15 am

Re: ReadyNAS Photos keeps losing connection

Postby yoh-dah » Wed Mar 12, 2008 4:17 pm

I'm sending you a PM.
User avatar
yoh-dah
Jedi Council Alumni
 
Posts: 13688
Joined: Fri Nov 19, 2004 1:21 am
Location: Borah-Borah
ReadyNAS: Pro

Re: ReadyNAS Photos keeps losing connection

Postby smartwombat » Wed Mar 12, 2008 4:32 pm

I haven't looked for the errors, but I have similar symptoms.

When I am in the process of adding buddies while sharing an album, the connection will be lost.
It might be the add a buddy dialog that I get from clicking on the icon of the head and shoulders people is incorrectly application modal, and the connection times out.
PAul
User avatar
smartwombat
ReadyNAS Expert
 
Posts: 277
Joined: Wed Dec 12, 2007 1:47 am
ReadyNAS: NV+

Re: ReadyNAS Photos keeps losing connection

Postby yoh-dah » Wed Mar 12, 2008 11:36 pm

smartwombat wrote:I haven't looked for the errors, but I have similar symptoms.

When I am in the process of adding buddies while sharing an album, the connection will be lost.
It might be the add a buddy dialog that I get from clicking on the icon of the head and shoulders people is incorrectly application modal, and the connection times out.

Sending you a PM.
User avatar
yoh-dah
Jedi Council Alumni
 
Posts: 13688
Joined: Fri Nov 19, 2004 1:21 am
Location: Borah-Borah
ReadyNAS: Pro

Re: ReadyNAS Photos keeps losing connection

Postby yoh-dah » Thu Mar 13, 2008 3:10 pm

smartwombat wrote:I haven't looked for the errors, but I have similar symptoms.

When I am in the process of adding buddies while sharing an album, the connection will be lost.
It might be the add a buddy dialog that I get from clicking on the icon of the head and shoulders people is incorrectly application modal, and the connection times out.

It looks like connection is timing out. Please download the ReadyNAS Photos desktop software again (there's a slight change to address this) and see if that helps.
User avatar
yoh-dah
Jedi Council Alumni
 
Posts: 13688
Joined: Fri Nov 19, 2004 1:21 am
Location: Borah-Borah
ReadyNAS: Pro

Re: ReadyNAS Photos keeps losing connection

Postby smartwombat » Sat Mar 15, 2008 8:13 am

New version uploaded 1044 images to the Random gallery with no problem.
PAul
User avatar
smartwombat
ReadyNAS Expert
 
Posts: 277
Joined: Wed Dec 12, 2007 1:47 am
ReadyNAS: NV+

Re: ReadyNAS Photos keeps losing connection

Postby yoh-dah » Sat Mar 15, 2008 9:09 am

smartwombat wrote:New version uploaded 1044 images to the Random gallery with no problem.

Great! Thanks for the followup 8)
User avatar
yoh-dah
Jedi Council Alumni
 
Posts: 13688
Joined: Fri Nov 19, 2004 1:21 am
Location: Borah-Borah
ReadyNAS: Pro

Re: ReadyNAS Photos keeps losing connection

Postby cinskeep » Sat Mar 15, 2008 11:35 am

Sorry Yodah,
I have not had time to take your advice on this issue yet, and load the new version and retest. This feature is a low priority for me, and I have a user with a ReadyNAS Backup problem that was more important, as well as a whole host of domain and website issues to fix. I will get to it as soon as I can and let you know in this forum if the software fix works.

Thanks,
Chris
User avatar
cinskeep
ReadyNAS User
 
Posts: 73
Joined: Thu Dec 01, 2005 10:15 am


Return to ReadyNAS Photos



Who is online

Users browsing this forum: Exabot [Bot] and 1 guest