[Opensim-dev] Error detection when storing an asset

Oren Hurvitz orenh at kitely.com
Fri Apr 18 22:12:07 UTC 2014


I feel that we've transcended from this mortal coil into heavenly spheres.
Such powerful realms require poetry to comprehend, so I must quote from the
poem "Eloisa to Abelard":

"How happy is the blameless vestal's lot!
The world forgetting, by the world forgot.
Eternal sunshine of the spotless mind!
Each pray'r accepted, and each wish resign'd;"

To deny failure is to deny reality.




On Sat, Apr 19, 2014 at 12:43 AM, Melanie <melanie at t-data.com> wrote:

> The point is no NOT let it fail. Asset storing never fails
> permanently if it's retried until successful. The upper layers (all
> the way to the viewer) are not equipped to handle an asset storing
> failure. Propagating the exception would just annoy the user with
> needless messages. Since asset servers can be "gone" for a while,
> for instance when there is a net failure, there is no way to give it
> a timeout, either. A sim in OSGrid, if it gets disconnected,  could
> run on locally cached assets and manage to reconnect after 20
> minutes and simply upload all new assets since then. Screaming
> "failure" at the user is pointless in such a scenario.
>
> - Melanie
>
> On 18/04/2014 22:56, Oren Hurvitz wrote:
> > There seems to be a misunderstanding here. We're talking about a case
> where
> > the operation has FAILED. The only question is whether to pretend that it
> > succeeded, so that the user will find out that it failed later, to their
> > surprise, or to report failure immediately. Obviously it's better to
> report
> > failure immediately.
> >
> >
> >
> > On Fri, Apr 18, 2014 at 10:40 PM, Melanie <melanie at t-data.com> wrote:
> >
> >> Name one valid use case where current OpenSim is able to handle such
> >> an exception gracefully, e.g. without user-visible error.
> >>
> >> - Melanie
> >>
> >> On 18/04/2014 13:28, Mike Chase wrote:
> >> > I'm inclined to agree with Oren.  Asset Writes could fail for a
> variety
> >> of
> >> > reasons and there are lots of use cases where you need to know the
> asset
> >> is
> >> > on disk.  I think propagating exceptions is the more sound approach
> IMO.
> >> >
> >> > I also agree re: the custom comms vs a persistent queue mechanism but
> I
> >> > don't want to derail this topic.   That can wait for another day.
> >> >
> >> > Mike
> >> >
> >> > -----Original Message-----
> >> > From: opensim-dev-bounces at lists.berlios.de
> >> > [mailto:opensim-dev-bounces at lists.berlios.de] On Behalf Of Oren
> Hurvitz
> >> > Sent: Friday, April 18, 2014 7:06 AM
> >> > To: opensim-dev at lists.berlios.de
> >> > Subject: Re: [Opensim-dev] Error detection when storing an asset
> >> >
> >> > Regarding the hiding of exceptions: to be clear, I was already bitten
> by
> >> > this behavior; that's why I started to investigate how assets are
> >> stored. I
> >> > have therefore already changed Kitely's version of OpenSim to
> propagate
> >> > exceptions, and the question is whether other people would like me to
> >> > contribute this change. If anyone has an opinion then please reply.
> >> >
> >> > Regarding your suggestion to save assets to local disk and retry them
> >> later:
> >> > this is basically what a persistent message queue does. If you're
> going
> >> to
> >> > go that route then it would be best to add a real message queue rather
> >> than
> >> > a home-grown one. I would LOVE it if OpenSim used a message queue for
> >> > communications, as it would allow ripping out thousands of lines of
> >> homemade
> >> > communications code, and would be faster and more reliable to boot.
> But
> >> > that's a bigger issue and I'll put it aside for now.
> >> >
> >> > In this particular case, using a persistent message queue isn't be the
> >> right
> >> > solution: the right solution is to report failures immediately.
> Otherwise
> >> > you'd get weird behavior such as a user who thinks they've
> successfully
> >> worn
> >> > a piece of clothing, but when they teleport to another region it
> >> disappears
> >> > because the other region can't load the asset (because it was never
> >> saved).
> >> > To prevent these problems you need to fail-fast, and tell the user
> >> > immediately when a problem happens. This doesn't mean to crash the
> sim; I
> >> > strongly doubt any asset failure would cause that, it would just fail
> the
> >> > specific packet or message that is currently being handled, as it
> should.
> >> >
> >> >
> >> >
> >> > --
> >> > View this message in context:
> >> >
> >>
> http://opensim-dev.2196679.n2.nabble.com/Error-detection-when-storing-an-ass
> >> > et-tp7579223p7579225.html
> >> > Sent from the opensim-dev mailing list archive at Nabble.com.
> >> > _______________________________________________
> >> > Opensim-dev mailing list
> >> > Opensim-dev at lists.berlios.de
> >> > https://lists.berlios.de/mailman/listinfo/opensim-dev
> >> >
> >> > _______________________________________________
> >> > Opensim-dev mailing list
> >> > Opensim-dev at lists.berlios.de
> >> > https://lists.berlios.de/mailman/listinfo/opensim-dev
> >> >
> >> >
> >> _______________________________________________
> >> Opensim-dev mailing list
> >> Opensim-dev at lists.berlios.de
> >> https://lists.berlios.de/mailman/listinfo/opensim-dev
> >>
> >
> >
> >
> >
> >
> > _______________________________________________
> > Opensim-dev mailing list
> > Opensim-dev at lists.berlios.de
> > https://lists.berlios.de/mailman/listinfo/opensim-dev
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>



-- 
Oren Hurvitz
VP R&D
Kitely Ltd.

Email: orenh at kitely.com <ilan at kitely.com>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20140419/0d9c9b85/attachment-0001.html>


More information about the Opensim-dev mailing list