Re: [Opensim-dev] RegionOnline status
Sean Dague wrote: Justin Clark-Casey wrote: Frank Nichols wrote: There is a member in RegionProfileData (regionOnline) which is currently not used and does not exist in the region db table. I would like to add it to the region table as an enum and not a boolean. Currently the code assumes a region that has an entry in the region table is online (as far as I have figured out...) With this field in place we can impliment the requested feature of reserving regions as well as having regions online but not available for logins. I suggest the following enums: RESERVED OFFLINE ONLINE at least for starters. Before submitting a patch to support this, i wanted to get some direction and comments from the core developers and architects. I think the people who could contribute most to this discussion are those who are actively running grids, a group that will consist of both some core developers but also of other core developers. Wow, I see that last line didn't make much sense - I actually meant to say will consist of both some core developers but also of non-core grid operators. On the surface a RESERVED state doesn't seem unreasonable to me. Perhaps the nicest thing to do would be to make such code modular so that people are free to implement different strategies for grid organization. This sounds sensible to me. I think it should end up as State instead of regionOnline, so we can think of it in these more generic ways. -Sean ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- justincc Justin Clark-Casey http://justincc.wordpress.com ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] AssetBase and metadata
-Original Message- From: opensim-dev-boun...@lists.berlios.de [mailto:opensim-dev- boun...@lists.berlios.de] On Behalf Of Sean Dague Sent: Monday, February 02, 2009 5:47 AM To: opensim-dev@lists.berlios.de Subject: Re: [Opensim-dev] AssetBase and metadata Teravus Ovares wrote: Is there any reason that we don't request items from the asset server internally by the inventory UUID instead of the asset UUID? Requesting assets by inventory UUID would make it a LOT simpler to apply permissions at the trusted service level instead of at the simulator level. To do that sanely, we'd have to merge the inventory and asset servers, which honestly, wouldn't be such a bad idea. They have a hard time living on their own anyway. -Sean -- Sean Dague / Neas Bade sda...@gmail.com http://dague.net That's exactly the approach in the Cable Beach asset/inventory server. As Teravus pointed out, assets and inventory have very different characteristics when it comes to storage and caching (inventory is almost identical to metadata). The server* has different backends/frontends for inventory, but shares authentication and authorization modules between inventory and assets. * In the current prototype implementation of Cable Beach asset/inventory, a single process is used. There are a nearly infinite number of techniques to break services apart, put them together, run different pieces on different machines, etc. The implementation details of what code is executing on what machine is not as important at this stage as defining the interfaces, and asserting that there is or is not a tight coupling between assets and inventory. If inventory defines the many to one mapping that allows multiple people to own the same asset with different permissions, I think a distributed grid must tightly couple these two concepts. John ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] AssetBase and metadata
Hm, thinking a bit more about it, I guess you have a very good point there; of course, you could let there be an 'virtual' inventory item (with the assetId as the inventoryId) that translates to the asset itself - and that would have some special way of determining permissions. That said, I'd much rather do something like separating out the 'permissions' bit in inventory and have that mean 'asset permissions for the trust domain' - you can still operate on the permissions in the same manner, and the net result will be the same, I guess. In other words; instead of having restricted inventory and full access assets, I'd rather say you had full access inventory and restricted assets, if that is any the least clearer? If you strip out permissions and type from inventory, the only thing left is name, owner and some data - and the inventory has most oftenly a pretty straightforward perms set (only let owner see and change on trusted regions) while assets parms can vary wildly with application. Best regards,Stefan AnderssonTribal Media AB Date: Mon, 2 Feb 2009 08:24:52 -0500 From: tera...@gmail.com To: opensim-dev@lists.berlios.de Subject: Re: [Opensim-dev] AssetBase and metadata To the 'all assets have inventory items associated with them', no, they don't, however, there's no harm in requesting the inventory item where possible. It would limit the UUIDs that systems would have access to as a reference, as well. I'm sure that there will be some methods that must use Asset ID. Mostly, images. I suppose object inventory might use Asset ID also, but probably does not have to until they're requested by the client for editing. To the 'So I guess I don't understand what specific case you're referring to?', See last Tuesday's Zero meeting for several references to the pitfalls of Hypergrid (and it's not just Zero saying things to criticize it. It's our users as well. That was a widely positive meeting towards Hypergrid to the detriment of LLOGP. Mingled within that, the way we handle property was the main criticism. Reference: http://wiki.secondlife.com/wiki/User:Zero_Linden/Office_Hours/2009_Jan_27 I was saying that currently, we're doing nothing at all to limit trust. If we maintain this approach, it will be a big factor in other, non-currently-codified, standards being adopted and It'll likely be impossible to fully implement other 'permissioned' standards without some way to check the permissions first (such as OGP). Currently, directly requesting Assets precludes this option. Not all virtual worlds will have 'Property', but the ones that do will suffer. Comparing to a web server, think .htaccess. Best Regards Teravus On 2/2/09, Stefan Andersson ste...@tribalmedia.se wrote: Are we sure all assets have inventory items associated with them? I can think of scripted objects that set textureIds programatically. (Melanie pointed that out to me) You can also have the case where you upload a texture (yes, it's in inventory) apply it to a shirt, then delete the original inventory item (the asset is still referenced from within the shirt asset, but is in no inventory) So I guess I don't understand what specific case you're referring to? Best regards, Stefan Andersson Tribal Media AB Date: Sun, 1 Feb 2009 23:58:55 -0500 From: tera...@gmail.com To: opensim-dev@lists.berlios.de Subject: Re: [Opensim-dev] AssetBase and metadata Is there any reason that we don't request items from the asset server internally by the inventory UUID instead of the asset UUID? Requesting assets by inventory UUID would make it a LOT simpler to apply permissions at the trusted service level instead of at the simulator level. Best Regards Teravus On 2/1/09, Mike Mazur mma...@gmail.com wrote:Hi, On Fri, 30 Jan 2009 07:37:27 -0500Sean Dague sda...@gmail.com wrote: It's fine for the object to be called AssetMetaData, just don't make the property that. On Fri, 30 Jan 2009 14:51:12 + (GMT)MW michaelwr...@yahoo.co.uk wrote:I agree, I'd say call the class AssetMetaData, but just call the property (in AssetBase) MetaData. Makes perfect sense. Thanks for the feedback. Mike ___Opensim-dev mailing listOpensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev___
Re: [Opensim-dev] Loadable modules and Scripting extensions
Ah I was afraid you would say that Melanie :) Having spent this morning scratching my head and thinking of ways round the restriction the only alternate method i have come up with is to take a copy of the XEngine code, rejig the naming and seperate it out into my module and add the new methods. Obviously this is a pretty horrendous technique and means changes have to merged across continually. Another idea is to generate the BaseScript class dynamically at runtime. I haven't fully investigated the possibility of this so feel free to shoot down immediately. A dll containing the Baseclass would have to be created and then loaded, the creation would have to be done after all other modules had finished initialising. Again jut to be clear im not even sure ths is possible without further investigation. Rob On Mon, Feb 2, 2009 at 9:30 AM, Melanie mela...@t-data.com wrote: Hi, unfortunately, there is currently no solution. For script functions to be callable without class.member notation, they have to be all in one class and the script must inherit from it. C# scripting overcomes that, but extending OSSL/LSL with external DLLs is not possible. In order to keep the API set consistent, I didn't attempt to create a module loader system for c# only, although it would be trivial. Melanie Rob Smart wrote: Hi All, A fairly lengthy description follows of why we cant currently create loadable Modules that provide extra script functions... I currently have an Opensim publish subscribe module that exposes its functionality through new scripting commands osPublish and osSubscribe, unfortunately i cannot release it into the main OpenSim project yet for licensing reasons. I'd managed to develop the module without having to alter any existing code from the main OpenSim codebase, but i still had to merge changes in the prebuild file every time i synched with SVN. Tonight I finally got round to attempting to separate it out from the main OpenSim codebase into a dll module of its own, all was going well until I got to the point of testing and found that my scripting methods (osPublish,osSubscribe) were no longer being recognised when the scripts were compiled in world. I poked around a bit and found that the ApiManager class only search within the active dll assembly for API classes, I altered this so that it searched all assemblies. At this point it was finding my API interface and successfully initing it. However once again the osPublish,osSubscribe methods were not found when compiling a test script in world. More tracing and I found that the Compiler.cs class has hard coded references to two ScriptEngine dlls parameters.ReferencedAssemblies.Add(Path.Combine(rootPath, OpenSim.Region.ScriptEngine.Shared.dll)); parameters.ReferencedAssemblies.Add(Path.Combine(rootPath, OpenSim.Region.ScriptEngine.Shared.Api.Runtime.dll)); I temporarily added a reference to my module DLL so that it was on the compile path for scripts (not sure how to get round this yet) at this time i now get... The imported type `OpenSim.Region.ScriptEngine.Shared.ScriptBase.ScriptBaseClass' is defined multiple times Because ScriptBaseClass is made up of several partial classes... i.e. OSSL_Stub.cs, LSL_Stub.cs I discovered that partial classes cannot be spread across DLLs, so currently we have a limitation that prevents us producing loadable modules that provide extra script functions. My opinion is that this is a fairly major restriction in the module system, well... actually its a limitation of the script engine... Any ideas on a solution to this ? hoping for an easy solution, but my suspicion is it may involve some re-architecting. cheers, Rob Smart (Yossarian Seattle) ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
[Opensim-dev] Hypergrid and Interoperability workshop
Hi, We're planning a first meeting to talk about defining a roadmap for Hypergrid interoperability in OpenSim worlds. The meeting will be this Friday at 10am PST. We'll meet in the UCI Grid, Gateway 7000, until it crashes :-); then we'll move to an IRC channel. Note that this is not intended to be a support group meeting about the hypergrid, so don't come with support questions. The meeting has three main objectives: 1) Taking a picture of the maximum number of foreign avatars ever assembled in one place 2) Figure out how to define a roadmap for interoperability without falling into the trap of formal working groups 3) Start talking about trust in the decentralized HG-enabled Metaverse Crista ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Hypergrid and Interoperability workshop
Thanks! Diva, Sounds like a good move! BlueWall On Mon, Feb 2, 2009 at 2:58 PM, Cristina Videira Lopes lo...@ics.uci.eduwrote: Hi, We're planning a first meeting to talk about defining a roadmap for Hypergrid interoperability in OpenSim worlds. The meeting will be this Friday at 10am PST. We'll meet in the UCI Grid, Gateway 7000, until it crashes :-); then we'll move to an IRC channel. Note that this is not intended to be a support group meeting about the hypergrid, so don't come with support questions. The meeting has three main objectives: 1) Taking a picture of the maximum number of foreign avatars ever assembled in one place 2) Figure out how to define a roadmap for interoperability without falling into the trap of formal working groups 3) Start talking about trust in the decentralized HG-enabled Metaverse Crista ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] AssetBase and metadata
I see the inventory server and the asset server as important to be separate, especially for caching purposes, however, I could see the use for the asset server to have a 'request by inventory id' method with the region server's uuid, region server's credentials(Region Secret?), and the agents uuid by proxy. -T On 2/2/09, Sean Dague sda...@gmail.com wrote: Teravus Ovares wrote: Is there any reason that we don't request items from the asset server internally by the inventory UUID instead of the asset UUID? Requesting assets by inventory UUID would make it a LOT simpler to apply permissions at the trusted service level instead of at the simulator level. To do that sanely, we'd have to merge the inventory and asset servers, which honestly, wouldn't be such a bad idea. They have a hard time living on their own anyway. -Sean -- Sean Dague / Neas Bade sda...@gmail.com http://dague.net ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] AssetBase and metadata
Hi Diva, ReX actually used that to allow sim local inventory : When you enter to a sim that got a local inventory available, it's added to your inventory folder, then removed as soon as you leave the sim. The structure is just another inventory branch called World Inventory with all the usual sub-branch. the main issue is you need to close/open your inventory to refresh it. Sacha On Mon, Feb 2, 2009 at 3:09 PM, Cristina Videira Lopes lo...@ics.uci.eduwrote: Teravus Ovares wrote: To the 'So I guess I don't understand what specific case you're referring to?', See last Tuesday's Zero meeting for several references to the pitfalls of Hypergrid (and it's not just Zero saying things to criticize it. It's our users as well. That was a widely positive meeting towards Hypergrid to the detriment of LLOGP. Mingled within that, the way we handle property was the main criticism. Reference: http://wiki.secondlife.com/wiki/User:Zero_Linden/Office_Hours/2009_Jan_27 Darn, I missed that meeting! :-) okokok, trust and security is next. As a first step, I'm going to implement the suitcase idea. Any comments? http://opensimulator.org/wiki/Hypergrid_Inventory_Access Crista ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Hypergrid and Interoperability workshop
Dahlia Trimble wrote: is there a hypergrid link for the meeting location? ucigrid04.nacs.uci.edu 9007 It's in coords 7000, 7000 so directly reachable from OSGrid. People coming from lower grids can use Gateway 3000 first (ucigrid04.nacs.uci.edu 9003), then hop to Gateway 7000. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] RegionOnline status
Then again one could assume if a record existed for that region even if it were offline, that it's spot is reserved. On Mon, Feb 2, 2009 at 8:50 PM, Frank Nichols fr...@thenichols.net wrote: To me the region does not need to know if or when the reserved status would expire. Some process/module must have set it to reserved, and to me would then assume the responsibility of knowing when/if to expire the reservation. Dahlia Trimble wrote: I would think if a RESERVED state were added there would probably need to be an expiration date associated with it. On Sat, Jan 31, 2009 at 8:23 PM, Frank Nichols fr...@thenichols.net mailto:fr...@thenichols.net wrote: There is a member in RegionProfileData (regionOnline) which is currently not used and does not exist in the region db table. I would like to add it to the region table as an enum and not a boolean. Currently the code assumes a region that has an entry in the region table is online (as far as I have figured out...) With this field in place we can impliment the requested feature of reserving regions as well as having regions online but not available for logins. I suggest the following enums: RESERVED OFFLINE ONLINE at least for starters. Before submitting a patch to support this, i wanted to get some direction and comments from the core developers and architects. Frank ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de mailto:Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev