Commit Graph

9512 Commits (e063f0d592d07c1131c30893c93b01c4dd5e819a)

Author SHA1 Message Date
John Hurliman fdce1be3db * Removed OpenSim.Data.NHibernate
* Replaced calls to ThreadPool.QueueUserWorkItem() with ThreadPool.UnsafeQueueUserWorkItem() since OpenSim does not use Code Access Security sandboxing
2009-10-19 16:52:27 -07:00
John Hurliman 72078195c2 Merge branch 'prioritization' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-19 15:20:38 -07:00
John Hurliman bd03cbd815 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-19 15:19:37 -07:00
John Hurliman 142008121e * Change Util.FireAndForget to use ThreadPool.UnsafeQueueUserWorkItem(). This avoids .NET remoting and a managed->unmanaged->managed jump. Overall, a night and day performance difference
* Initialize the LLClientView prim full update queue to the number of prims in the scene for a big performance boost
* Reordered some comparisons on hot code paths for a minor speed boost
* Removed an unnecessary call to the expensive DateTime.Now function (if you *have* to get the current time as opposed to Environment.TickCount, always use DateTime.UtcNow)
* Don't fire the queue empty callback for the Resend category
* Run the outgoing packet handler thread loop for each client synchronously. It seems like more time was being spent doing the execution asynchronously, and it made deadlocks very difficult to track down
* Rewrote some expensive math in LandObject.cs
* Optimized EntityManager to only lock on operations that need locking, and use TryGetValue() where possible
* Only update the attachment database when an object is attached or detached
* Other small misc. performance improvements
2009-10-19 15:19:09 -07:00
Diva Canto 590d91e572 Forgot {} on last commit. 2009-10-19 15:03:55 -07:00
Diva Canto 2dd8a6beac More instrumentation in physics. 2009-10-19 14:48:17 -07:00
Melanie ffd59868f5 Merge branch 'master' into vehicles 2009-10-19 21:58:51 +01:00
Jeff Ames 0a259caeef Minor formatting cleanup. 2009-10-19 15:48:07 +09:00
John Hurliman 6d04a213d6 Merge branch 'prioritization' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-18 20:25:16 -07:00
John Hurliman 233e16b99c * Rewrote the methods that build ObjectUpdate and ImprovedTerseObjectUpdate packets to fill in the data more accurately and avoid allocating memory that is immediately thrown away
* Changed the Send*Data structs in IClientAPI to use public readonly members instead of private members and getters
* Made Parallel.ProcessorCount public
* Started switching over packet building methods in LLClientView to use Util.StringToBytes[256/1024]() instead of Utils.StringToBytes()
* More cleanup of the ScenePresences vs. ClientManager nightmare
* ScenePresence.HandleAgentUpdate() will now time out and drop incoming AgentUpdate packets after three seconds. This fixes a deadlock on m_AgentUpdates that was blocking up the LLUDP server
2009-10-18 20:24:20 -07:00
Jeff Ames 0d29614ca1 Formatting cleanup. 2009-10-19 08:58:03 +09:00
Diva Canto baed19d068 A bit of instrumentation to figure out what's going on with physics actors. 2009-10-18 16:48:44 -07:00
John Hurliman 1dbbf6edb6 * Process the avatar terse update priority queue as soon as an update for our own avatar is ready to send
* Reduce the scope of the locks when processing the update queues
* Reuse the ImprovedTerseObjectUpdate.RegionData block
2009-10-18 03:15:36 -07:00
John Hurliman 2f2eeb6731 Zero out PrimitiveBaseShape.SculptData after the JPEG2000 data has been decoded to allow garbage collection on it 2009-10-18 02:53:36 -07:00
John Hurliman b4526a5a6d * Big performance increase in loading prims from the region database with MySQL
* Handle the AgentFOV packet
* Bypass queuing and throttles for ping checks to make ping times more closely match network latency
* Only track reliable bytes in LLUDPCLient.BytesSinceLastACK
2009-10-18 02:00:42 -07:00
John Hurliman a3f93cffb4 * Committing Nini.dll with the patch from #3773 applied
* Fixing a log message typo
2009-10-17 22:06:36 -07:00
John Hurliman fdb2a75ad3 Committing the second part of Jim Greensky @ Intel Lab's patch, re-prioritizing updates 2009-10-17 18:01:22 -07:00
John Hurliman e28ac42486 Wrapped the contents of the IncomingPacketHandler loop in a try/catch statement 2009-10-17 17:19:18 -07:00
John Hurliman 3a63de8d02 Added a description for RegionType 2009-10-17 15:55:30 -07:00
Melanie 66923983a7 Add support for display of the script compilation errors in the script editor's
debug pane. This will still use DEBUG_CHANNEL currently, since it is not
fully implemented. This also removes the "Compiled successfully" message
that pops up in the viewer.
2009-10-17 22:36:44 +01:00
Melanie cdcbd22ba8 Merge branch 'master' into prioritization 2009-10-17 14:51:17 +01:00
Melanie c7da13eb23 Adds SendAvatarInterestsUpdate to IClientAPI
Thank you, Fly-Man
2009-10-17 14:50:21 +01:00
Melanie e5ccd3f793 Merge branch 'master' into prioritization 2009-10-17 14:34:48 +01:00
Melanie a95741cdd6 Re-rename ProductName back to it's original RegionType 2009-10-17 14:33:46 +01:00
Melanie 077f473167 Merge branch 'master' into prioritization 2009-10-17 13:41:32 +01:00
Melanie 72b96bcd84 Add ProductName to RegionInfo (for search) 2009-10-17 13:36:45 +01:00
John Hurliman 9c21d672d4 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-16 18:32:12 -07:00
Teravus Ovares (Dan Olivares) 01051daaab * One more tweak to inform the user that they may not be able to move until relogging. 2009-10-16 21:24:08 -04:00
Teravus Ovares (Dan Olivares) d49424c421 * After seeing it repeat over and over again.. again, We won't inform the scenepresence that there was an issue so it doesn't try to make the capsule again. I have a feeling that this is some kind of object leak. We'll know for sure.. soon. 2009-10-16 21:20:55 -04:00
John Hurliman c81378dc22 Changing avatar movement updates to the Task throttle category until we get finer grained prioritization of avatars vs. prims 2009-10-16 17:33:41 -07:00
John Hurliman 7d6d94a7b5 More debugging of RegionCombinerModule.RegionLoaded() by making RegionLoaded() a two line function 2009-10-16 16:49:13 -07:00
John Hurliman f3f93228e0 Changing the region module loading foreach loops to typecast things to the IRegionModuleBase interface where AddRegion(), RegionLoaded(), etc. actually exist. Shot in the dark at fixing the Mono issue 2009-10-16 15:50:22 -07:00
John Hurliman c04ffe5c94 Reverting the previous ugly hack and replacing it with try/catch statements for each RegionLoaded() call. This probably won't fix nebadon's crash, but it seems like a good idea 2009-10-16 15:44:20 -07:00
John Hurliman c3712a56f5 A very ugly and temporary hack to disable the RegionCombinerModule RegionLoaded from firing for testing 2009-10-16 15:34:27 -07:00
John Hurliman c21f19741d Adding noisy debug for nebadon 2009-10-16 15:17:37 -07:00
John Hurliman 80a8a9c4a7 Converted FireAndForget methods to use a singleton pattern to attempt to work around a Mono bug with nested delegates 2009-10-16 14:34:42 -07:00
John Hurliman 31dfe87570 Prevent oversized packets from crashing the LLUDP server. It will now print a friendly error message and drop the packet 2009-10-16 14:26:58 -07:00
John Hurliman 1bd9202f24 * Simplified the prioritization packet creation code to reduce CPU usage and increase throughput. Apologies to Jim for hacking on your code while it's only halfway done, I'll take responsibility for the manual merge
* Changed LLUDP to use its own MTU value of 1400 instead of the 1200 value pulled from the currently shipped libomv
2009-10-16 14:17:13 -07:00
John Hurliman b813058635 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-16 13:29:12 -07:00
Teravus Ovares (Dan Olivares) f5964347bd * fix previous commit 2009-10-16 16:25:48 -04:00
John Hurliman e776dfb1d7 * Changing the "clean dropped attachments" MySQL command to a using statement inside a try/catch. This statement times out for me very frequently
* More verbose logging when zerocoding fails on an outbound packet
2009-10-16 13:22:45 -07:00
Teravus Ovares (Dan Olivares) ac31cb89d5 * Ensure that at least 20 frames run before letting avatar in. 2009-10-16 16:22:10 -04:00
John Hurliman eee1318597 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-16 12:42:53 -07:00
John Hurliman a18489dc9b * Change appearance packets from State to Task. This will hopefully fix the cloud issues
* Changed the throttling logic to obey the requested client bandwidth limit but also share bandwidth between some of the categories to improve throughput on high prim or heavily trafficked regions
2009-10-16 12:20:01 -07:00
Teravus Ovares (Dan Olivares) 0079d0a7c4 * One more attempt at the NullRef In The OdePlugin. This might fix it, but it will definitely get us closer to the root cause. 2009-10-16 14:30:55 -04:00
John Hurliman 5a4fda9dc3 Updating OpenSim.ini.example with the section required to enable a useful prioritization scheme 2009-10-16 11:09:18 -07:00
John Hurliman 06354a093d Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into prioritization 2009-10-16 10:09:19 -07:00
Melanie 5de657cf5d Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-16 13:29:07 +01:00
Melanie 0487092d15 Thank you, Fly man, for plumbing the AvatarInterestsUpdate packet 2009-10-16 13:28:40 +01:00
Teravus Ovares (Dan Olivares) 67afa9e633 * Make sure to unregister the OutOfBounds Physics event in RemoveFromPhysicalScene or we'll be leaking 2009-10-16 03:52:57 -04:00
Teravus Ovares (Dan Olivares) 1f28c6208b * Added a message for when the null reference exception occurs to make debugging easier. Without this, from the user's perspective.. they cannot move, fly or otherwise do anything physical and without a message on the console, it would be hard to tell that this is what is occurring. 2009-10-16 03:40:44 -04:00
Teravus Ovares (Dan Olivares) ac2f98b846 * A hacky attempt at resolving mantis #4260. I think ODE was unable to allocate memory, and therefore the unmanaged wrapper call fails or worse.. there's some unmanaged resource accounting in the ODEPlugin for ODECharacter that isn't being done properly now.
* The broken avatar may not be able to move, but it won't stop simulate from pressing on now.   And, the simulator will try to destroy the avatar's physics proxy and recreate it again...    but if this is what I think it is, it may not help.
2009-10-16 03:32:30 -04:00
John Hurliman 4b75353cbf Object update prioritization by Jim Greensky of Intel Labs, part one. This implements a simple distance prioritizer based on initial agent positions. Re-prioritizing and more advanced priority algorithms will follow soon 2009-10-15 16:35:27 -07:00
jjgreens df2d5a460f Replaced the update lists with a priority queue implementation in LLClientView
Replaced the update lists with a priority queue implementation in LLClientView.
The priority queues are based on the MinHeap implementation also included in
this commit within the OpneSim.Framework namespace.  Initially setup to exactly
mimic the behavior beofre the change which was a first come first serve queue.
2009-10-15 15:52:53 -07:00
John Hurliman d44b50ee46 * Removed some of the redundant broadcast functions in Scene and SceneGraph so it is clear who/what the broadcast is going to each time
* Removed two redundant parameters from SceneObjectPart
* Changed some code in terse update sending that was meant to work with references to work with value types (since Vector3 and Quaternion are structs)
* Committing a preview of a new method for sending object updates efficiently (all commented out for now)
2009-10-15 15:25:02 -07:00
Melanie 642084c2a9 Merge branch 'master' into vehicles 2009-10-15 21:16:05 +01:00
Melanie 6deef7d0f3 Merge branch 'master' into vehicles 2009-10-15 21:14:13 +01:00
Teravus Ovares (Dan Olivares) 6d3d985511 * Request from lkalif to have the Sim send a coarselocationupdate for each avatar in the sim, including yourself.
* Apparently the LLClientView should have been doing this previously..      Also fixed the 'You' on the index block..   so the client doesn't display an extra green dot.
* Thanks lkalif for bringing it to our attention.
2009-10-15 02:01:29 -04:00
John Hurliman b1c93cd3b1 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-10-14 19:24:09 -07:00
John Hurliman 4790f8576c * Replaced (possibly broken?) math for calculating the unix timestamp in MySQLAssetData with Utils.DateTimeToUnixTime()
* Disabled UpdateAccessTime() function since it was only writing zeros anyways. This gave me a significant performance improvement for startup times and avatar logins in standalone mode
* Load attachments asynchronously so avatars with lots of attachments don't have to race the timeout clock to login
2009-10-14 19:23:44 -07:00
Diva Canto cd321ec4d2 Moved some code up to AddRegion, so that other modules that depend on it don't crash. This code needs to be removed as soon as user services is refactored. 2009-10-14 19:15:11 -07:00
John Hurliman fe4109a5b0 Merge branch 'htb-throttle' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-14 16:48:42 -07:00
John Hurliman 06990b074c Allow the LLUDP server to run in either synchronous or asynchronous mode with a config setting, defaulting to synchronous mode 2009-10-14 16:48:27 -07:00
John Hurliman 82012ec4e3 * Clean up the SetThrottle() code and add a maxBurstRate parameter to allow more tweaking in the future 2009-10-14 16:21:48 -07:00
Melanie 6bdd6ae0a0 Merge branch 'master' into htb-throttle 2009-10-14 23:31:38 +01:00
John Hurliman 1e9e9df0b3 * Switched to a plain lock for the ClientManager collections and protected the TryGetValues with try/catch instead of a lock
* Added ClientManager.ForEachSync() for operations that need to run synchronously, such as "show connections"
2009-10-14 14:25:58 -07:00
John Hurliman 25878d6828 * Added the "show connections" command to print out all of the currently tracked IClientAPIs 2009-10-14 13:00:42 -07:00
John Hurliman c033477d2f * Read scene_throttle_bps from the config file and use it
* Minor formatting cleanup
2009-10-14 11:52:48 -07:00
Justin Clark-Casey (justincc) c58713a3a5 Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-10-14 19:44:19 +01:00
John Hurliman 4b5a2f8c02 Merge branch 'htb-throttle' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-14 11:44:17 -07:00
Justin Clark-Casey (justincc) 0cb0a28fde * minor: remove some mono compiler warnings 2009-10-14 19:43:56 +01:00
John Hurliman 0d2e6463d7 * Minimized the number of times textures are pulled off the priority queue
* OnQueueEmpty is still called async, but will not be called for a given category if the previous callback for that category is still running. This is the most balanced behavior I could find, and seems to work well
* Added support for the old [ClientStack.LindenUDP] settings (including setting the receive buffer size) and added the new token bucket and global throttle settings
* Added the AssetLoaderEnabled config variable to optionally disable loading assets from XML every startup. This gives a dramatic improvement in startup times for those who don't need the functionality every startup
2009-10-14 11:43:31 -07:00
Diva Canto bea13e3709 Setting changeY in border crossing. 2009-10-14 11:01:46 -07:00
Melanie 3795cface2 Enable LSL dialogs to display group names properly 2009-10-14 17:39:38 +01:00
Melanie d83ace0d3b Merge branch 'master' into htb-throttle 2009-10-14 05:10:43 +01:00
Melanie db4cdc0961 Set the estate owner to be the master avatar if it's not set. 2009-10-14 04:18:59 +01:00
John Hurliman 4135b0c4dc * Split Task category into Task and State
* Crude prioritization hack
2009-10-13 19:45:38 -07:00
Dan Lake 5976ac16b0 Optimized heartbeat by calling Update() only on updated objects.
During the heartbeat loop, Update() is called on every SceneObjectGroup which in turn checks if any SceneObjectPart has changed. For large regions (> 100k prims) this work consumes 20-30% of a CPU even though there are only a few objects updating each frame.

