Some questions about inventory libraries

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Some questions about inventory libraries

Impalah Shenzhou
Hi everybody, here comes Impalah again with some bizarre questions.

Before... about a question I did some weeks ago when I had "problems" with avatar crossing regions: it's resolved at 90% from my part (ugaim) just changing the (superslow) framework I was using to another; anyway the requests made to ugaim from region servers (get inventory, get maps, get something I can't remember now) aren't concurrent, at least running over .NET vm (I have tested it in five different machines with win XP). I'll return to those things when I finish the project I'm working on.

Well, my questions, overall are for who implemented Inventory Libs and all the things around.

When an avatar logs in, apart from the "personal inventory skeleton", the user server sends a "inventory library skeleton" too. Opensim.Grid.User uses the object InventoryLib (excuse me if the names are wrong, I haven't access to the code right now) which reads the xml's from the "inventory" folder.

Ok, so an user server needs these xml files isn't it? At least for returning the skeleton.

Well, but where is stored the inventory library? I suppose, because I couldn't find any persistent storage for inventory library folders/items, that the Opensim (region) server loads the xml files when it starts and, when the viewer asks for inventory, it returns the contents of the xml's.

The problem is if I have several region servers, any of them with distinct inventory libraries (folders and items). I have checked that if I return in login, for example, only two of the inventory lib folders, the opensim viewer will only show me these 2 folders, ignoring the rest of the "inventory xmls" defined.

So if I pretend to distribute and control the inventory library from the ugaim servers I have to copy the xmls to all the region servers who connect to my grid... right?

I don't know if this is an error (I think the inventory library must be requested from region servers to ugaim servers) or some kind of "feature", or if exists any reason for doing the things that way.

Can anyone help me with this?

Thank you


Impalah "always having problems" Shenzhou


_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users
Reply | Threaded
Open this post in threaded view
|

Re: Some questions about inventory libraries

justincc
Impalah wrote:

> Hi everybody, here comes Impalah again with some bizarre questions.
>
> Before... about a question I did some weeks ago when I had "problems"
> with avatar crossing regions: it's resolved at 90% from my part (ugaim)
> just changing the (superslow) framework I was using to another; anyway
> the requests made to ugaim from region servers (get inventory, get maps,
> get something I can't remember now) aren't concurrent, at least running
> over .NET vm (I have tested it in five different machines with win XP).
> I'll return to those things when I finish the project I'm working on.
>
> Well, my questions, overall are for who implemented Inventory Libs and
> all the things around.

I didn't implement the original code but I did end up extending it.  I don't think what we have right now is a
particularly good solution.

>
> When an avatar logs in, apart from the "personal inventory skeleton",
> the user server sends a "inventory library skeleton" too.
> Opensim.Grid.User uses the object InventoryLib (excuse me if the names
> are wrong, I haven't access to the code right now) which reads the xml's
> from the "inventory" folder.
>
> Ok, so an user server needs these xml files isn't it? At least for
> returning the skeleton.
>
> Well, but where is stored the inventory library? I suppose, because I
> couldn't find any persistent storage for inventory library
> folders/items, that the Opensim (region) server loads the xml files when
> it starts and, when the viewer asks for inventory, it returns the
> contents of the xml's.

Essentially correct.

>
> The problem is if I have several region servers, any of them with
> distinct inventory libraries (folders and items). I have checked that if
> I return in login, for example, only two of the inventory lib folders,
> the opensim viewer will only show me these 2 folders, ignoring the rest
> of the "inventory xmls" defined.
>
> So if I pretend to distribute and control the inventory library from the
> ugaim servers I have to copy the xmls to all the region servers who
> connect to my grid... right?

That's correct.  At the moment each region server loads its local library data.  Which means that on a grid system, the
library data on every single region and on the grid inventory service must be identical (afair).

I believe that it would be better to stop loading library inventory locally and instead pull it from the central
inventory service (in grid mode).  This would have the advantage of making it much easier to update library inventory.

>
> I don't know if this is an error (I think the inventory library must be
> requested from region servers to ugaim servers) or some kind of
> "feature", or if exists any reason for doing the things that way.
>
> Can anyone help me with this?
>
> Thank you
>
>
> Impalah "always having problems" Shenzhou
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Opensim-users mailing list
> [hidden email]
> https://lists.berlios.de/mailman/listinfo/opensim-users


--
justincc
Justin Clark-Casey
http://justincc.wordpress.com
_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users
Reply | Threaded
Open this post in threaded view
|

Re: Some questions about inventory libraries

Impalah Shenzhou
Thanks, Justin, for the quick response.

Well, is quite annoying to distribute to the opensim servers the inventory libraries but... the solution will be something like "to request libraries to user/inventory servers". If I had some time I could do a patch (or a plugin) for this... I don't promise anything but... I will need something similar in the next future so it will be distributed if I do the patch.

Oh, I'm thinking in a patch too for the regions.xml loader (I don't remember its name) when configured for getting data from web. Actually it doesn't save the region data (lastmap uuid, refresh, etc...) because the functions are empty. My intention is to add "optional" REST saving calls for allowing to have a central "region data server". Anyway it isn't urgent, it works perfectly without saving anything...

Greetings



2009/2/19 Justin Clark-Casey <[hidden email]>
Impalah wrote:
> Hi everybody, here comes Impalah again with some bizarre questions.
>
> Before... about a question I did some weeks ago when I had "problems"
> with avatar crossing regions: it's resolved at 90% from my part (ugaim)
> just changing the (superslow) framework I was using to another; anyway
> the requests made to ugaim from region servers (get inventory, get maps,
> get something I can't remember now) aren't concurrent, at least running
> over .NET vm (I have tested it in five different machines with win XP).
> I'll return to those things when I finish the project I'm working on.
>
> Well, my questions, overall are for who implemented Inventory Libs and
> all the things around.

I didn't implement the original code but I did end up extending it.  I don't think what we have right now is a
particularly good solution.

>
> When an avatar logs in, apart from the "personal inventory skeleton",
> the user server sends a "inventory library skeleton" too.
> Opensim.Grid.User uses the object InventoryLib (excuse me if the names
> are wrong, I haven't access to the code right now) which reads the xml's
> from the "inventory" folder.
>
> Ok, so an user server needs these xml files isn't it? At least for
> returning the skeleton.
>
> Well, but where is stored the inventory library? I suppose, because I
> couldn't find any persistent storage for inventory library
> folders/items, that the Opensim (region) server loads the xml files when
> it starts and, when the viewer asks for inventory, it returns the
> contents of the xml's.

Essentially correct.

>
> The problem is if I have several region servers, any of them with
> distinct inventory libraries (folders and items). I have checked that if
> I return in login, for example, only two of the inventory lib folders,
> the opensim viewer will only show me these 2 folders, ignoring the rest
> of the "inventory xmls" defined.
>
> So if I pretend to distribute and control the inventory library from the
> ugaim servers I have to copy the xmls to all the region servers who
> connect to my grid... right?

That's correct.  At the moment each region server loads its local library data.  Which means that on a grid system, the
library data on every single region and on the grid inventory service must be identical (afair).

I believe that it would be better to stop loading library inventory locally and instead pull it from the central
inventory service (in grid mode).  This would have the advantage of making it much easier to update library inventory.

>
> I don't know if this is an error (I think the inventory library must be
> requested from region servers to ugaim servers) or some kind of
> "feature", or if exists any reason for doing the things that way.
>
> Can anyone help me with this?
>
> Thank you
>
>
> Impalah "always having problems" Shenzhou
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Opensim-users mailing list
> [hidden email]
> https://lists.berlios.de/mailman/listinfo/opensim-users


--
justincc
Justin Clark-Casey
http://justincc.wordpress.com
_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users


_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users
Reply | Threaded
Open this post in threaded view
|

Re: Some questions about inventory libraries

Tristan-2
Interesting. I don't suppose any of those nice changes are going to happen soon? If i could program, I would help, but I can't :(. Anyway. If it isn't already, info liek that should be on the wiki somewhere.

On Thu, Feb 19, 2009 at 7:25 AM, Impalah <[hidden email]> wrote:
Thanks, Justin, for the quick response.

Well, is quite annoying to distribute to the opensim servers the inventory libraries but... the solution will be something like "to request libraries to user/inventory servers". If I had some time I could do a patch (or a plugin) for this... I don't promise anything but... I will need something similar in the next future so it will be distributed if I do the patch.

Oh, I'm thinking in a patch too for the regions.xml loader (I don't remember its name) when configured for getting data from web. Actually it doesn't save the region data (lastmap uuid, refresh, etc...) because the functions are empty. My intention is to add "optional" REST saving calls for allowing to have a central "region data server". Anyway it isn't urgent, it works perfectly without saving anything...

Greetings



2009/2/19 Justin Clark-Casey <[hidden email]>

Impalah wrote:
> Hi everybody, here comes Impalah again with some bizarre questions.
>
> Before... about a question I did some weeks ago when I had "problems"
> with avatar crossing regions: it's resolved at 90% from my part (ugaim)
> just changing the (superslow) framework I was using to another; anyway
> the requests made to ugaim from region servers (get inventory, get maps,
> get something I can't remember now) aren't concurrent, at least running
> over .NET vm (I have tested it in five different machines with win XP).
> I'll return to those things when I finish the project I'm working on.
>
> Well, my questions, overall are for who implemented Inventory Libs and
> all the things around.

I didn't implement the original code but I did end up extending it.  I don't think what we have right now is a
particularly good solution.

>
> When an avatar logs in, apart from the "personal inventory skeleton",
> the user server sends a "inventory library skeleton" too.
> Opensim.Grid.User uses the object InventoryLib (excuse me if the names
> are wrong, I haven't access to the code right now) which reads the xml's
> from the "inventory" folder.
>
> Ok, so an user server needs these xml files isn't it? At least for
> returning the skeleton.
>
> Well, but where is stored the inventory library? I suppose, because I
> couldn't find any persistent storage for inventory library
> folders/items, that the Opensim (region) server loads the xml files when
> it starts and, when the viewer asks for inventory, it returns the
> contents of the xml's.

Essentially correct.

>
> The problem is if I have several region servers, any of them with
> distinct inventory libraries (folders and items). I have checked that if
> I return in login, for example, only two of the inventory lib folders,
> the opensim viewer will only show me these 2 folders, ignoring the rest
> of the "inventory xmls" defined.
>
> So if I pretend to distribute and control the inventory library from the
> ugaim servers I have to copy the xmls to all the region servers who
> connect to my grid... right?

That's correct.  At the moment each region server loads its local library data.  Which means that on a grid system, the
library data on every single region and on the grid inventory service must be identical (afair).

I believe that it would be better to stop loading library inventory locally and instead pull it from the central
inventory service (in grid mode).  This would have the advantage of making it much easier to update library inventory.

>
> I don't know if this is an error (I think the inventory library must be
> requested from region servers to ugaim servers) or some kind of
> "feature", or if exists any reason for doing the things that way.
>
> Can anyone help me with this?
>
> Thank you
>
>
> Impalah "always having problems" Shenzhou
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Opensim-users mailing list
> [hidden email]
> https://lists.berlios.de/mailman/listinfo/opensim-users


--
justincc
Justin Clark-Casey
http://justincc.wordpress.com
_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users


_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users



_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users
Reply | Threaded
Open this post in threaded view
|

Re: Some questions about inventory libraries

Impalah Shenzhou
If "soon" means the next 2 weeks, probably not, at least from my part; but I'll need to fix these behaviours for the project I am working on (not urgent, nor essential but important for consistency of a grid).

Extend "soon" a couple of weeks more :-)


2009/2/19 Tristan <[hidden email]>
Interesting. I don't suppose any of those nice changes are going to happen soon? If i could program, I would help, but I can't :(. Anyway. If it isn't already, info liek that should be on the wiki somewhere.


On Thu, Feb 19, 2009 at 7:25 AM, Impalah <[hidden email]> wrote:
Thanks, Justin, for the quick response.

Well, is quite annoying to distribute to the opensim servers the inventory libraries but... the solution will be something like "to request libraries to user/inventory servers". If I had some time I could do a patch (or a plugin) for this... I don't promise anything but... I will need something similar in the next future so it will be distributed if I do the patch.

Oh, I'm thinking in a patch too for the regions.xml loader (I don't remember its name) when configured for getting data from web. Actually it doesn't save the region data (lastmap uuid, refresh, etc...) because the functions are empty. My intention is to add "optional" REST saving calls for allowing to have a central "region data server". Anyway it isn't urgent, it works perfectly without saving anything...

Greetings



2009/2/19 Justin Clark-Casey <[hidden email]>

Impalah wrote:
> Hi everybody, here comes Impalah again with some bizarre questions.
>
> Before... about a question I did some weeks ago when I had "problems"
> with avatar crossing regions: it's resolved at 90% from my part (ugaim)
> just changing the (superslow) framework I was using to another; anyway
> the requests made to ugaim from region servers (get inventory, get maps,
> get something I can't remember now) aren't concurrent, at least running
> over .NET vm (I have tested it in five different machines with win XP).
> I'll return to those things when I finish the project I'm working on.
>
> Well, my questions, overall are for who implemented Inventory Libs and
> all the things around.

I didn't implement the original code but I did end up extending it.  I don't think what we have right now is a
particularly good solution.

>
> When an avatar logs in, apart from the "personal inventory skeleton",
> the user server sends a "inventory library skeleton" too.
> Opensim.Grid.User uses the object InventoryLib (excuse me if the names
> are wrong, I haven't access to the code right now) which reads the xml's
> from the "inventory" folder.
>
> Ok, so an user server needs these xml files isn't it? At least for
> returning the skeleton.
>
> Well, but where is stored the inventory library? I suppose, because I
> couldn't find any persistent storage for inventory library
> folders/items, that the Opensim (region) server loads the xml files when
> it starts and, when the viewer asks for inventory, it returns the
> contents of the xml's.

Essentially correct.

>
> The problem is if I have several region servers, any of them with
> distinct inventory libraries (folders and items). I have checked that if
> I return in login, for example, only two of the inventory lib folders,
> the opensim viewer will only show me these 2 folders, ignoring the rest
> of the "inventory xmls" defined.
>
> So if I pretend to distribute and control the inventory library from the
> ugaim servers I have to copy the xmls to all the region servers who
> connect to my grid... right?

That's correct.  At the moment each region server loads its local library data.  Which means that on a grid system, the
library data on every single region and on the grid inventory service must be identical (afair).

I believe that it would be better to stop loading library inventory locally and instead pull it from the central
inventory service (in grid mode).  This would have the advantage of making it much easier to update library inventory.

>
> I don't know if this is an error (I think the inventory library must be
> requested from region servers to ugaim servers) or some kind of
> "feature", or if exists any reason for doing the things that way.
>
> Can anyone help me with this?
>
> Thank you
>
>
> Impalah "always having problems" Shenzhou
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Opensim-users mailing list
> [hidden email]
> https://lists.berlios.de/mailman/listinfo/opensim-users


--
justincc
Justin Clark-Casey
http://justincc.wordpress.com
_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users


_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users



_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users



_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users
Reply | Threaded
Open this post in threaded view
|

Re: Some questions about inventory libraries

Tristan-2
My definition of soon was a month or two.

On Thu, Feb 19, 2009 at 8:41 AM, Impalah <[hidden email]> wrote:
If "soon" means the next 2 weeks, probably not, at least from my part; but I'll need to fix these behaviours for the project I am working on (not urgent, nor essential but important for consistency of a grid).

Extend "soon" a couple of weeks more :-)


2009/2/19 Tristan <[hidden email]>

Interesting. I don't suppose any of those nice changes are going to happen soon? If i could program, I would help, but I can't :(. Anyway. If it isn't already, info liek that should be on the wiki somewhere.


On Thu, Feb 19, 2009 at 7:25 AM, Impalah <[hidden email]> wrote:
Thanks, Justin, for the quick response.

Well, is quite annoying to distribute to the opensim servers the inventory libraries but... the solution will be something like "to request libraries to user/inventory servers". If I had some time I could do a patch (or a plugin) for this... I don't promise anything but... I will need something similar in the next future so it will be distributed if I do the patch.

Oh, I'm thinking in a patch too for the regions.xml loader (I don't remember its name) when configured for getting data from web. Actually it doesn't save the region data (lastmap uuid, refresh, etc...) because the functions are empty. My intention is to add "optional" REST saving calls for allowing to have a central "region data server". Anyway it isn't urgent, it works perfectly without saving anything...

Greetings



2009/2/19 Justin Clark-Casey <[hidden email]>

Impalah wrote:
> Hi everybody, here comes Impalah again with some bizarre questions.
>
> Before... about a question I did some weeks ago when I had "problems"
> with avatar crossing regions: it's resolved at 90% from my part (ugaim)
> just changing the (superslow) framework I was using to another; anyway
> the requests made to ugaim from region servers (get inventory, get maps,
> get something I can't remember now) aren't concurrent, at least running
> over .NET vm (I have tested it in five different machines with win XP).
> I'll return to those things when I finish the project I'm working on.
>
> Well, my questions, overall are for who implemented Inventory Libs and
> all the things around.

I didn't implement the original code but I did end up extending it.  I don't think what we have right now is a
particularly good solution.

>
> When an avatar logs in, apart from the "personal inventory skeleton",
> the user server sends a "inventory library skeleton" too.
> Opensim.Grid.User uses the object InventoryLib (excuse me if the names
> are wrong, I haven't access to the code right now) which reads the xml's
> from the "inventory" folder.
>
> Ok, so an user server needs these xml files isn't it? At least for
> returning the skeleton.
>
> Well, but where is stored the inventory library? I suppose, because I
> couldn't find any persistent storage for inventory library
> folders/items, that the Opensim (region) server loads the xml files when
> it starts and, when the viewer asks for inventory, it returns the
> contents of the xml's.

Essentially correct.

>
> The problem is if I have several region servers, any of them with
> distinct inventory libraries (folders and items). I have checked that if
> I return in login, for example, only two of the inventory lib folders,
> the opensim viewer will only show me these 2 folders, ignoring the rest
> of the "inventory xmls" defined.
>
> So if I pretend to distribute and control the inventory library from the
> ugaim servers I have to copy the xmls to all the region servers who
> connect to my grid... right?

That's correct.  At the moment each region server loads its local library data.  Which means that on a grid system, the
library data on every single region and on the grid inventory service must be identical (afair).

I believe that it would be better to stop loading library inventory locally and instead pull it from the central
inventory service (in grid mode).  This would have the advantage of making it much easier to update library inventory.

>
> I don't know if this is an error (I think the inventory library must be
> requested from region servers to ugaim servers) or some kind of
> "feature", or if exists any reason for doing the things that way.
>
> Can anyone help me with this?
>
> Thank you
>
>
> Impalah "always having problems" Shenzhou
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Opensim-users mailing list
> [hidden email]
> https://lists.berlios.de/mailman/listinfo/opensim-users


--
justincc
Justin Clark-Casey
http://justincc.wordpress.com
_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users


_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users



_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users



_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users



_______________________________________________
Opensim-users mailing list
[hidden email]
https://lists.berlios.de/mailman/listinfo/opensim-users