[Opensim-dev] Global identifiers
diva at metaverseink.com
diva at metaverseink.com
Mon Aug 30 23:17:24 UTC 2010
It's a UUID.
Display names are *never* used as identifiers in OpenSim. They're just
human-friendly tags that usually take the value of the user account
name, but that can change at any time if you happen to land in a
simulator with a sense of humor :)
And in the HG, UUIDs themselves are also 'unique' in the sense that the
Gatekeepers don't let agents come in, that happen to claim a UUID of a
local user.
Karen Palen wrote:
> I would lobby for the "user id" being a UUID rather than a string simply
> because of the uniqueness of the UUID.
>
> For example I use "Karen Palen" as userid on more than a dozen grids and
> several email addresses (Karen has even been issued a Credit Card!!!).
> Need I add that "Karen Palen" is a pseudonym, :-)
>
> I am very concerned about the potential for resolution problems,
> especially where the same id was previously used in several places
> which are now part of some unified naming convention.
>
> There seem to be four cases:
>
> 1) lookup http://authority... - get a valid update
> 2) http://authority... does not exist (temporary or permanent) - cache
> not updated, use the latest information available after checking the URL
> mapping (below)
> 3) http://authority... changed to another URL - update the URL and save
> the URL mapping for other references to "http://authority"
> 4) http://authority... resolves to more than one "authority". Possibly
> due to malfeasance (spoofing), more likely due to several changes in
> "http://authotity" over time and outdated information. - resolve this
> ambiguity by reference to other users of "http://authority".
>
> In the most pathological case of (4) several "authorities" will respond
> as valid, requiring some sort of probabilistic resolution - "most
> likely" the most recent "authority" provided that 90+% (or whatever) of
> UUIDs referring to "authority" now resolve to this authority. This
> implies several unresolvable possibilities and a high probability of
> picking the wrong one!
>
> Case 4 should be very rare if a UUID is used, but quite common if a
> common name (like "Karen Palen") is used!
>
> In real life me exact name "googles" to 25 people in the Phoenix area,
> at one time I had a namesake working in the same building as me! A
> literature search is even worse, my "tribe" seem to be prolific authors
> with many papers in biotech, medicine, computer science, electrical
> engineering, and several other fields. One of them is a member of the US
> Congress!
>
> Much as we like to think otherwise, our names are NOT unique!
>
> Karen
>
> On Mon, Aug 30, 2010 at 3:38 PM, <diva at metaverseink.com
> <mailto:diva at metaverseink.com>> wrote:
>
> OK, so here's the form of the URI that will start showing up in the
> [non-Simian] DBs soon, specifically in the GridUser table:
> http://authority/user/user_id/First+Last
>
> Yes?
>
> I suspect that SimianGrid will take things like
> LoggedIn(string userID) and
> StoreGridUserInfo(GridUserInfo info)
>
> and create user accounts for these if they don't exist, because I
> think SimanGrid collapses the 2 concepts. Just keep in mind that
> you'll soon be receiving URLs of the form above as arguments.
>
> I agree with Melanie that not adding the display name is a missed
> opportunity for caching, but I'm willing to write up code that
> accounts for it being optional for all the grid operators who would
> rather have the extra lookups coming their way.
>
>
> Hurliman, John wrote:
>
> If we are still on the same page, there should never be a case
> where something could be either a local identifier (UUID) or a
> global identifier (URL). The context is always clear, where
> cross-grid communication and exported content uses only global
> identifiers and all intra-grid communication uses only local
> identifiers. If a sim wants to resolve the creator of a prim it
> uses a single path, the UUID->Profile (aka display name) API
> call which takes advantage of all the caching and optimizations
> we've built into OpenSim. There is no ambiguity there or
> potential for the code to take a slower or less tested path. The
> discussion is about communication outside of the local grid
> context, when you are exporting content or moving people or
> content between grids. In every use case there I think it makes
> sense to always use global identifiers, or at least a clear path
> to build a global identifier.
>
> John
>
> -----Original Message-----
> From: opensim-dev-bounces at lists.berlios.de
> <mailto:opensim-dev-bounces at lists.berlios.de>
> [mailto:opensim-dev- <mailto:opensim-dev->
> bounces at lists.berlios.de <mailto:bounces at lists.berlios.de>]
> On Behalf Of Melanie
> Sent: Monday, August 30, 2010 2:30 PM
> To: opensim-dev at lists.berlios.de
> <mailto:opensim-dev at lists.berlios.de>
> Subject: Re: [Opensim-dev] Global identifiers
>
> I think we already have a perfectly good field, which is a
> UUID for
> local users and a URL for remote ones.
>
> Melanie
>
> Serendipity Seraph wrote:
>
> On 8/30/10 2:09 PM, diva at metaverseink.com
> <mailto:diva at metaverseink.com> wrote:
>
> Hurliman, John wrote:
>
> My interpretation (please correct me if I'm
> wrong) is that there is
> rough consensus on the overall strategy, but an
> open question of
>
> how
>
> to encode global identities when cross-grid
> communication (or
> out-of-grid archiving) happens.
>
> That's what's going on.
> Up to now, all global identifiers (that already
> exist) have been
> volatile; nothing has persisted. As I found myself
> writing code that
> would inject global identifiers into a DB table, I
> thought we should
> all talk about the form of such identifiers.
>
> There is probably also a hidden question of how
> to mark a local
> account as linked to a foreign identity, which
> may solve the
> friending issue. If I am friends with your
> avatar and we are both
>
> on
>
> grid B but your avatar actually originated from
> grid A, that link
>
> in
>
> the profile is what can tip off the presence
> service to try a
>
> remote
>
> presence check (assuming the user is not online
> in the local grid).
> My only interest in these low level questions
> like how the global
> identifiers and profile links look is what the
> final decision is so
>
> I
>
> can implement it in the OpenSim SimianGrid
> connectors.
>
> Well, we distinguish "user accounts" from "grid
> users" -- these are
>
> 2
>
> different interfaces, although implementers may
> decide to collapse
> them. But they are different concepts. User accounts
> are the
> locally-registered users; in some cases, like for
> example, the UCI
> grid, there's only some people who can get accounts
> there, namely
> people associated with the university. Grid users
> are users that are
> referenced by things that happen in the grid. So we
> already have an
> interface for that, although now I'm thinking that
> perhaps we need
>
> to
>
> separate its UserID field into 2 things: a local
> UUID and a
>
> reference
>
> to the external name. And I guess that's my main
> issue at this
>
> point.
>
> It seems more reasonable in a distributed system to say
> that an X is
>
> an
>
> X - a User is a User, whether they originally were
> instantiated on a
> local or a remote system. So I would go for collapsing
> the two as
>
> much
>
> as possible as a matter of policy. Otherwise freedom to
> move between
> nodes in the system is more limited and there is more
> special case
>
> logic
>
> to deal with. But that is speaking from a general
> distributed
> computing perspective. There may be many Opensim
> details that make
>
> that
>
> seemingly ideal position in practice rather naive.
>
> - s
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> <mailto:Opensim-dev at lists.berlios.de>
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> <mailto:Opensim-dev at lists.berlios.de>
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de <mailto:Opensim-dev at lists.berlios.de>
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de <mailto:Opensim-dev at lists.berlios.de>
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
>
More information about the Opensim-dev
mailing list