There is only one other reason to check every object on every frame, and that is the case where a script has registered the object with an "at target" listener. We can easily track when an object is registered or unregistered with an AtTarget, so this is not a reason to check every object every heartbeat.

In the attached patch, I have added a dictionary to the scene which tracks the objects which have At Targets. Each heartbeat, the AtTarget() function will be called on every object registered with a listener for that event. Also, I added a dictionary to SceneGraph which stores references to objects which have been queued for updates during the heartbeat. At each heartbeat, Update() is called only on the objects which have generated updates during that beat.
2009-10-13 19:32:59 -07:00
Teravus Ovares (Dan Olivares) 31a61bbeec * Fixes some prim crossings on megaregions with regions beyond the 512m mark
* There's a slight chance that this could cause a problem with regular prim crossings..   but hopefully not.     Revert if it does.
2009-10-13 22:03:53 -04:00
John Hurliman e8c1e69a0d * Copied LocklessQueue.cs into OpenSim.Framework and added the .Count property and .Clear() method
* Changed the way the QueueEmpty callback is fired. It will be fired asynchronously as soon as an empty queue is detected (this can happen immediately following a dequeue), and will not be fired again until at least one packet is dequeued from that queue. This will give callbacks advanced notice of an empty queue and prevent callbacks from stacking up while the queue is empty
* Added LLUDPClient.IsConnected checks in several places to prevent unwanted network activity after a client disconnects
* Prevent LLClientView.Close() from being called twice every disconnect
* Removed the packet resend limit and improved the client timeout check
2009-10-13 18:56:54 -07:00
John Hurliman dc11643c00 * Consolidated adding / removing ClientManager IClientAPIs to two places in Scene
* Added some missing implementations of IClientAPI.RemoteEndPoint
* Added a ClientManager.Remove(UUID) overload
* Removed a reference to a missing project from prebuild.xml
2009-10-13 17:33:45 -07:00
John Hurliman 395a8680c3 * Fixed a bug where clients were being added to ClientManager twice
* Changed the ClientManager interface to reduce potential errors with duplicate or mismatched keys
* Added IClientAPI.RemoteEndPoint, which can (hopefully) eventually replace IClientAPI.CircuitCode
* Changed the order of operations during client shutdown
2009-10-13 16:53:19 -07:00
John Hurliman 23a334b9f5 * Rewrote ClientManager to remove Lindenisms from OpenSim core, improve performance by removing locks, and replace LLUDPClientCollection
* Removed the confusing (and LL-specific) shutdowncircuit parameter from IClientAPI.Close()
* Updated the LLUDP code to only use ClientManager instead of trying to synchronize ClientManager and m_clients
* Remove clients asynchronously since it is a very slow operation (including a 2000ms sleep)
2009-10-13 14:50:03 -07:00
John Hurliman c893761319 * Unregister event handlers in LLUDPServer when a client logs out and disconnects
* Move ViewerEffect handling to Scene.PacketHandlers
* Removing the unused CloseAllAgents function
* Trimming ClientManager down. This class needs to be reworked to keep LLUDP circuit codes from intruding into the abstract OpenSim core code
2009-10-13 12:50:59 -07:00
John Hurliman f55b282078 Avoid checking m_clients collection twice when a UseCircuitCode packet is received 2009-10-13 11:28:08 -07:00
John Hurliman 82ace481c9 * Broke the circular reference between LLClientView and LLUDPClient. This should speed up garbage collection on the large LLClientView objects, and also prevents handling packets for disconnected clients
* Renamed local LLUDPClient variables to udpClient to avoid naming confusion between LLUDPClient and LLClientView
2009-10-13 11:14:45 -07:00
John Hurliman 3828b3c0e8 * Eliminated unnecessary parameters from LLUDPServer.SendPacketData()
* Changed PrimMesher's Quat.Identity to return <0,0,0,1> instead of <0,0,0,1.1>
2009-10-13 10:38:35 -07:00
Diva Canto e3d5beebfb Better handling of missing assets. 2009-10-13 06:39:11 -07:00
Diva Canto f3d2192cd4 Better handling of missing assets. 2009-10-12 18:30:06 -07:00
Diva Canto 63ed605eba Stop the recurring texture requests for textures that truly don't exist. 2009-10-12 17:36:13 -07:00
Diva Canto 0cfbdf3894 Added this one file for the previous commit to work. 2009-10-12 17:01:03 -07:00
Diva Canto c0beeb929e * Fixes http://opensimulator.org/mantis/view.php?id=4225
* Fixes http://opensimulator.org/mantis/view.php?id=3959
* Allows for viewing inventory textures outside home grid
2009-10-12 17:00:01 -07:00
Melanie bf68dad643 0004246: [Patch] FlotsamAssetCache deep scan & cache
Thank you, mcortez.
2009-10-12 23:21:32 +01:00
Melanie 09cd2ac443 Stop null values from being returned on database queries 2009-10-12 20:46:19 +01:00
Melanie 170d2c4660 Merge branch 'master' into htb-throttle 2009-10-12 15:25:42 +01:00
Melanie 70553a979e Merge branch 'master' into vehicles 2009-10-12 15:12:15 +01:00
Melanie 50f509d600 Merge branch 'master' into vehicles 2009-10-12 15:11:01 +01:00
unknown fe0940a22f Optimize ODE mesh by removing sleep. On a region with 100,000 prims and ODE enabled, the first Heartbeat loop call to UpdatePhysics takes 20 minutes. 75% of that time is spent in this sleep. (100k prims * 10ms) 2009-10-12 01:53:57 -07:00
Diva Canto ef6aa444bf Fixed tree crossing. This will alleviate
http://opensimulator.org/mantis/view.php?id=4163
2009-10-11 13:46:19 -07:00
Diva Canto 36dcfd2b80 * Changed logic of enabling LLProxyLoginModule to follow the new style -- true/false on the name, rather than gridmode=true.
* Better error messages on Add/Remove clients.
2009-10-11 10:23:16 -07:00
dahlia 7b4183d7a0 sync PrimMesher with r46 2009-10-11 02:12:17 -07:00
dahlia 41b27ef064 disambiguate System.Path (preparation for new PrimMesher) 2009-10-11 01:30:24 -07:00
Diva Canto 01783877ec Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-10-10 06:36:10 -07:00
Diva Canto 8030ed89b0 Use Util.UTF8 instead of creating a new heap object every time. 2009-10-10 06:35:31 -07:00
Melanie 5e6e31591c Merge branch 'master' into htb-throttle
This is hand-edited to not let master changes creep into here and may cause a
somewhat rocky merge to master later.
2009-10-10 10:26:47 +01:00
Melanie ef03b2d936 Fix selling objects 2009-10-10 10:18:16 +01:00
Teravus Ovares (Dan Olivares) 8271528b1f * comment out the velocity test, using updates every 500 ms as set in ScenePresence.AddToPhysicalScene.
* This causes time to be counted in ODECharacter and, when a collision occurs, the physics scene will report the collisions only if the the difference of last time it reported the collisions from now was more then the set ms.
* This is cool because the time accrues while collisions are not taking place and when they do take place again, you get an immediate update.
2009-10-10 04:01:36 -04:00
Teravus Ovares (Dan Olivares) 3f0dc88c46 Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-10-10 03:54:10 -04:00
Teravus Ovares (Dan Olivares) 4ffe936ba8 * Make ODECharacter respect the scene's requested collision update time
* Set the Scene collision update time to 500 ms
2009-10-10 03:53:53 -04:00
dahlia d7654c3bda Adjust velocity threshold for triggering flailing. Thanks to KittoFlora for researching this. 2009-10-10 00:26:43 -07:00
Teravus Ovares (Dan Olivares) 5f94889044 * Fix incorrect math on the Velocity check in PhysicsCollisionUpdate. This may reduce avatar flailing. 2009-10-10 01:49:06 -04:00
Teravus Ovares (Dan Olivares) 798bce592f * Move the 'On Collision Update Movement Animation' routine to above the 'm_invulnerable' test. It doesn't fix anything but it should really be there anyway. 2009-10-10 01:16:34 -04:00
Diva Canto 3f78ff6ee0 Slight variation on the locking scheme: now locking always, except the ForEach, which gets a copy of the Array. I think the ForEach was the big gorilla. 2009-10-09 19:16:03 -07:00
John Hurliman 29543514e6 * Changed the "Packet exceeded buffer size" log line to debug and include the packet type. This message is normal, but could be evidence of a message marked for zerocoding that probably shouldn't be
* Changing OpenSimUDPBase back to high concurrency. High concurrency mode seems to make other problems happen faster, so it's helpful for working out other bugs and will probably
2009-10-09 16:33:50 -07:00
Diva Canto f29bd8036d A slight improvement on name fetching -- using the local name cache, since it exists. 2009-10-09 14:36:08 -07:00
Diva Canto c8cc14a98b This is to *try* to avoid the exception we are seeing repeatedly:
#13:53:03 - [LLUDPSERVER]: Packet exceeded buffer size during zerocoding. Removing MSG_ZEROCODED flag
#13:53:03 - [Scene]: Failed with exception System.ArgumentException: Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection.
#  at System.Buffer.BlockCopy (System.Array src, Int32 srcOffset, System.Array dst, Int32 dstOffset, Int32 count) [0x000b7] in /home/grid/install/mono24/mono-2.4.2.3/mcs/class/corlib/System/Buffer.cs:116
#  at OpenSim.Region.ClientStack.LindenUDP.LLUDPServer.SendPacketData (OpenSim.Region.ClientStack.LindenUDP.LLUDPClient client, System.Byte[] data, Int32 dataLength, PacketType type, Boolean doZerocode, ThrottleOutPacketType category) [0x00060] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs:290
#  at OpenSim.Region.ClientStack.LindenUDP.LLUDPServer.SendPacket (OpenSim.Region.ClientStack.LindenUDP.LLUDPClient client, OpenMetaverse.Packets.Packet packet, ThrottleOutPacketType category, Boolean allowSplitting) [0x00077] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs:265
#  at OpenSim.Region.ClientStack.LindenUDP.LLClientView.OutPacket (OpenMetaverse.Packets.Packet packet, ThrottleOutPacketType throttlePacketType) [0x00000] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs:5244
#  at OpenSim.Region.ClientStack.LindenUDP.LLClientView.SendCoarseLocationUpdate (System.Collections.Generic.List`1 users, System.Collections.Generic.List`1 CoarseLocations) [0x0012a] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs:3424
#  at OpenSim.Region.Framework.Scenes.ScenePresence.SendCoarseLocationsDefault (UUID sceneId, OpenSim.Region.Framework.Scenes.ScenePresence p) [0x000fa] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/ScenePresence.cs:2536
#  at OpenSim.Region.Framework.Scenes.ScenePresence.SendCoarseLocations () [0x0000d] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/ScenePresence.cs:2491
#  at OpenSim.Region.Framework.Scenes.ScenePresence.Update () [0x00011] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/ScenePresence.cs:2404
#  at OpenSim.Region.Framework.Scenes.SceneGraph.UpdateEntities () [0x0001b] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/SceneGraph.cs:164
#  at OpenSim.Region.Framework.Scenes.Scene.Update () [0x000dc] in /home/grid/PLAZA/wrightplaza/opensim/OpenSim/Region/Framework/Scenes/Scene.cs:1031  On Region: Wright Plaza
2009-10-09 14:25:01 -07:00
Diva Canto c146f2c8c4 Use the cache, Luke! 2009-10-09 13:49:55 -07:00
Diva Canto 8231cb2231 Putting this to exactly what it was yesterday around this time, so we can do the 100-ppl load test in WP. We need to carefully play with this code in order to understand all the problems. 2009-10-09 11:32:53 -07:00
Melanie 527c94825b Merge branch 'master' into htb-throttle 2009-10-09 17:23:18 +01:00
Melanie 78f57283f4 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-09 17:22:39 +01:00
Justin Clark-Casey (justincc) f1f239758f Apply http://opensimulator.org/mantis/view.php?id=4066
If XEngine compile fails, show script name in error message in-world as well as the exception itself
Thanks Luca Peck
2009-10-09 17:43:25 +01:00
Justin Clark-Casey (justincc) b6678faf34 * Apply http://opensimulator.org/mantis/view.php?id=3933
* Remove client servers when regions are closed or removed
* Thanks randomhuman!
2009-10-09 17:28:16 +01:00
Rob Smart 1c220e173c Adding a hair item to the default wearables, fixes newly created avatars appearing as a cloud 2009-10-09 17:22:02 +01:00
Melanie 23586b69a1 Slow down the packet receiving code again after new reports of thread storms. 2009-10-09 12:17:55 +01:00
John Hurliman 77e48a6725 Change the backup thread to run on a BackgroundWorker instead of a Thread. I don't have an explanation, but this seems to stop a slow but steady memory leak I was experiencing 2009-10-09 02:49:55 -07:00
John Hurliman 76a5cae0b4 Forgot to initialize m_writeLock 2009-10-09 02:18:25 -07:00
John Hurliman a3e31cdeaf Added more debugging output to the "unrecognized source" warning 2009-10-09 02:13:21 -07:00
John Hurliman 494a1e922d Calling .Close() on AutoResetEvent and ManualResetEvent (those classes contain an unmanaged resource that will not automatically be disposed when they are GCed), and commenting out some ManualResetEvents that are not in use yet 2009-10-09 02:10:53 -07:00
John Hurliman a5b9971fd7 * Added a lock object for the write functions in LLUDPClientCollection (immutable != concurrent write safety)
* Allow the UDP server to bind to a user-specified port again
* Updated to a newer version of OpenSimUDPBase that streamlines the code even more. This also reintroduces the highly concurrent packet handling which needs more testing
2009-10-09 01:53:06 -07:00
John Hurliman 56a27c37d3 Simplified LLUDPClientCollection from three collections down to one. This will prevent any potential problems from inconsistency between the internal collections 2009-10-08 21:51:53 -07:00
John Hurliman 3a04d706c9 Fear the lockless LLUDP implementation! 2009-10-08 17:34:51 -07:00
Diva Canto 51ea39199b Putting the lock back in TryGetValue. 2009-10-08 15:42:08 -07:00
Melanie a0dd9f4bb4 Fork UDPBase from libOMV into opensim 2009-10-08 22:25:14 +01:00
Diva Canto fc41f2e461 Added guards against the exception reported:
#2009-10-08 12:58:34,462 ERROR - OpenSim.Application [APPLICATION]:
#APPLICATION EXCEPTION DETECTED: System.UnhandledExceptionEventArgs
#
#Exception: System.Exception: Object reference not set to an instance of an object. ---> System.NullReferenceException: Object reference not set to an instance of an object.
#   at OpenSim.Region.ClientStack.LindenUDP.J2KImage.SendFirstPacket(LLClientView client) in c:\Opensim\OpenSim\Region\ClientStack\LindenUDP\J2KImage.cs:line 230
#   at OpenSim.Region.ClientStack.LindenUDP.J2KImage.SendPackets(LLClientView client, Int32 maxpack) in c:\Opensim\OpenSim\Region\ClientStack\LindenUDP\J2KImage.cs:line 84
2009-10-08 07:55:06 -07:00
Melanie f6b8bac0fa Merge branch 'master' into vehicles 2009-10-08 10:32:15 +01:00
Melanie 1eb390beda Remove ThreadTrackerTest. It's no longer relevant because the thread
tracker now uses the system thread list
2009-10-08 08:32:34 +01:00
Melanie fe679be9e7 Merge branch 'htb-throttle' 2009-10-08 08:07:38 +01:00
Diva Canto 68961ec092 One last attempt at tunning the locking/no locking behaviour. The previous one was too lax and made the important login packets fail. 2009-10-07 20:36:24 -07:00
Diva Canto dd80380df5 Another go at the deadlock: not locking TryGetValue, and just catch/ignore exceptions. 2009-10-07 19:45:57 -07:00
Diva Canto 29f03d95f3 Bug fix. 2009-10-07 19:20:34 -07:00
Diva Canto c71b3e730d Changed the locking mechanism, because the existing one is causing deadlocks to occur. 2009-10-07 18:54:08 -07:00
Diva Canto ab3bfca546 Printout one more field in show threads, but this won't buy us much. 2009-10-07 17:29:21 -07:00
Melanie d9f15fbf40 store owner_uuid in the region table 2009-10-07 19:37:18 +01:00
Melanie 48826fcdf7 Remove debug again 2009-10-07 19:22:27 +01:00
Melanie a0b6cc3861 Enable debugging of the region connector's query string 2009-10-07 19:10:18 +01:00
Melanie 6fdec1f7c9 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-07 18:35:33 +01:00
Melanie 596f2307bf Add owner_uuid. Not sure this works. Worth a test 2009-10-07 18:34:59 +01:00
Diva Canto 78e4501bef Improved fault handling in HelloNeighbour. 2009-10-07 08:42:33 -07:00
Melanie d06c7d90a1 Correct a build break caused by an optimization in trunk 2009-10-07 06:56:00 +01:00
Diva Canto d344ca932d A small change in FetchInventoryDescendantsCAPS. 2009-10-06 22:19:20 -07:00
Diva Canto 8c255b374a Uncommented log message on CAPs FetchInventoryDescendants 2009-10-06 21:32:15 -07:00
Melanie a52f6c56b1 Merge branch 'master' into htb-throttle 2009-10-07 05:19:20 +01:00
Melanie d33b6fef2b replace LLClientView with proper version 2009-10-07 04:37:12 +01:00
Melanie adc208e568 Replace LLClientView on the branch with master. UNCOMPILABLE! 2009-10-07 04:36:36 +01:00
Diva Canto 58c33fbc89 Uncommented log message on CAPs FetchInventoryDescendants 2009-10-07 04:32:35 +01:00
Diva Canto b5b53dd3eb * One more debug message on FetchInventoryDescendants
* More streams close on finally
2009-10-06 19:55:35 -07:00
Melanie 6f2d183107 Merge branch 'master' into htb-throttle 2009-10-07 03:01:11 +01:00
Melanie 89d23a1fa2 Revert "Rewrote parts of the code that were double-locking different objects. This is about half of the code base reviewed."
This reverts commit e992ca0255.
2009-10-07 01:45:49 +01:00
Melanie 9618c196c2 Revert "Merging in diva's locking fixes"
This reverts commit 832cc68513.
2009-10-07 01:44:36 +01:00
John Hurliman 312438f145 Commented noisy debugging about packet splitting 2009-10-06 15:55:39 -07:00
John Hurliman 832cc68513 Merging in diva's locking fixes 2009-10-06 15:54:00 -07:00
John Hurliman 7199976d48 Checks the number of ThreadPool and IOCP threads on startup and bumps up the numbers to .NET defaults of 500/1000 if need be 2009-10-06 15:51:56 -07:00
Diva Canto e992ca0255 Rewrote parts of the code that were double-locking different objects. This is about half of the code base reviewed. 2009-10-06 15:39:53 -07:00
John Hurliman 9cb5db3621 Applying the real fix (thank you for tracking that MSDN doc down Melanie) 2009-10-06 15:08:09 -07:00
John Hurliman 74fe284a20 Trying Melanie's fix 2009-10-06 14:50:46 -07:00
John Hurliman c855806548 Reverting MySQLLegacyRegionData spam 2009-10-06 14:26:00 -07:00
John Hurliman a3a8691ebe MySQLLegacyRegionData: Extreme Spam Edition(tm) 2009-10-06 14:18:37 -07:00
John Hurliman eb205ef4f0 Added a debug line for nebadon 2009-10-06 14:07:04 -07:00
John Hurliman 25676ac5cf * Added a sanity check for Mono before trying to enumerate over an empty SortedDictionary
* Changed the order of a log line from DotNetEngine so you can tell whether or not it is actually loading
2009-10-06 13:39:10 -07:00
Justin Clark-Casey (justincc) 99c85b5ef5 * Change some more default ports to the robust default of 8003
* Make these use existing constants rather than hardcoding
* These will probably go away soon anyway once all services are under ROBUST
2009-10-06 20:32:33 +01:00
John Hurliman fa6027aa09 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-06 12:15:24 -07:00
John Hurliman 61b5372153 * Added missing references to prebuild.xml and commented out the LindenUDP tests until a new test harness is written
* Clients are no longer disconnected when a packet handler crashes. We'll see how this works out in practice
* Added documentation and cleanup, getting ready for the first public push
* Deleted an old LLUDP file
2009-10-06 12:13:16 -07:00
Diva Canto 77b4abaa25 * Removed verbose debug message
* Restored HG inventory access which had been lost upon adding a 3rd argument to inventory and asset server handlers
* Fixed a stupid bug in the InventoryConnector which was making move items do things twice
2009-10-06 11:08:11 -07:00
John Hurliman fb19d1ca0a * Try/catch around EndInvoke() when Util.FireAndForget() returns to catch exceptions thrown in the async method
* Added packet stats handling to the new LLUDP implementation
* Attempting to avoid a race condition when creating a new LLUDPClient
2009-10-06 10:12:59 -07:00
Diva Canto 3db4d38645 Removing dependencies on System.Runtime.Remoting. 2009-10-06 09:54:15 -07:00
Melanie 0374f1b144 Merge branch 'master' into vehicles 2009-10-06 17:44:59 +01:00
Diva Canto e474fc2fdb Corrected words in error message. 2009-10-06 08:50:25 -07:00
Melanie 40d0018d66 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-06 15:29:46 +01:00
Diva Canto d4d060b57d Commenting the DEBUG code that I added yesterday, because it's causing mono to fail with
https://bugzilla.novell.com/show_bug.cgi?id=538854
2009-10-06 07:49:05 -07:00
Melanie 2a060136bd Lock the heartbeat against multiple invocations. May prevent deadlocks and/or
runaway thread use
2009-10-06 15:28:38 +01:00
Melanie 8a7a947faa Remove the using() constructs from the new style database modules; they caused
the underlying connection of a reader or command to be closed before the
reader or command itself. Added the proper logic to Close and dispose items
in CloseDBConnection. Readers and Connections need Close(), Commands need
Dispose(), in the order Reader, Command, Connection.
Also reinstated 80-column-friendly formatting
2009-10-06 14:30:25 +01:00
John Hurliman 2519f071f2 Fixing a few compile errors in the previous commit 2009-10-06 02:50:59 -07:00
John Hurliman e7c877407f * Continued work on the new LLUDP implementation. Appears to be functioning, although not everything is reimplemented yet
* Replaced logic in ThreadTracker with a call to System.Diagnostics that does the same thing
* Added Util.StringToBytes256() and Util.StringToBytes1024() to clamp output at byte[256] and byte[1024], respectively
* Fixed formatting for a MySQLAssetData error logging line
2009-10-06 02:38:00 -07:00
Diva Canto 0c46df973a Correction on the DEBUG code. 2009-10-05 21:02:10 -07:00
Diva Canto e36a54ee2a #if DEBBUG code for monitoring the ThreadPool. 2009-10-05 20:39:23 -07:00
John Hurliman 7ddb6fbced Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-05 17:38:27 -07:00
John Hurliman 429a84f390 Beginning work on the new LLUDP implementation 2009-10-05 17:38:14 -07:00
John Hurliman a76a1afda8 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-10-05 16:41:19 -07:00
John Hurliman 6720369376 Added CloseDBConnection() to replace the old CloseReaderCommand(). This will close the MySQLConnection attached to a MySQLCommand. I'm not sure if this accounts for every time a database connection needs to be closed, but it matches up 1:1 with the places where the database connection was previously being closed 2009-10-05 16:39:40 -07:00
Diva Canto 2753f4d62c * GridServerPostHandler.cs: Try/catch in Handle
* BaseOpenSimServer.cs: Added thread pool numbers in show threads
2009-10-05 16:06:21 -07:00
Michael Cortez f4726f4bcc Make sure that keys exist in arrays before trying to access them. 2009-10-05 20:52:07 +01:00
Michael Cortez 90d1ef9e4a Ensure the specified imSessionID exists in the DroppedSession collection before attempting to access it. 2009-10-05 20:52:01 +01:00
Michael Cortez d4a6d9191a Make sure that keys exist in arrays before trying to access them. 2009-10-05 20:47:00 +01:00
Michael Cortez 544675d0f0 Ensure the specified imSessionID exists in the DroppedSession collection before attempting to access it. 2009-10-05 20:47:00 +01:00
Diva Canto 282b752035 Minor change. 2009-10-05 13:14:14 -07:00
Diva Canto 9bd1353875 Fixed bug introduced in one of the last commits. 2009-10-05 12:13:38 -07:00
Diva Canto 05b80185b9 More debug to try to diagnose a problem with region registration. 2009-10-05 11:49:21 -07:00
Diva Canto 5f18a088a8 More error catching/outputting. 2009-10-05 11:14:46 -07:00
Diva Canto 05c1ec7faf Changed the lock object, to see if this helps at all. Also switched the order of lock and try/catch in RemoveImageFromQueue. 2009-10-05 11:01:45 -07:00
Justin Clark-Casey (justincc) 2a19187e01 * minor: tweak asset cache logging levels downwards 2009-10-05 18:32:19 +01:00
Diva Canto 62ea6b6383 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-10-05 10:31:41 -07:00
Diva Canto a2d5da7129 More debug messages if things go wrong. 2009-10-05 10:31:09 -07:00
Justin Clark-Casey (justincc) 10c4b88ccf minor: remove mono compile warning 2009-10-05 18:20:37 +01:00
Diva Canto 81c08ec74a Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-10-05 09:19:16 -07:00
Diva Canto 75b35ddf4a More error messages to warn when/if things go wrong. 2009-10-05 09:18:51 -07:00
Diva Canto ad81b453b3 GetRegionByPosition: use the cache, Luke. 2009-10-05 09:02:52 -07:00
Melanie 8d7075c5c6 Adapt to renamed members in landObject 2009-10-05 16:33:25 +01:00
Melanie 0cb974bc76 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-05 16:32:31 +01:00
Melanie 5702c8f910 Adapt to renamed members in landObject 2009-10-05 16:31:54 +01:00
Melanie a7023ed81c Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-05 16:08:57 +01:00
unknown 7c3e5afc0c MSSQL changes for Grid server in ROBUST plus some code tweaks 'n tidy up 2009-10-05 16:08:35 +01:00
unknown 82df3d8fd6 MSSQL changes for Grid server in ROBUST plus some code tweaks 'n tidy up 2009-10-05 16:07:33 +01:00
Melanie 8d5a40aad0 Merge branch 'master' into vehicles 2009-10-05 12:58:52 +01:00
Dan Lake 6d52974c5f Eliminate pinned Mesh data on managed heap by using IntPtrs to memory allocated on the unmanaged heap. This prevents fragmentation of the managed heap and the resulting stress on GC. A region with ~150,000 prims using ODE and Meshmerizer saw memory remain flat around 1.2GB as opposed to 1.5GB and continually growing due to pinned memory. This patch complements the unique mesh dictionary patch applied to Meshmerizer but is independent. The net effect is a 60-75% reduction in memory for our largest regions. 2009-10-05 12:45:41 +01:00
Melanie dcdcbb314e Fix build break 2009-10-05 11:08:02 +01:00
Melanie 0744292b47 Merge branch 'master' into vehicles 2009-10-05 10:17:23 +01:00
dahlia 5c593f3892 only cache mesh if meshing was successful
re-enable sculpt mesh caching
2009-10-04 20:01:44 -07:00
Melanie a208f33c5d Make the asset connector async Get overload return false if the asset
retrieval was not synchronous.
2009-10-05 00:23:47 +01:00
Diva Canto 362e94a022 * KeepAlive set to false in expect_user and log_off.
* Check for null SP in PermissionsModule.
2009-10-04 16:30:12 -07:00
Diva Canto 08d3650138 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-10-04 14:06:28 -07:00
Diva Canto 5b19d5a7b7 Reduced locking. 2009-10-04 14:05:58 -07:00
John Hurliman a528e7704c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-10-04 13:58:22 -07:00
John Hurliman 29a4614529 * MySQL data tests now pass by fixing a bad fix for a bad cast on the asset Local member in MySQLAssetData
* First pass at applying the using(){} pattern to IDisposable objects. Always use the using pattern on IDisposable objects whenever possible, do not manually call .Close() or .Dispose() unless there is no other way to write the code. This pass mostly covers OpenSim.Data.MySQL, and should have no functional change (tests still pass)
2009-10-04 13:57:51 -07:00
Diva Canto 022526661b Just trying a few things. This one will reduce the number of async calls. 2009-10-04 13:38:12 -07:00
Diva Canto d93e0a0503 Guarding a line that is sometimes throwing a null pointer exception. 2009-10-04 10:30:21 -07:00
Diva Canto 30aac00f6b Closing more streams even if things fail. 2009-10-04 10:12:19 -07:00
Diva Canto fe9cca64de Stream needs to be closed before the file can be moved... 2009-10-04 09:56:54 -07:00
Diva Canto b803d5ab9b Make sure to close the file streams on the FlotsamCache, even if something fails. 2009-10-04 09:44:04 -07:00
Diva Canto f21f3727df Leaving the MemoryStreams unclosed. 2009-10-04 09:20:01 -07:00
Diva Canto 366bfe17ae Trying to avoid the null pointer exception in J2KImage, RunUpdate. 2009-10-04 07:41:10 -07:00
dahlia 95ebb7794c flexible extrusion shape defaults to linear 2009-10-04 02:59:12 -07:00
dahlia efebc809ce disable physics actors for flexible prims 2009-10-04 02:54:36 -07:00
dahlia 0cbd9eee2f Exclude sculpt proxies from mesh caching 2009-10-04 02:14:13 -07:00
Melanie 6878b26b0d Merge branch 'diva-textures-osgrid' 2009-10-04 05:49:16 +01:00
Diva Canto 2d9c27a28f Slightly better message with status code for WebException. 2009-10-03 20:18:21 -07:00
Diva Canto b2cdee5a14 Better error handling to diagnose login problems. 2009-10-03 19:08:56 -07:00
Diva Canto b6920267f0 Close was being called to early on the Memory stream. 2009-10-03 16:27:55 -07:00
Diva Canto b75b887798 Fixed interface between the Messaging server and the grid server. 2009-10-03 11:55:52 -07:00
Diva Canto df7049008a More streams closed. 2009-10-03 08:57:30 -07:00
Diva Canto de94aa9bb5 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-10-03 08:46:25 -07:00
Diva Canto e1112ff879 MOre streams closed. Corrected word in GridCommon.ini.example 2009-10-03 08:46:06 -07:00
Diva Canto 4843edfeb7 Closing more streams. 2009-10-03 08:33:19 -07:00
Melanie 874e423141 Fix my build break 2009-10-03 15:37:31 +01:00
Melanie b4d1cf0009 Small permissions tweak 2009-10-03 14:22:29 +01:00
Diva Canto 006dfd6d9a Closing another stream. 2009-10-02 20:35:15 -07:00
John Hurliman 387e9f7a7f * Creates Util.UTF8 and switches some references of Encoding.UTF8 to Util.UTF8 (not all references were switched since not all OpenSim libraries reference OpenSim.Framework)
* Shrinks the largest in-memory object, the LLRAW.HeightmapLookupValue struct (only used for exporting to LLRAW terrain files), to the minimum possible size. This seems to have the odd side effect of cutting the size of the two double[256,256] terrain objects in half. Possibly an alignment optimization?
2009-10-02 18:31:08 -07:00
John Hurliman 3ab6c89652 Merge branch 'diva-textures-osgrid' of ssh://opensimulator.org/var/git/opensim into diva-textures-osgrid 2009-10-02 16:54:03 -07:00
John Hurliman 332d3eb1bb * Removed code that is no longer used with Melanie's queue callback optimization
* Moved all priority queue access to helper functions to improve reliability and readability
* New version of CSJ2K.dll (from libomv source tree) that fixes a JPEG2000 comment decoding bug
2009-10-02 16:53:35 -07:00
Diva Canto 7a2ac292d6 Merge branch 'diva-textures-osgrid' of ssh://diva@opensimulator.org/var/git/opensim into diva-textures-osgrid 2009-10-02 16:24:13 -07:00
Diva Canto e66321227e Close streams in MakeRequest. 2009-10-02 16:23:46 -07:00
Melanie 36c8d55827 Merge branch 'diva-textures-osgrid' 2009-10-03 00:03:09 +01:00
Melanie 73fa409318 Merge branch 'diva-textures-osgrid' 2009-10-02 23:25:17 +01:00
John Hurliman bdc1345501 * Removed even more unnecessary state variables from J2KImage
* Fixed the incorrect "out of memory?" exception messages and replaced them with useful information
* Cleaned up J2KImage and LLImageManager to conform to coding conventions
2009-10-02 13:08:15 -07:00
John Hurliman 9b342d3e0d * Changed the flush logic to drop packets in non-transactional streams, and to not fire any "put more data in the queues" callbacks
* Minor tweaks to code formatting to make the callback chain for packet queuing easier to follow
2009-10-02 12:00:42 -07:00
Melanie 9eccea5777 Merge branch 'master' into vehicles 2009-10-02 19:53:42 +01:00
Melanie 46955f4260 Merge branch 'master' into vehicles 2009-10-02 19:04:46 +01:00
Melanie ce8974539e Merge branch 'master' into diva-textures 2009-10-02 19:03:22 +01:00
Melanie 6def897556 Merge branch 'diva-textures-osgrid' into diva-textures 2009-10-02 19:02:38 +01:00
dr scofield (aka dirk husemann) 6c068eaf12 reducing script engine log spam 2009-10-02 12:38:13 +02:00
dr scofield (aka dirk husemann) 75a42e0459 reducing region DB log spam 2009-10-02 12:05:59 +02:00
dr scofield (aka dirk husemann) 3c271bf222 fixing TestLandChannel to let it return empty List<ILandObject>() (as
does the real LandChannel), percolating to SceneSetupHelpers.
2009-10-02 11:31:30 +02:00
dr scofield (aka dirk husemann) 2107b67f1b - cleaning up LandData/ILandObject capitalization issues
- adding LandDataSerializer to OAR mechanics
2009-10-02 11:31:30 +02:00
Melanie 31d8cec0f8 Merge branch 'master' into diva-textures 2009-10-02 08:23:38 +01:00
Melanie 3ba36bb4d8 Restore the missing image handling to the image manager. The missing
image packet crashes Hippo without a message.
2009-10-02 05:49:27 +01:00
Melanie 9a429610e2 Merge branch 'diva-textures-osgrid' into texturetest 2009-10-02 04:19:22 +01:00
Diva Canto 746dad7b74 Locking the priority queue to see if it gets pass that exception. 2009-10-01 20:32:22 -07:00
Melanie 18a744cac1 Change texture sending to be driven by the queue empty event from the
packet queue, rather than a timer
2009-10-02 04:04:14 +01:00
John Hurliman 54ff84050f Removing console debug spew 2009-10-01 18:12:13 -07:00
Adam Frisby a2cdbd784d Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-10-02 10:54:01 +10:00
John Hurliman aaf8fbcef9 Merge branch 'diva-textures-osgrid' of ssh://opensimulator.org/var/git/opensim into diva-textures-osgrid 2009-10-01 17:53:28 -07:00
Adam Frisby a030e3d61b * Attempting to fix a issue with console commands & the estate module. Again. 2009-10-02 10:53:21 +10:00
John Hurliman 6e0c79b8fe * Rewrote LLImageManager to use a real priority queue and hold minimal state
* Rewrote the logic in J2KImage.RunUpdate()
* Added a default avatar texture (I made it myself)
2009-10-01 17:42:13 -07:00
Diva Canto 24d5b57503 Added messages to assertions in the failing tests, so that we know which ones are failing. 2009-10-01 17:28:42 -07:00
Melanie 212e132e79 Revert "* Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity"
This reverts commit 39842eb4af.
2009-10-02 00:47:01 +01:00
Melanie 4a1076128c Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-10-02 00:45:43 +01:00
Melanie d6301db382 Revert "* Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity"
This reverts commit 39842eb4af.
2009-10-02 00:45:31 +01:00
Diva Canto ac0927c922 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-10-01 16:40:04 -07:00
Diva Canto c8c4b4c505 Switched log level of an annoying message in SQLite to Debug, and commented it too. 2009-10-01 16:39:41 -07:00
Melanie 54a912bb9c Add a method to determine the count of packets in a throttle 2009-10-01 22:35:57 +01:00
Melanie 7c1fdb2540 Add "dump asset" command to remote asset connector (the only one that uses a
cache at all)
2009-10-01 21:29:57 +01:00
Melanie 26478ff689 Add "dump asset" command to remote asset connector (the only one that uses a
cache at all)
2009-10-01 21:26:53 +01:00
Melanie 5e9da4daab Add OnQueueEmpty event to the packet layers. No user functinality yet 2009-10-01 21:08:17 +01:00
Diva Canto 94783e9377 Catch and print exceptions in MessagingService, to diagnose mysterious disappearances of the Messaging server. 2009-10-01 09:17:22 -07:00
Melanie d0cc0985fa Fix a merge conflict 2009-10-01 14:45:06 +01:00
Melanie 41ff39414b Merge branch 'master' into vehicles 2009-10-01 14:08:15 +01:00
dr scofield (aka dirk husemann) 133a4a9906 - adding new LandDataSerializer testcase to "test-xml" target as well
- adding another LandDataSerializer testcase
2009-10-01 15:03:16 +02:00
dr scofield (aka dirk husemann) 05da73c300 fixing LandDataSerializer (yeah! for testcases) 2009-10-01 12:01:41 +02:00
dr scofield (aka dirk husemann) 18416ec518 Merge branch 'oar-parcel' into x-opensim 2009-10-01 10:30:43 +02:00
dr scofield (aka dirk husemann) 77ed8e977a adding meat to the LandDataSerializerTest cases. 2009-10-01 10:30:26 +02:00
dr scofield (aka dirk husemann) 5b378a793b Merge branch 'oar-parcel' into x-opensim 2009-10-01 09:48:30 +02:00
dr scofield (aka dirk husemann) 40cf840df2 adding testcase for LandDataSerializer; fixing LandDataSerializer ;-) 2009-10-01 09:47:45 +02:00
James J Greensky 44776fea72 Fixing LLClientView memory leak
Fixing LLClientView memory leak by disposing of all timers utilized
in LLClientView as they contain references to the callback method.
This required the use of the Terminate and Close infrastructure that
was already in place but was not being utilized.
2009-10-01 04:11:32 +01:00
Diva Canto 1eb6f99d19 Create j2k cache directory if it doesn't exist. The Meshmerizer needs it there. 2009-09-30 20:27:40 -07:00
James J Greensky 8e3dd64282 Removed an innefficent List.Contains lookup from UpdateQueue
Changed the underlying data structure used to detected duplicate
in OpenSim.Region.Framework.Scenes.Types.UpdateQueue from a
List to a Dictionary.
2009-09-30 17:53:32 -07:00
John Hurliman cb26878f96 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-09-30 17:51:34 -07:00
Jeff Ames 606e831ff5 Formatting cleanup. 2009-10-01 09:38:36 +09:00
John Hurliman 5dfd2643df * Change the signature of the agent set appearance callback to prevent unnecessary serialization/deserialization of TextureEntry objects and allow TextureEntry to be inspected for missing bakes
* Inspect incoming TextureEntry updates for bakes that do not exist on the simulator and request the missing textures
* Properly handle appearance updates that do not have a TextureEntry set
2009-09-30 15:53:03 -07:00
John Hurliman acfe2d9f4e Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2009-09-30 15:28:23 -07:00
Melanie 041aaaa62c Prevent null data being sent to the decoder 2009-09-30 22:21:22 +01:00
Melanie 79ba96ad6f Limit the number of packet data blocks to 50, as packets are already limited
This is enough to prevent the fast back and forth of allocation and release
the pool is meant to prevent, but not too much so we don't hog memory
2009-09-30 21:33:29 +01:00
Melanie 400abed271 Add RebakeAvatarTexturesPacket to the client view 2009-09-30 21:33:20 +01:00
Melanie 67fefdb5a0 Remove predecode-j2k and it's assoaciated logic 2009-09-30 21:33:00 +01:00
Melanie b0c0d6f9d1 Squelch the debug noise from diva's patch 2009-09-30 20:36:20 +01:00
John Hurliman f56dc5fcda Attempting to improve the robustness of texture decoding by always ignoring LayerInfo.End values and creating guessed default layer boundaries on failed decodes Changed a noisy J2K decode log message from Info to Debug Replacing openjpeg-dotnet decoding with managed CSJ2K decoding. Should be much more reliable, faster, and use less memory
* Re-added openjpeg-dotnet files since they are used elsewhere in OpenSim * Updated prebuild.xml with a reference to CSJ2K

* Renamed IJ2KDecoder and J2KDecoder member names to follow standard naming conventions * Removed j2kDecodeCache cruft and replaced it with the OpenSim cache system * Rewrote the default layer boundary algorithm to use percentages instead of an exponent * Switched from an infinite in-memory cache to an expiring cache (10 minute timeout) * Slightly quieted logging errors for failed texture decodes
2009-09-30 19:26:53 +01:00
Melanie f908e32f62 Revert "Attempting to improve the robustness of texture decoding by always ignoring LayerInfo.End values and creating guessed default layer boundaries on failed decodes Changed a noisy J2K decode log message from Info to Debug"
This reverts commit 22cc31135e.
2009-09-30 19:26:26 +01:00
Melanie 8d35cd9061 Remove more tests that don't apply to this build 2009-09-30 19:25:48 +01:00
Melanie 41e4f3afdb Remove some tests that no longer apply 2009-09-30 19:14:58 +01:00
John Hurliman 22cc31135e Attempting to improve the robustness of texture decoding by always ignoring LayerInfo.End values and creating guessed default layer boundaries on failed decodes Changed a noisy J2K decode log message from Info to Debug
Replacing openjpeg-dotnet decoding with managed CSJ2K decoding. Should be much more reliable, faster, and use less memory

* Re-added openjpeg-dotnet files since they are used elsewhere in OpenSim * Updated prebuild.xml with a reference to CSJ2K
2009-09-30 18:42:45 +01:00
Diva Canto 4bf47fa592 This releases the texture assets from LLImageManager cache, and re-requests them later if the client asks for them again. Needs more testing in texture-rich sims. 2009-09-30 18:41:41 +01:00
Melanie 61d6e42af2 Merge branch 'vehicles' of ssh://opensim@tor.k-grid.com/home/opensim/opensim into vehicles 2009-09-30 17:46:04 +01:00
Kitto Flora 07df0e0ab0 Merge branch '0.6.7-post-fixes' into vehicles 2009-09-30 19:07:18 +02:00
Kitto Flora d43f739cef And another merge issue 2009-09-30 19:05:39 +02:00
Kitto Flora 11750a272e And another 2009-09-30 19:04:06 +02:00
Kitto Flora 6b65eb76d0 Another small change to avoid later merge conflict 2009-09-30 19:01:55 +02:00
Kitto Flora 53fbc970ca Small chaneg to adapt to trunk 2009-09-30 18:58:52 +02:00
opensim 827b0fb199 Commit initial version of KittoFlora's vehicle changes 2009-09-30 18:51:02 +02:00
Jeff Ames ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
dr scofield (aka dirk husemann) 33515c75e4 adding LandDataSerializer (not connected anywhere, work-in-progress)
[hi, there, justin!]
2009-09-30 16:19:39 +02:00
Melanie 1006a2254c Make create user to the Right Thing with regard to salting user passwords 2009-09-30 13:36:03 +01:00
Melanie 377a8b5229 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-09-30 11:17:27 +01:00
Melanie 94aa7e677c Change command help text to show .ini in place of .xml when creating regions 2009-09-30 09:12:43 +01:00
Diva Canto 89016203de Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-29 16:13:31 -07:00
Diva Canto b1d204802f Minor bug fixes. 2009-09-29 16:13:07 -07:00
Justin Clark-Casey (justincc) e9c05cf385 change 0.6.7 candidate branch down to RC1 2009-09-29 21:47:11 +01:00
dr scofield (aka dirk husemann) 09cb8a594b Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into x-opensim 2009-09-29 17:00:02 +02:00
Diva Canto 37a8b2b8b7 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-29 07:56:29 -07:00
Alan M Webb 2a7bedb5e9 This fix addresses the problem where phantom objects do not
always behave like they are phantom, and llVolumeDetect
  seems to operate in a random fashion.

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-29 16:55:03 +02:00
Diva Canto bc892c1d4c A little hack to see if this fixes the problems with ~20% of SOG's becoming phantom after an import to megaregions. 2009-09-29 07:54:56 -07:00
Alan M Webb a43706862c Given the perverse way that strided works, if
there is only one element in the range, it must
  also coincide with the specified stride. The
  existing code assumes that the stride starts at
  start ( which is the expected and most useful
  behavior).

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-29 15:40:41 +02:00
Jeff Ames 77f5e41631 Remove empty CheckSumServer.cs file. 2009-09-29 21:21:53 +09:00
Melanie 691f1e8aa0 Fix loading modules with alternate configurations and ports into ROBUST.
Make all current modules support the configuration name option
2009-09-29 09:56:17 +01:00
Diva Canto 13c6202da9 Fixed a bug that was causing exceptions to the thrown in ROBUST MainServer. 2009-09-29 09:50:18 +01:00
Melanie 1096103d66 Fix loading modules with alternate configurations and ports into ROBUST.
Make all current modules support the configuration name option
2009-09-29 09:44:12 +01:00
Diva Canto 6653a30487 Fixed bug in HG that was causing secondlife:// refs to bomb the client.
Also fiddled a bit more with the initial CAP in the user server.
2009-09-28 20:58:21 -07:00
Diva Canto 95981776dd Fixed bug in Check4096 (HG). 2009-09-28 20:11:10 -07:00
Diva Canto f4e8ac3556 Fixed a bug that was causing exceptions to the thrown in ROBUST MainServer. 2009-09-28 18:53:07 -07:00
Diva Canto a60ed0562c I think I have fixed something that was broken in the scene setup (tests) and that needs to be reflected in all other services setups. But the teleport test still doesn't work. Commenting it for now. 2009-09-28 17:42:35 -07:00
Diva Canto 51d9f7ebd4 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-28 17:35:26 -07:00
Diva Canto 4eca59ec13 Improved the Local grid connector to fetch data from the DB when it doesn't find it in the cache.
Commented out the Standalone teleport test because it's failing, and the scene setup is very confusing. I suspect it may be wrong -- the connectors-as-ISharedRegionModules are being instantiated several times when there are several scenes.
2009-09-28 17:33:34 -07:00
Jeff Ames f00126dc2d Add copyright header. Formatting cleanup. 2009-09-29 08:32:59 +09:00
Melanie 0709149313 Merge branch 'grid-service-redux' 2009-09-28 23:03:47 +01:00
Melanie fe3760e4a2 Merge branch 'master' into 0.6.7-post-fixes
Conflicts:
	OpenSim/Framework/Servers/VersionInfo.cs
2009-09-28 22:57:38 +01:00
Melanie a1aa362866 Allow the notation config_name@port/dll_name:class_name as a handler spec
in OpenSim.Server.ini
This allows things like "8003/AssetServirce.dll local@8004/InventoryService.dll"
The config name is not yet supported by any modules
2009-09-28 22:48:57 +01:00
Diva Canto 276b0a0cbe Forgot a return statement. 2009-09-28 11:17:34 -07:00
Diva Canto 9bdb585a93 Added Protocol versions back, this time in a range model. 2009-09-28 10:56:05 -07:00
Melanie 7cd03abab5 Bump main version to 0.6.8-Dev 2009-09-28 18:41:21 +01:00
Melanie 63c3c7483f Bump version number in post-fixes 2009-09-28 18:38:48 +01:00
Diva Canto 3091e5db9d Fixed bug in user server related to region's serverURI. 2009-09-28 07:53:52 -07:00
Diva Canto 500cd3505a Added RegionSecret to GridRegion, and corresponding saving/retrieval from DB layer. This sounds fishy to me, but it's what's used to make external currency modules work, for now. 2009-09-28 07:20:38 -07:00
Diva Canto 69da82b39f Bug fix in SynchronousRestFormsRequester -- Write instead of WriteLine, which was causing an extra \n to be written into the buffer. 2009-09-28 06:44:57 -07:00
Diva Canto 0f05bbb4a2 Deleted some files that aren't being used anymore. 2009-09-28 05:54:37 -07:00
Melanie 0ed7371f3e Change DocToBytes to return no trailing whitespace. 2009-09-28 13:27:33 +01:00
Diva Canto 73a61a8a32 Fixed small bug in having to deal with RegionInfo's ServerURI, which wasn't being set. 2009-09-27 21:14:31 -07:00
Diva Canto 0766b6dc34 Fixed the connection from User server to GridServer. 2009-09-27 20:44:43 -07:00
Diva Canto e15a9b8484 Fixed an issue with the PresenceModule in "gridmode", introduced by my fixing the notifications of the messaging service in standalone. 2009-09-27 17:01:30 -07:00
Diva Canto b17be045e4 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-27 16:02:19 -07:00
Diva Canto 689eea3bad Guarding the methods under if (m_Enabled) 2009-09-27 15:06:44 -07:00
Melanie 42746e99bd Make the RegionData plugin store the RegionName 2009-09-27 23:02:40 +01:00
Diva Canto cde6b0d5ab Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-27 14:59:43 -07:00
Diva Canto 1980ab3152 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-27 14:39:41 -07:00
Diva Canto c99b363f81 Added missing IHyperlinkService. 2009-09-27 13:59:00 -07:00
Melanie 12640d0824 Prevent manually setting Data["locX"] and Data["locY"], since that would
overwrite the posX and posY members of the structure
2009-09-27 21:58:34 +01:00
Diva Canto 2432cc607e Neighbours cache working. 2009-09-27 13:43:57 -07:00
Melanie b5bf3f87d5 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim
Conflicts:
	OpenSim/Data/MySQL/MySQLRegionData.cs
2009-09-27 21:25:10 +01:00
Melanie 8e091f5903 Add the Migration for the regions table 2009-09-27 21:17:23 +01:00
Diva Canto 5d09c53a1a Unpacking the mess with OtherRegionUp, so we can have a real cache of the neighbours in the grid service modules. 2009-09-27 10:14:10 -07:00
Diva Canto 68e40a87ca Poof! on LocalBackend. CommsManager.GridServices deleted. 2009-09-26 21:29:54 -07:00
Diva Canto 620fa2b772 Poof! on OGS1 GridServices. 2009-09-26 21:21:06 -07:00
Diva Canto 989382352d Poof! on Region.Communications.Hypergrid. Grid code deleted. 2009-09-26 21:14:41 -07:00
Diva Canto f4bf581b96 Moved all HG1 operations to HGGridConnector.cs and HypergridServerConnector.cs/HypergridServiceConnector.cs, away from Region.Communications and HGNetworkServersInfo.
Fixed small bugs with hyperlinked regions' map positions.
2009-09-26 21:00:51 -07:00
Diva Canto dcfd08b8dd Fixed a bug with link-region. 2009-09-26 11:01:18 -07:00
Diva Canto b5163889b9 Fixed the order of params to GetRegionRange. 2009-09-26 10:30:45 -07:00
Diva Canto 368ae02dc9 Corrected the port number to 8001 in the test client and grid ini. 2009-09-26 10:18:22 -07:00
Diva Canto 632bb71262 Fixed MapBlocks bug, wrong order of arguments. First version that seems completely functional.
Also fixed the notification of the message server in standalone -- that server doesn't usually exist.
2009-09-26 08:49:48 -07:00
Diva Canto d39e67d5b2 More redirects to HGGridConnector-as-HyperlinkService. 2009-09-26 08:06:14 -07:00
Diva Canto 7253a9453e Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-26 07:49:04 -07:00
Diva Canto 5757afe766 First pass at the heart surgery for grid services. Compiles and runs minimally. A few bugs to catch now. 2009-09-26 07:48:21 -07:00
Teravus Ovares (Dan Olivares) a7f3d01f8a Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-09-25 16:06:40 -04:00
Teravus Ovares (Dan Olivares) 2bb513329a * Does a full battery of tests to ensure that the object isn't an attachment before border crossing
* Fixes 'Inconsistent Attachment State' when teleporting into another region besides the SW most region slot on a MegaRegion.
* Fixes a host of other unintended attachment border cross edge cases that lead to Inconsistent attachment state.
2009-09-25 16:06:04 -04:00
dahlia fb2cabd6b3 corrections to viewerMode AddPos() 2009-09-25 13:01:48 -07:00
Teravus Ovares (Dan Olivares) 0a0b532270 * Fixes teleporting within megaregions on HG enabled regions. You can teleport around now. (but it still doesn't fix the inconsistent attachment state when teleporting into region slots that are not the south west region on megaregions) 2009-09-25 15:31:19 -04:00
Justin Clark-Casey (justincc) 2995d87d75 minor: remove some mono compiler warnings 2009-09-25 19:29:40 +01:00
Justin Clark-Casey (justincc) 0bdf75637f Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-09-25 19:19:01 +01:00
Diva Canto eed8a61559 More small changes to FlotsamAssetCache as per mcortez' request. 2009-09-25 08:47:45 -07:00
Diva Canto 902279f0fd Moved the property RegionLoginsEnabled from GridComms to the Scene -- not the scene itself but SceneCommunicationService, for now. Beginning to clear the code from using Region.Communications. grid stuff. 2009-09-25 08:39:09 -07:00
Justin Clark-Casey (justincc) 9249c026f2 Don't preserve full user profile details within iars for now
This information was not being used in the load process
2009-09-25 16:22:43 +01:00
Diva Canto 295868033f Better error handling on the client-side grid connector. 2009-09-25 07:47:58 -07:00
Diva Canto b2772b3a2d Added GridForm.html in Tests/Clients/Grid that shows how to interact with a grid server via regular Web forms. May be good for developing administrative tools. 2009-09-25 07:38:05 -07:00
Justin Clark-Casey (justincc) 613cb417c0 add control files containing version info to iars 2009-09-25 14:52:53 +01:00
Justin Clark-Casey (justincc) 730458be1f minor: remove some mono compiler warnings 2009-09-25 14:31:29 +01:00
Diva Canto 52e477b41f Better guards on RegisterRegion in GridService.
Added serverPort to the fields that get stored (I think this is the UDP port).
2009-09-25 06:02:41 -07:00
Diva Canto eb0aa6a7f4 Make the grid client deregister the test regions at the end, so that they don't stay in the DB. 2009-09-24 18:48:38 -07:00
Diva Canto b6824c495c Deleted the meaningless console commands on the GridService. Will need to add meaningful ones. 2009-09-24 18:28:38 -07:00
Diva Canto a792933cba Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-24 18:25:28 -07:00
Diva Canto 6a5d7650d0 All tests pass for MySQL/MySQLRegionData.
Added OpenSim.GridServer.ini.example that I have been using for testing the ROBUST grid service with the GridClient.
2009-09-24 18:23:55 -07:00
Dan Lake 1b2828f5d8 Meshmerizer stores dictionary of unique Meshes keyed on construction parameters. CreateMesh() returns a Mesh from the dictionary or creates a new Mesh if it has not been created before. Meshes are never purged from the dictionary. The raw Mesh data is discarded once the memory is pinned for ODE use. All copies of the same prim/mesh use the same pinned memory. ONLY IMPLEMENTED AND TESTED WITH MESHMERIZER AND ODE
Signed-off-by: dahlia <dahliaTrimble@gmailDotCom>
2009-09-24 18:20:59 -07:00
dahlia daffb69174 modify BulletDotNETPrim.cs in preparation for Mantis #4181 2009-09-24 18:16:29 -07:00
Diva Canto 1faaa0a43a GridServerPostHandler finished. GridClient tests all work. More guards on getting parameters and replies over the wire. 2009-09-24 15:30:00 -07:00
Diva Canto dd3d52ae1f Added test GridClient, which allowed me to remove a few bugs out of the new code. 2009-09-24 13:33:58 -07:00
Justin Clark-Casey (justincc) ad753d784c Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-09-24 17:35:03 +01:00
Justin Clark-Casey (justincc) 784e78a9e8 minor: make rest (not comm) modules less noisy if they are disabled 2009-09-24 17:21:47 +01:00
Justin Clark-Casey (justincc) e1abc3d4c4 re-enable registration of user service authentication method I accidentally disabled a few commits ago
load/save iar on a grid should now work, provided that the user service is this revision or newer
2009-09-24 15:22:47 +01:00
Justin Clark-Casey (justincc) f62b5e6cec Produce a different error message if the user service does not have the authenticate method available 2009-09-24 15:19:47 +01:00
Justin Clark-Casey (justincc) e67341f24c minor: replace xmlprc 'no method found' magic number with constant from xmlrpc library 2009-09-24 15:02:55 +01:00
Justin Clark-Casey (justincc) 7870152d23 Allow load/save iar password checks to be done in grid mode
This should allow load/save iar to work for grid mode as long as the grid user service is later than this revision
Grid services of earlier revisions will always erroneously report incorrect password.  This will be addressed shortly.
2009-09-24 14:54:12 +01:00
Diva Canto 2824bbc47b Changed name of the hyperlink XMLRPC method to linkk-region, so that it doesn't conflict with the existing one. 2009-09-24 05:48:35 -07:00
Adam Frisby ca69fac13e * Send Updated Information Packet to Clients after updating estate settings. 2009-09-24 22:02:29 +10:00
Adam Frisby 8605c5d2eb * Establishing why new console commands fail to work. >_> 2009-09-24 21:46:41 +10:00
Adam Frisby 57429423bb * Fixing typo. 2009-09-24 21:29:57 +10:00
Adam Frisby 71a4b02c7e * Minor commit, added two new math utility functions. 2009-09-24 20:56:01 +10:00
Adam Frisby aca9fd182e * Added two new commands to EstateManagementModule
* Also, I hate git.
2009-09-24 20:27:11 +10:00
Diva Canto 1260c81a9c More tests. Seems to be working.
Grid connector modules are enabled for standalones only, but nothing in the simulator uses them yet, so it's safe to go in.
2009-09-23 20:51:04 -07:00
Diva Canto fd8fb7735b First test passes -- regions being registered and retrieved correctly in Data.Null. 2009-09-23 20:39:25 -07:00
Diva Canto 3c19bd5142 Unit tests for the grid service. Yey! 2009-09-23 20:35:16 -07:00
Diva Canto 67276589c8 Changed IGridService to use the new GridRegion data structure instead of old SimpleRegionInfo.
Added grid configs to standalones.
2009-09-23 17:20:07 -07:00
Diva Canto b8f039897b Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-23 15:40:35 -07:00
Teravus Ovares (Dan Olivares) c592a60f46 Fix endlines on UrlModule.cs 2009-09-23 15:00:18 -04:00
Teravus Ovares (Dan Olivares) 9c2ffa8f2e * fix endlines in LSL_api.cs 2009-09-23 14:55:22 -04:00
Justin Clark-Casey (justincc) eb892e0545 Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-09-23 18:42:20 +01:00
Diva Canto 35deff7ec4 Modules active. Tested HGGridConnector in standalone only for now. Modules commands work. 2009-09-23 09:27:01 -07:00
Justin Clark-Casey (justincc) 03438f7d44 minor: remove double initialization of user appearance module in Grid.UserServer.Main 2009-09-23 16:24:26 +01:00
Diva Canto 486a9a5b61 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-23 07:54:13 -07:00
Alan M Webb b7265abfae Added delay loop to give a newly created assembly time to appear. On
Linux (as an example), it is possible for the existence check to fail
because the file is not yet recognized by the file system. Although
the loop has a 250mS delay, in practise, the existence test in the for
loop is successful and no delay is introduced.

Next, this takes care of the two, unpredictable, situations where a
script fails to compile. The first is caused by an occasional SEGV in
the underlying mono VM while mcs is running, the second is caused by
file system latency.

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-23 14:49:34 +02:00
Diva Canto 882d2c9cc3 Added hg console commands to the module.
Added the IN connector module for link-region and corresponding handler to be used in the regions only. No service as such is needed.
This will replace the current link-region machinery. Compiles but not tested.
2009-09-22 20:25:00 -07:00
Adam Frisby 5dc3e560d3 * Makes SimulatorEnable messages 'reliable' and subject to redelivery. 2009-09-23 10:30:18 +10:00
Diva Canto ffd30b8ac3 Moved RegionName from RegionInfo to SimpleRegionInfo. 2009-09-22 14:46:05 -07:00
Diva Canto 0fc2b73e7b Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-22 14:15:53 -07:00
Diva Canto 34f4738159 Added HGGridConnector and related code. 2009-09-22 11:58:40 -07:00
Melanie 97c18caa76 Thank you, Intari, for a patch that implements the missing pieces of
Http-in and makes the host name for URL generation configurable.
Applied with changes:
llGetSimulatorHostname was not changed, because the change breaks
existing behavior and carries a data exposure risk. That value needs
to be configurable, the proposed fixed change is not acceptable.
2009-09-22 17:04:34 +01:00
Melanie dafe5bf05f Completely remove the prior implementation of the request event handling
on poll handlers. Introduce a new delegate on the PollServiceEventArgs that
allow access to the request headers and body.
2009-09-22 06:19:02 +01:00
Melanie c5be401d46 Remove support for executing a handler on poll. It caused other issues 2009-09-22 05:24:22 +01:00
Melanie 06871d51dd Disable the handler execution for poll services until the ramifications
can be studied
2009-09-22 05:13:50 +01:00
Diva Canto a9ced0fe79 Added Remote grid connector module. 2009-09-21 19:33:56 -07:00
Diva Canto ae07b220c6 Changed position methods so that they assume the input params are in meters. 2009-09-21 17:16:30 -07:00
Melanie b6b8a18d37 Add the headers collection to the keysvals for HTT requests 2009-09-21 20:21:01 +01:00
Melanie 61aaf3532a Add X-PollServiceID pseudo-header to the request handling for polls 2009-09-21 20:10:26 +01:00
Melanie 69b76acce1 Make the poll service handler call the handler method on incoming requests. 2009-09-21 19:46:29 +01:00
Melanie 5511c62580 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-09-21 18:12:12 +01:00
Diva Canto 6d0e7b6a6c Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-21 11:05:20 -07:00
Diva Canto 390137d540 Added grid handler and grid remote connector. 2009-09-21 11:05:01 -07:00
Melanie bc9e4cfd96 Add a RequestID (UUID.Random()) to the PollRequest and pass it to all
even hander delegates.
2009-09-21 18:11:40 +01:00
Melanie 04170521f0 Add a UUID param to NoEvents in PollServiceEventArgs to make it more generic 2009-09-21 14:59:31 +01:00
Melanie 2a1b5e3540 A small fix for remote console to accommodate PollServiceArgs behavior a
bit better
2009-09-21 14:14:22 +01:00
Diva Canto 9027d4b490 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-20 08:32:51 -07:00
Melanie f6410882a5 Finish the (untested) authentication connector 2009-09-19 18:18:47 +01:00
Melanie 0c364ee285 Complete the first authenticator method 2009-09-19 18:14:22 +01:00
Melanie 2f624800d3 Adding the deserializer for server form/xml replies 2009-09-19 18:06:25 +01:00
Melanie 2d9d25b367 Add the skeleton of the authentication connector and the forms data requester 2009-09-19 17:33:57 +01:00
Melanie 97ebdd4607 Adding Xml serialization of Dictionary<string, object> where object
is either another Dictionary<string, object> or a value that is
convertible to a string.
2009-09-19 16:57:15 +01:00
Diva Canto 462e3a4464 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-19 07:37:19 -07:00
BlueWall (James Hughes) d835485a1f Updatate llOpenRemoteDataChannel to provide the external hostname configured in the Regions.ini (or xml) to the XmlRpcGridRouterModule 2009-09-19 08:16:10 +01:00
Diva Canto 15d6bb4ce5 Reverted the order of reading configs in GridServiceBase. 2009-09-18 20:09:43 -07:00
Diva Canto 66f8166bd0 First pass at LocalGridServiceConnector. Nothing of this is used by the simulator yet. 2009-09-18 20:01:33 -07:00
Diva Canto 8f133cb46b Renamed the project lslc to OpenSim.Tools.lslc to conform to the naming conventions so far. Added copyright to it. 2009-09-18 19:28:58 -07:00
Diva Canto 4a55ff88c0 Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim 2009-09-18 19:17:02 -07:00
Diva Canto e736273815 First pass at the grid service. 2009-09-18 19:16:30 -07:00
Justin Clark-Casey (justincc) 967cbde055 correct off-by-one error in save iar command handling 2009-09-18 22:25:32 +01:00
Justin Clark-Casey (justincc) 33ea86374a provide intelligble warning of why load/save iar doesn't work on grid mode, pending a fix 2009-09-18 22:22:00 +01:00
Michael Cortez 4eb07232e0 Group Membership information is sent out from two different locations, refactored out the filtered membership list code and used it in both locations. 2009-09-18 20:54:03 +01:00
Michael Cortez 65b9084c65 Add a little debugging for filtered groups lists based on requester 2009-09-18 20:54:01 +01:00
Michael Cortez 3b511d5138 Try to filter the groups list returns for User A, when sending to User B, based on User A's preferences for ShowInProfile. 2009-09-18 20:53:58 +01:00
Michael Cortez 247fdd1a4d Add additional instrumentation so that when there is an xmlrpc call failure, the actual xml that was returned from the groups service can be logged. 2009-09-18 20:53:56 +01:00
Michael Cortez 841cd69af7 Remove debug messages from some areas that have been highly tested, and debug info is no longer nessesary. 2009-09-18 20:53:53 +01:00
Michael Cortez 0e07a7ef10 Adding additional debug to output the group powers specified when updating a group role. This will be used to solve some issues with the Group Powers enum. 2009-09-18 20:53:50 +01:00
Michael Cortez 61699275ed Add additional debugging to help track down bug with notices not going to group owner/founder. 2009-09-18 20:53:47 +01:00
Michael Cortez 0cb012aae5 Revert "Thank you, mcortez, for a patch to address showing users in group list"
This reverts commit 69ef95693a.
2009-09-18 20:53:44 +01:00
Rob Smart 4f3975f04e addition of a new script function osSetParcelSIPAddress(string SIPAddress), now including iVoiceModule
This patch allows the land owner to dynamically set the SIP address of a particular land parcel from script. This allows predetermined SIP addresses to be used, making it easier to allow non OpenSim users to join a regions voice channel.

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-18 15:47:15 +02:00
nlin 56edbe9b60 Alternate algorithm for fixing avatar capsule tilt (Mantis #2905)
Eliminate dynamic capsule wobble. Instead introduce a small, fixed
tilt, and allow the tilt to rotate with the avatar while moving; the
tilt always faces away from the direction of avatar movement. The
rotation while moving should eliminate direction-dependent behavior
(e.g. only being able to climb on top of prims from certain directions).

Falling animation is still too frequently invoked.

Ideally the tilt should be completely eliminated, but doing so
currently causes the avatar to fall through the terrain.
2009-09-18 11:39:08 +09:00
Melanie 6461243e7c Remove the methods for full inventory fetch from the connector. Remove tests
for the old, removed asset handlers
2009-09-17 23:55:06 +01:00
Melanie 6779abf7f5 Remove The legacy inventory and asset servers. Bump interface version to 6 2009-09-17 23:39:58 +01:00
Alan M Webb 88294d9ebf While running a test case I had written to pursue problems with
llDie() not always completely working, I discovered I was
  getting a lot (60+ over 6000 iterations of the test case)
  null pointer exceptions in various physics related checks in
  SceneObjectPart. It was apparent that the (frequent) checks for
  PhysActor being non-null is an insufficient protection in a
  highly asynchronous environment. The null reference exceptions
  are one example of failure, but it could also happen that a
  sequence started with one instance of a PhysicsActor might
  finish with another?
  Anyway, I have implemented a safer mechanism that should
  stop the errors. I re-ran my test case with the fix in place,
  and completed nearly 1000 iterations without a single occurrence.

  SceneObjectPart is seriously in need of rejigging, if not for
  this reason, then for its ridiculous size.

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-17 17:49:13 +02:00
Melanie 69ef95693a Thank you, mcortez, for a patch to address showing users in group list
Removed patch 0005, which was unrelated and likely accidental, and further
didn't apply.
2009-09-17 15:38:17 +01:00
John Hurliman 39842eb4af * Adding Scale to EntityBase * Fixing the incorrect initialization of EntityBase.Rotation * Removed SceneObjectGroup.GroupRotation and added overrides for Scale/Rotation/Velocity 2009-09-16 17:17:40 -07:00
John Hurliman f42d085ab1 SceneObjectGroup cleanup. Removes the default constructor and unnecessary null checks on m_rootPart 2009-09-16 15:06:08 -07:00
Melanie df7904c58b Add the Null storage implementation for the RegionData service. Standalones
have no regions table, so this is needed
2009-09-16 18:20:08 +01:00
Melanie 5068404505 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim 2009-09-16 17:57:31 +01:00
Justin Clark-Casey (justincc) 077d01c225 switch default physics engine to ODE and default meshmerizer to Meshmerizer in code and in OpenSim.ini.example 2009-09-16 18:44:55 +01:00
Justin Clark-Casey (justincc) a4c093469a Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-09-16 18:21:46 +01:00
Justin Clark-Casey (justincc) 35260faead on iar save/load, let the user know if they put in the wrong password
refactor GetUserInfo() to eliminate copypasta
2009-09-16 18:20:55 +01:00
Rob Smart 281ad1251c updated the IAuthorizationService interface so that a message is passed back and can be displayed at the client when an avatar is denied access to a region 2009-09-16 10:04:07 -07:00
Melanie a251864e64 Add the migration for scoping grid data 2009-09-16 17:56:24 +01:00
Melanie 90a4d4f9f9 Adding the MySQL RegionData service. 2009-09-16 17:52:16 +01:00
Melanie 8622f205d7 Database interface tot the new region store 2009-09-16 17:05:35 +01:00
Alan M Webb 9cbb865985 This fix allows you to configure a script-to-console-log channel
association. Then, whenever there is an llSay to that channel,
  the message is directed to the OpenSim console log (and NOT
  forwarded to the client). This is a great way to capture scripting
  events to the log. To enable, add ScriptConsoleChannel = -xxx to
  the ScriptEngine parameters in the .ini file. Note that the
  message is written using Console.WriteLine rather than
  the rather more fragile log4net service. The console channel is
  also not subjected to the 1024 character limit imposed on regular
  say traffic.

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-16 17:07:53 +02:00
Alan M Webb d4c98ddffc This fix adds a stand-alone compilation environment
for OpenSIm scripts. It makes it very easy to address
  coding issues before going in-world to try a script
  out. This is a HUGE time saver if you're doing
  anything significant with scripts.

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-16 16:43:51 +02:00
Alan M Webb 3b1ef2bfd2 This fixes a boundary case error in the strided list
implementation. If the range included only a single item
  an empty list was always returned (has no-one been using
  this function?)

Signed-off-by: dr scofield (aka dirk husemann) <drscofield@xyzzyxyzzy.net>
2009-09-16 16:38:29 +02:00
Alan M Webb 3403ae81e8 Stop a loaded OAR from generating on_rez events. This brings
the OAR loader in line with region restart (and the correct
  behavior).
2009-09-16 16:29:52 +02:00
Melanie c5455d4fe7 And another go 2009-09-15 08:24:51 +01:00
Melanie cec296543c Attempt to fix the tests 2009-09-15 08:12:53 +01:00
Melanie 7c925744f6 Some OSGrid specific changes, please use this or later for OSGrid use 2009-09-15 07:55:29 +01:00
Teravus Ovares (Dan Olivares) 1ad35f65b3 Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-09-14 16:30:36 -04:00
Teravus Ovares (Dan Olivares) dc925416d7 * fix missing lock on XMLRPC GroupsModule 2009-09-14 16:30:14 -04:00
Justin Clark-Casey (justincc) a964bc3ca4 Apply http://opensimulator.org/mantis/view.php?id=4142
Re-enable XMLRPC scripting calls
Moves XMLRPC scripting setup to a separate section
Thanks Fly-Man-
2009-09-14 18:31:34 +01:00
Justin Clark-Casey (justincc) 5a64ca4642 label load and save iar commands as experimental. 2009-09-14 16:57:47 +01:00
Justin Clark-Casey (justincc) dd4d70eafe re-enable load and save iar commands 2009-09-14 16:54:36 +01:00
dr scofield (aka dirk husemann) 19c5c8b98d fix to preserve UTF8 encoding in saved script state. 2009-09-14 16:14:59 +02:00
Teravus Ovares (Dan Olivares) feccfe4096 * Add the RegionCombinerModule back
* Yay anonymous delegate in an anonymous delegate.
2009-09-13 19:09:48 -04:00
Teravus Ovares (Dan Olivares) 3a9e1cf0a3 Temporarily removing the RegionCombinerModule to debug a mono assert on linux 2009-09-13 18:43:20 -04:00
Teravus Ovares (Dan Olivares) ed475f21ee * Use the BeginInvoke methodology instead of the FireAndForget methodology to try to mitigate a mono assert. Same functionality done a different way. 2009-09-13 18:28:45 -04:00
Teravus Ovares (Dan Olivares) 3562d75c17 Merge branch 'master' of ssh://MyConnection/var/git/opensim 2009-09-13 18:12:44 -04:00