Commit Graph

4553 Commits (a2f8f58f7d71c9f7307938574d24822f41ab1e7b)

Author SHA1 Message Date
Sean Dague b27ae0e8dc make VS compile Scene.cs 2008-05-22 20:59:40 +00:00
Sean Dague 1c49752a44 don't trust appearance assetid, instead do an inventory
lookup any time we get it from the server.  This should
preventent unwearable appearance.
2008-05-22 20:07:31 +00:00
MW 811cd3e0bf change to how initial terrain data is sent. Instead of sending the 64 packets in rapid fire as quickly as possible. The terrain data sending is now done in a threadpool worker thread over ~10 seconds with a thread.sleep between each packet sending. this hasn't been tested thoroughly, so it might not actually help with the atom bomb terrain (missing patches) but its a simple thing to revert if it makes things worse for anyone.
10 seconds is roughly the time between the region handshake completing and you being in world where you can see your avatar. So normally the terrain still should have loaded by time you get in the region, although it is possible that sometimes you might see the very end of the terrain load just after you arrive.
2008-05-22 19:44:57 +00:00
Teravus Ovares c124bb58ec * Limiting the Quaternion reset to x=y=z=w=0 2008-05-22 19:09:51 +00:00
Sean Dague 1ebc6bfd0a add a lock on the update, this should have been there before.
still not convinced this will help, but it was wrong.
2008-05-22 18:31:47 +00:00
Sean Dague 36bfa66719 we should be return null in these 2 places, though this won't
help with the timeouts.
2008-05-22 17:55:28 +00:00
Sean Dague fb120e3e23 catch case where avatar might have been child agent 2008-05-22 17:39:13 +00:00
Justin Clarke Casey 401e9bc3b9 * Documentation for load/save xml methods
* Insert the very rough beginning stubs for a save/load OpenSim archive facility that will load/save prim assets (textures & inventory) as well as the prim details themselves 
(our existing xml facilities).
* This won't be ready for even rough testing for quite some time.
* I'm doing this directly in the region server for now since this will be quicker to get something working (hence giving me the Serotonin boost that I need).  However, there are 
very good arguments for later also including it (or moving it entirely) to the separate export executable which Sean stubbed out some time ago.
2008-05-22 17:09:33 +00:00
Dr Scofield a97fa3f43e changing more 'raw' HTTP status codes to OSHttpStatusCodes. 2008-05-22 12:59:42 +00:00
Adam Johnson 9915fa13fb Fix for Mantis 1340. Thanks Melanie! 2008-05-22 12:21:34 +00:00
Adam Johnson 336c761ba0 Mantis 1357 Patch - Thanks mikem! 2008-05-22 12:07:47 +00:00
Dr Scofield bdc792d319 here are further enhancements to the IHttpAgentHandler and to BaseHttpServer (from awebb)
i've added the OSHttpStatusCodes enumeration of HTTP status codes, have adapted 
BaseHttpServer to use those.

then RestPlugin now has proper Failure handling returning proper HTTP status
codes. Regions/POSTHandler is work-in-progress.
2008-05-22 12:00:01 +00:00
Adam Johnson f22a63bd1c Added "show regions" to the CL help screen. Mantis 1123 2008-05-22 08:37:49 +00:00
Adam Johnson 5bfdb8c003 Adding basic show users functionality back in to console. Mantis 1212 2008-05-22 04:55:23 +00:00
Teravus Ovares bdcfc2e322 * Prevent an error from stopping startup when decoding the sculpt mesh j2k fails. 2008-05-22 02:40:19 +00:00
Justin Clarke Casey 61bba6375c * Fix mantis 1325. This is a minor issue where 'show assets' would not work fully in the region console 2008-05-22 00:49:17 +00:00
Justin Clarke Casey 1f57fd4bec * Minor: Tidy ups and logging tweaks. 2008-05-22 00:41:03 +00:00
Justin Clarke Casey 203017f554 * Refactor: Move enhancement of version string with operating system information from Scene to OpenSimMain
* This also means the operating system info will show up in the region console (and hence the logs)
2008-05-22 00:32:04 +00:00
Justin Clarke Casey 2e758172f0 * Fix circular dependency from last checkin by passing version as a parameter to Scene rather than referencing VersionInfo directly
* Butt ugly solution
2008-05-22 00:18:33 +00:00
Justin Clarke Casey 9263f07d70 * Send VersionInfo string instead of the hardcoded Scene string to the "About Second Life" box
* This is the same string as printed out on the opensim region console at startup, so it should now include the svn revision number (if available)
* This dialog box takes an awful long time to come up on my local system - no idea why that is.  However, that also seems to have been the case before this revision.
2008-05-21 23:52:02 +00:00
Justin Clarke Casey cca1563a78 * Deprecate load-xml and save-xml in favour of load-xml2/save-xml2.
* Please file a mantis if you are not able to use load-xml2/save-xml2 but can successfully use load-xml/save-xml
2008-05-21 22:57:29 +00:00
Justin Clarke Casey 42ac35ba7d * Provide relief for mantis 1263, 1202, 679
* If a caller attempts to set PrimitiveBaseShape.ProfileCurve with a HollowShape or ProfileShape component which is not a valid enum, a warning is spat out and a default shape 
subtituted
* This does not solve any underlying problem if we're missing some enum values (though it's not obvious what these are), but it should allow save-xml2/load-xml2 to be used 
without causing invalid enum value related exceptions.  The checks will also guard against badly behaved clients.
* This change alters the order of shape values in the xml, since it appears properties are serialized after fields (at least this is the case in mono).  .net native 
deserialization can cope with this it appears, though people manipulating xml manually may need to adapt (if there are any).
* This may be a good argument against relying on .net [de]serialization for our xml format.
2008-05-21 22:17:28 +00:00
Teravus Ovares c8857daf52 * Going to the C# syntactic sugar way of handling the backup event delegates. 2008-05-21 22:06:38 +00:00
Teravus Ovares 8afd93c943 * Sets backup bool volatile for extra protection against two backup processes running. 2008-05-21 21:47:03 +00:00
Teravus Ovares 5af108a029 * This update causes the backup process to run in a separate thread.
* Concurrency issues are resolved because each object makes a memory-only copy of itself and backs up the copy.
* Because of the way this is done, the latest at the time of the backup gets backed up (no functionality change)
* You can move *thousands of objects at a time* and the sim doesn't freeze and wait for the backup to complete.
* This can be enhanced more by dedicating the thread as opposed to starting it when the backup process starts.
2008-05-21 21:22:56 +00:00
Sean Dague 3e997772ea implement in memory appearance cache for sqlite. This
isn't db backed, but will hang around between reboots.
2008-05-21 20:36:34 +00:00
Sean Dague 9389429ed3 Clean out some crufty in AvatarFactoryModule
Fix RequestUpdateInventoryItem so that asset changes
generate a new asset, which is needed for editing
appearance to do the right thing.  Persistant appearance
seems to work after this, except you need to rebake textures
some times.
2008-05-21 20:18:40 +00:00
Sean Dague 53bcf2139e this removes use of the mapper for wearables, and I can confirm things
get saved to the database.  There are still issues on wearing things
after a cleared cache that I'm looking at now.
2008-05-21 18:02:09 +00:00
Teravus Ovares 0b719286a4 IZ QUATERNION NORMALIZE TO 0? NOWAI! KTHXBYE 2008-05-21 17:29:03 +00:00
Dr Scofield aa348c4804 renaming GETRestRegionPlugin to GETHandler as that's what it really is. 2008-05-21 16:20:21 +00:00
Sean Dague 0e39250506 create some direct sql calls for appearance 2008-05-21 14:34:52 +00:00
Teravus Ovares 8217bbe484 * Fixed needing to alter your sculptie sometimes to get physics to generate a collision mesh for it.
* Sculpties load on startup reliably now and successfully generate a collision mesh as soon as the sculpt texture is available.
2008-05-21 05:46:32 +00:00
Sean Dague e3efe1de16 attempt to fix mysql mapper usage 2008-05-20 22:37:18 +00:00
Sean Dague 70ada9181d move SceneEvents.cs to EventManager.cs, as that's actually
the name of the contained class.
2008-05-20 20:39:44 +00:00
Dr Scofield a53cea6b7e i'm extending the RestStreamHandler.Handler(...) signature to actually
provide OSHttpRequest and OSHttpResponse to our REST handler. 

also, this adds proper RestPlugin.IsGod() checking against the X-OpenSim-Godkey
HTTP request header.

last, i added XML doc comments to RestPlugin.cs
2008-05-20 16:51:45 +00:00
Sean Dague 185eff8d0d From: Jeremy Bongio <jbongio@us.ibm.com>
House cleaning ...

Rather than using the variable name EntityList, the variable name
EntitieList was being used. Here's a patch to fix it.
2008-05-20 16:19:35 +00:00
Jeff Ames 535d64b66b Add copyright notices.
Fix spelling typo (Thanks ChrisDown for pointing this out)
2008-05-20 15:38:49 +00:00
Dr Scofield 60ceef7ea2 my last "simplification" of the the if-then-else logic in BaseHttpServer placed the return in
the "if (request.UserAgent != null)" branch in the wrong place: as a result BaseHttpServer would not do 
anything if the user agent header field was present....ARGH! BAAAAAAD.
2008-05-20 12:58:27 +00:00
Jeff Ames b7c8020a3e Update svn properties. 2008-05-20 04:35:04 +00:00
Sean Dague ceadfb6eb7 remove the appearance lines from the OpenSim.ini.example. They
don't do anything now.
2008-05-19 21:50:56 +00:00
Sean Dague 6d2f6be82b autocreate appearance table if it isn't there 2008-05-19 21:47:31 +00:00
Sean Dague 419adadc46 prep for changes need to create the appearance tables
by default
2008-05-19 21:39:02 +00:00
Sean Dague 29fb93d243 fix a constant that meant pants still weren't working. now
you really can have pants.
2008-05-19 21:24:39 +00:00
Sean Dague d1c4fc94e7 make the super class conveniance appearance stuff virtual
so they can be overrided correctly by subclasses
2008-05-19 20:49:57 +00:00
Sean Dague 7a52b35c57 fix crash in standalone mode for initial appearance setup 2008-05-19 20:33:54 +00:00
Charles Krinke 01b5425a2d Thank you kindly, Melanie for a patch that avoids a null
ref in inventory give and also now causes items to appear
in the correct folders now, no longer in the root folder.
2008-05-19 20:05:10 +00:00
Sean Dague 9808f39b6f i can haz pantz?
You sure can.  This change set restores pants (and the rest of the
default appearance) in grid mode.  The 
root issue had to do with serializing multi-faced textures to the 
grid server.  This also restores the lookup path through the avatar
factory module, as that seems the reasonable place to have it live.
Some clean up patches are coming later as well, plus testing on 
standalone, but this should be in a good kicking around state for 
grid users.
2008-05-19 19:08:59 +00:00
Dr Scofield 4b622ec881 (from awebb)
Fixes a bug in BaseRequestHandler.

If the length of the patter is equal to, or greater than, the length of
the actual request path, then an exception is thrown. System using is
added to support use of String.Empty. Exception is used to ensure most
efficient operation on (assumed to be most common) successful case.
2008-05-19 18:30:25 +00:00
Dr Scofield af46963176 i'm dropping VerifyGod() and adding IsGod(OSHttpRequest) instead, which actually now
takes a look at the HTTP request header and retrieves x-opensim-godkey (if it exists)
and compares that against the godkey from OpenSim.ini.

also, this makes AddStreamHandler() virtual so that it can be overridden.
2008-05-19 17:54:31 +00:00
Dr Scofield 3e8adc0d78 (from awebb)
This patch adds an additional handler to the existing BaseHttpServer. 
It does not affect any of the existing behaviors except insofar as the 
new handler may be selected.

It is selected first because its Agent-oriented nature means that it 
should not be pre-empted.  The new handler type is defined by IHttpAgentHandler 
in Framework/Servers and has two interface methods: Match and Handle.

The Match function returns a boolean result based upon examination of 
information presented in the User-Agent header.

The Handle function expects to get the request and response instances 
associated with the flow. The handler is responsible for ALL activity 
associated with the request except in the event of an unhandled exception, 
in which case the HandleAgentRequest routine will generate a 500 status 
message and close the stream.

There are two immediateley apparent (and VERY easy to implement) 
improvements that could be made:

   1. The Match call could be allowed to operate over the entire 
      request context., rather than just agent identity.
   2. The Handler could return a boolean indication of whether or not 
      the request was actually handled, and if not, the remaining handler 
      mechanism could take a shot at it. This would eliminate issues 
      arising from pre-empted streams.
2008-05-19 17:35:29 +00:00