Commit Graph

2764 Commits (913bf95c1cf8bb9dbe83b37c07f7a17bb7c6b8a4)

Author SHA1 Message Date
John Hurliman 7665aad002 * Adds CreatorID to asset metadata. This is just the plumbing to support CreatorID, it doesn't modify database backends or OAR files to support storing/loading it 2010-02-22 13:27:17 -08:00
dahlia e635570cf3 minor formatting tweak - try to trigger a build on panda 2010-02-22 02:13:01 -08:00
dahlia 03706e3f08 add a constructor for PrimitiveBaseShape from a OpenMetaverse Primitive 2010-02-22 01:15:12 -08:00
Melanie 1f45e6c649 Merge branch 'master' into presence-refactor
This brings presence-refactor up to master again
2010-02-22 03:00:59 +00:00
Diva Canto bb171717ce Deleted obsolete files in the Data layer. Compiles. 2010-02-21 15:38:52 -08:00
John Hurliman 845a390e93 * Added a sanity check for missing asset data in LLClientView
* Moved the SL asset type to content type conversion methods from ServerUtils to OpenSim.Framework.SLUtil
* Linked content type to asset type in AssetMetadata
2010-02-20 16:21:13 -08:00
Melanie 842b68eeff Change handling of the SYSTEMIP constant to be more sane.
This will now choose the first network interface IP address, or the loopback
interface if no external interfaces are found. It will log the IP address
used as [NETWORK]: Using x.x.x.x for SYSTEMIP.
2010-02-18 04:19:33 +00:00
Melanie 92f8f3e9d2 Revert "change "SYSTEMIP" to "localhost" in the create region console command prompt" after speaking to Dahlia
This reverts commit c62a6adb2b.
2010-02-18 03:31:06 +00:00
dahlia c62a6adb2b change "SYSTEMIP" to "localhost" in the create region console command prompt 2010-02-17 19:56:30 -08:00
Jeff Ames af265e001d Formatting cleanup. 2010-02-15 19:21:56 +09:00
Melanie c033223c63 Merge branch 'master' into presence-refactor 2010-02-15 00:20:48 +00:00
Revolution 9821c4f566 Revolution is on the roll again! :)
Fixes: Undo, T-pose of others on login, modifiedBulletX works again, feet now stand on the ground instead of in the ground, adds checks to CombatModule. Adds: Redo, Land Undo, checks to agentUpdate (so one can not fall off of a region), more vehicle parts. Finishes almost all of LSL (1 function left, 2 events).

Direct flames and kudos to Revolution, please

Signed-off-by: Melanie <melanie@t-data.com>
2010-02-14 22:18:46 +00:00
Justin Clark-Casey (justincc) 00800c59d3 Apply last two patches from http://opensimulator.org/mantis/view.php?id=3522
These patch should allow people using systems that do not have their locale set to En_US or similar to use OpenSim without suffering effects such as being a million miles up in the air on login.
The problem was caused by parsing strings without forcing that parse to be En_US (hence different decimal and digit group symbols were causing problems).
Thanks very much to VikingErik for doing the legwork on this fix and phacelia for spotting it in the first place.
2010-02-12 23:13:35 +00:00
Justin Clark-Casey (justincc) 802a969267 Fix http://opensimulator.org/mantis/view.php?id=4224
This resolves the problem where eyes and hair would turn white on standalone configurations
When a client receives body part information, for some insane reason or other it always ends up uploading this back to the server and then immediately re-requesting it.
This should have been okay since we stored that asset in cache.  However, the standalone asset service connector was not checking this cache properly, so every time the client made the request for the asset it has just loaded it would get a big fat null back in the face, causing it to make clothes and hair white.
This bug did not affect grids since they use a different service connector.
2010-02-12 21:32:03 +00:00
Diva Canto 35925942fc Deleted unused class that came back because of merge conflicts. 2010-02-08 15:02:50 -08:00
Melanie baaf660511 Merge branch 'master' into presence-refactor
This was a large, heavily conflicted merge and things MAY have got broken.
Please check!
2010-02-08 15:53:38 +00:00
Diva Canto 041594ed07 Cleaned up configuration. 'gridmode' and 'hypergrid' are gone, as well as lots of other obsolete configs. 2010-01-31 13:01:23 -08:00
Diva Canto 3112b04c85 Changed an error message to w warning message. 2010-01-30 16:18:38 -08:00
Diva Canto 5001f61c08 * HGGridConnector is no longer necessary.
* Handle logout properly. This needed an addition to IClientAPI, because of how the logout packet is currently being handled -- the agent is being removed from the scene before the different event handlers are executed, which is broken.
2010-01-29 18:59:41 -08:00
Diva Canto 0c81966c0a Works for grid login. 2010-01-29 09:12:22 -08:00
Diva Canto 00f7d622cb HG 1.5 is in place. Tested in standalone only. 2010-01-28 19:19:42 -08:00
Diva Canto 7c00469cd2 Added ExternalName config on Gatekeeper. 2010-01-27 08:00:29 -08:00
Teravus Ovares (Dan Olivares) 910d2177ad * .. More Endlines... 2010-01-26 12:49:53 -05:00
Teravus Ovares (Dan Olivares) ccf7bfe09b * a few more endlines.. 2010-01-26 12:44:42 -05:00
Adam Frisby 19d4867af7 * Quick fix to Remote Console session ID handling. 2010-01-26 07:40:33 +11:00
mbowman c211a120a5 Console output no longer requires loglevel to be set to info; you can run the simulator with log level WARN or ERROR and see the output of console commands
Signed-off-by: Melanie <melanie@t-data.com>
2010-01-20 00:16:08 +00:00
Melanie 5908b8ed7c Change a member of the friendslist module to better reflect the client side
data storage paradigm of the friends list and avoid repeated, unneccessary
fetches of the entire friends list.
2010-01-19 11:33:42 +00:00
Diva Canto b2e6ec9e12 Agent gets there through the Gatekeeper, but still a few quirks to fix. 2010-01-17 18:04:55 -08:00
Diva Canto a7309d90da * Added ServiceURLs to AgentCircuitData.
* Fixed a configuration buglet introduced yesterday in StandaloneHypergrid.ini.
2010-01-17 08:40:05 -08:00
Melanie 10f8c2ea9b Merge branch 'master' into presence-refactor
This merge was very conflicted. I think I got them all, but I can't be sure.
I had to merge to master or risk divergence to the point of unmergeability.
2010-01-16 00:05:08 +00:00
dahlia 88d2adc93c add an agent position field to AgentUpdateArgs for use by some non-LL clients 2010-01-14 02:16:40 -08:00
Diva Canto 4de82891a9 Bug in Teleport fixed -- Appearance was missing from AgentCircuitData. 2010-01-13 09:34:08 -08:00
Diva Canto 66920a9047 Fixed more appearance woes that showed up using remote connectors. Appearance is now being passed with AgentCircuitData, as it should be. 2010-01-12 09:22:58 -08:00
Diva Canto c5ea783526 OpenSim/Framework/Communications/Cache deleted. LibraryRootFolder deleted. 2010-01-11 07:51:33 -08:00
Diva Canto 001d369568 CommunicationsManager deleted. 2010-01-11 07:45:47 -08:00
Diva Canto 751e70af78 NetworkServersInfo removed from CommsManager. 2010-01-10 21:37:36 -08:00
Diva Canto cddd48aeea Some more unnecessary things deleted in Framework.Communications. 2010-01-10 21:00:03 -08:00
Diva Canto dc4bbf6065 All Framework.Communications.Clients and Framework.Communications.Services deleted, including old LoginService. 2010-01-10 20:29:09 -08:00
Diva Canto 0c2946031b CommunicationsManager is practically empty. Only NetworkServersInfo is there. 2010-01-10 19:42:36 -08:00
Melanie e966e51b89 Add a console_port setting to let the rest console use a different port
from the region server
2010-01-11 03:29:24 +00:00
Diva Canto 49618dc102 Moved GridInfo service from where it was to Handlers/Grid 2010-01-10 19:19:34 -08:00
Diva Canto 68b7307f4f Forgot to remove 'using' 2010-01-10 16:34:01 -08:00
Diva Canto 53e83e5dbb * Starting to clean the house...
* Fixed circular dependency
2010-01-10 16:20:59 -08:00
Melanie 3c90d834ea Remove all references to master avatar, replacing with estate owner where
appropriate. This changes the behavior of the REST plugins and RemoteAdmin's
region creation process.
2010-01-10 22:41:42 +00:00
Diva Canto 1e1b2ab221 * OMG! All but one references to UserProfileCacheService have been rerouted!
* HG is seriously broken here
* Compiles. Untested.
2010-01-10 10:40:07 -08:00
Melanie 81d5a4b6d8 Remove "login disable", "login enable" and "login status" commands. 2010-01-10 03:03:18 +00:00
Diva Canto 25fdbd6cbc Less refs to UserProfileCacheService. Compiles but likely doesn't run. 2010-01-09 09:09:32 -08:00
Melanie 332463ca94 Fix up the weird Lindenish "setaccess" message. Talk about strange.... 2010-01-09 15:28:52 +00:00
Melanie 063f106cbb Add functionality to estate "Allowed Users" and "Allowed Groups". Allowed users
will be honored now, while allowed groups will not. This requires additional
groups module integration work
2010-01-09 14:17:44 +00:00
Diva Canto 6b60f3cce5 A few more inches... Old friends things removed. Less references to UserProfileService. 2010-01-08 20:31:29 -08:00
Revolution c76c80a28a Adds IClientAPI voids for GroupProposals.
Signed-off-by: Melanie <melanie@t-data.com>
2010-01-08 18:27:49 +00:00
Diva Canto b63405c1a7 Inching ahead... This compiles, but very likely does not run. 2010-01-08 10:43:34 -08:00
Justin Clark-Casey (justincc) 22b1ffdc6c Fix repeated ArgumentOutOfRangeException when a local OpenSim console is resized under mono
May fix mantises 3186, 3270, 4022, 4238
2010-01-08 14:45:40 +00:00
Melanie 17efecd6c5 Moving the new group data structures out of LLClientView into GroupData.
The new methods are still not in IClientAPI, so some work remains to be done.
2010-01-08 05:29:29 +00:00
Diva Canto f11a97f12d * Finished SimulationServiceConnector
* Started rerouting calls to UserService.
* Compiles. May run.
2010-01-07 15:53:55 -08:00
Revolution b67470af91 Fixes the newly added packets as per Melanie's request.
Provisionally applied to fix the naming. Signatures are still subject to change.

Signed-off-by: Melanie <melanie@t-data.com>
2010-01-07 15:09:13 +00:00
Melanie 7f960cd595 Merge branch 'master' into presence-refactor 2010-01-04 21:41:33 +00:00
Jeff Ames 70d5b1c34c Formatting cleanup. Add copyright headers. 2010-01-04 06:17:30 +09:00
Melanie 872387d278 Merge branch 'master' into presence-refactor 2009-12-31 23:30:41 +00:00
Melanie 004c751a1b Whitespace cleanup (changed hard tabs to 4 spaces) 2009-12-31 21:36:04 +00:00
Revolution 234d4e1105 Adds tons of packets.
Applied with change: Changed spelling to Summary (from Summery)

Signed-off-by: Melanie <melanie@t-data.com>
2009-12-31 21:24:56 +00:00
Diva Canto f4efa325bb More progress on both the Simulation service and the Login service. Both still unfinished. 2009-12-31 11:42:33 -08:00
Diva Canto a8901a40f4 Simulation handlers (agents & objects) completed. 2009-12-31 09:25:16 -08:00
Diva Canto b29ae72460 First pass at the new login service. Still incomplete, but doesn't disrupt the existing code. 2009-12-30 21:00:16 -08:00
Melanie 0b5cdc539c Change teleports so the TeleportFlags are sent to the destination sim. It
can now determine if a connection is from login, teleport or crossing.
Needed for a meaningful banlines implementation
2009-12-29 18:35:06 +00:00
Melanie 88b3b98811 Add AvatarInterestsReply 2009-12-26 04:12:51 +00:00
Diva Canto c27aa3749c Change in how the Library returns its descendant folders, so that it includes folders added after the initial load off the file system, by other mechanisms. 2009-12-23 11:45:39 -08:00
dr scofield (aka dirk husemann) 9c294c5663 - commented out unused method ConvertIHttpClientContextToOSHttp 2009-12-23 18:33:54 +01:00
Melanie e68c7a1f23 Add missing file 2009-12-22 05:08:15 +00:00
root 05e8b4e72c Add a data path for error messages
Committed from my other box where git is not configured properly

Signed-off-by: Melanie <melanie@t-data.com>
2009-12-22 04:55:43 +00:00
Diva Canto 68187f7245 Bug fix: in standalone, HGInventoryBroker needs to get the local inventory server URL from NetworkServersInfo. 2009-12-21 07:44:17 -08:00
Diva Canto c0a8c2e707 Making the library read the item's flag, so that clothing items can have the proper icons. 2009-12-21 06:58:21 -08:00
Justin Clark-Casey (justincc) 87e9062862 Make sure that we catch and display any exceptions that get right to the top of our incoming http request handling stack 2009-12-15 16:34:27 +00:00
Justin Clark-Casey (justincc) 57d60a95a2 minor: make logging messages consistent in BaseHttpServer 2009-12-15 16:23:57 +00:00
Justin Clark-Casey (justincc) ffff12f7c1 Change default grid and inventory service ports in ConfigSettings to the ROBUST default of 8003 2009-12-15 15:37:03 +00:00
Adam Frisby 963cf25813 * Implements OSSL function: osGetSimulatorMemory - returns the current amount of memory allocated to the simulator process (Moderate Threat Level).
* Cleans redundant information out of the Simulator Version. Versions now look like:
"OpenSimulator 0.6.9(dev) Unix/Mono"
* [Minor] additional log info for MySQLInventoryData
2009-12-13 03:04:16 +11:00
Kunnis d89f3e9811 Getting rid of SimpleRegionInfo and SerializableRegionInfo per Mel
Signed-off-by: Melanie <melanie@t-data.com>
2009-12-12 04:44:32 +00:00
Melanie 83ca7db4b8 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2009-12-12 04:14:12 +00:00
Kunnis 62ec60ca76 Getting rid of a bunch of old classes, that are likely left over from the ROBUST change.
Signed-off-by: Melanie <melanie@t-data.com>
2009-12-12 04:13:39 +00:00
Diva Canto d20fe7bfdd A couple of more sanity guards, but this won't fix things when user profile fetching is borked. 2009-12-11 20:06:42 -08:00
Diva Canto 5f0478c4c4 Fix to make [bad] tests happy. 2009-12-11 08:28:24 -08:00
Diva Canto decd51f081 Attempt at fixing mantis #4411. 2009-12-11 08:11:26 -08:00
Kunnis 4c61fcfc40 Getting rid of the dead field RootInventoryFolderId on UserProfileData, It's not even stored in mysql.
Signed-off-by: Melanie <melanie@t-data.com>
2009-12-06 03:57:15 +00:00
Teravus Ovares (Dan Olivares) 8e089b6d8d * Fix line endings in BaseHttpServer.cs 2009-12-05 13:23:05 -05:00
Justin Clark-Casey (justincc) 504bfd87d5 if an xml rpc method throws an exception, log as an error to the console as well as returning the exception to the caller 2009-12-03 18:05:42 +00:00
dahlia 4234c64147 handle a condition where the http headers apparently have multiple remote ports designated 2009-12-02 04:10:53 -08:00
Teravus Ovares (Dan Olivares) 4af77e84b1 * Fix Inconsistent line ending style in Util 2009-12-01 10:21:22 -05:00
Teravus Ovares (Dan Olivares) 4338f4e1d7 * Patch from Misterblue to fix Environment.TickCount for statistics purposes. Resolves the wrap-around of the 32 bit uint.
* Teravus moved the Environment methods to the Util class
2009-11-29 05:06:25 -05:00
Justin Clark-Casey (justincc) 251fd8c948 Apply patch to reduce git revision text length if running sim directly from a git tree
See http://opensimulator.org/mantis/view.php?id=4030
Thanks ChrisDown (and Bruce for reporting)
2009-11-27 18:24:21 +00:00
Justin Clark-Casey (justincc) 377bc27c1f Merge branch 'master' of ssh://justincc@opensimulator.org/var/git/opensim 2009-11-26 19:02:41 +00:00
Justin Clark-Casey (justincc) 52dc9ec003 Bump trunk version number to 0.6.9.
This is a place holder name and not necessarily the version number that will be used
2009-11-26 19:00:57 +00:00
Melanie 9d63f90467 Remove the old (Remoting) region crossing code. Fix the new code to
pass script state and assembly again properly. Reintroduce respecting tht
TrustBinaries flag. Changes the interregion protocol! No version bump
because it was broken anyway, so with a version mismatch it will simply
stay broken, but not crash. Region corssing still doesn't work because
there is still monkey business with both rezzed prims being pushed across
a border and attached prims when walking across a border. Teleport is
untested by may work.
2009-11-26 17:03:09 +00:00
Melanie 05fc504ff3 Remove the old remoting-type interregion code for prim/script crossing 2009-11-26 12:16:42 +00:00
Justin Clark-Casey (justincc) a4d2a97bc6 minor: remove some mono compiler warnings, add --merge load oar switch to help information 2009-11-25 16:14:08 +00:00
Jeff Ames 9f5c2acd12 Formatting cleanup. 2009-11-23 11:26:06 +09:00
dahlia 0561cf7d93 Merge branch 'master' of ssh://dahlia@myConnection01/var/git/opensim 2009-11-20 03:12:36 -08:00
dahlia 54b5677f23 remove early return from PrimitiveBaseShape.ToOmvPrimitive() when prim is a sculpty 2009-11-20 03:12:07 -08:00
Justin Clark-Casey (justincc) 7166f3748a minor: correct error messages when queryfolder fails 2009-11-18 18:44:47 +00:00
Justin Clark-Casey (justincc) 47e482217e minor: remove duplicate copyright notice in PollServiceWorkerThread 2009-11-18 16:28:00 +00:00
dahlia 1afd347615 Correct formatting of Primitive.Textures in PrimitiveBaseShape.ToOmvPrimitive method 2009-11-17 23:17:50 -08:00
Justin Clark-Casey (justincc) 0712196c26 make logging less verbose when loading iars 2009-11-13 18:56:23 +00:00
dahlia 89a63c9a8b Some corrections to PrimitiveBaseShape.ToOmvPrimitive() 2009-11-13 01:18:52 -08:00
Justin Clark-Casey (justincc) d95df603df move fake user service to a separate mock user service class
delete asset cache tests shell
2009-11-12 19:33:38 +00:00
Justin Clark-Casey (justincc) 2f092d271e Rename test services to mock services, since this is a more accurate description
remove duplicate mock inventory service
2009-11-12 18:44:03 +00:00
Justin Clark-Casey (justincc) 1fa037a0c3 minor: remove some mono compiler warnings 2009-11-11 15:56:14 +00:00
dahlia a8a01e2bc7 add a ToOmvPrimitive() method to PrimitiveBaseShape 2009-11-11 02:54:58 -08:00
John Hurliman 5145dfa53c * Removing the redundant SendPrimitiveTerseData.State field, it duplicates AttachPoint
* LLClientView.CreateImprovedTerseBlock() now uses AttachPoint and does the proper high-low swap (this should fix disappearing attachment pieces)
2009-11-09 17:13:56 -08:00
Melanie 5300e8506d Reintroduce AssetBase's old behavior. A Parameterless constructor is required
for .NET serialization and removing it breaks the OpenSim asset server
protocol.
2009-11-06 10:33:49 +00:00
John Hurliman afef1ac191 Changing the AssetBase constructors to avoid initializing assets with an unknown asset type, and log an error if it ever does happen 2009-11-05 13:10:58 -08:00
Melanie 83b4b4440b Patch by revolution, thank you. Mantis #1789 . Implement friends permissions.
Applied with major changes. Core functionality commented pending review
for possible rights escalation. No user functionality yet.
2009-11-05 02:09:07 +00:00
Melanie c72f78215b Backport the fixes to WebFetchInventoryDescendents to the UDP
InventoryDescendents packet. Testing has shown that UDP inventory now
works flawlessly and, unlike CAPS inventory, doesn't download the entire
agent inventory on start. Neither does it incessantly re-request folder
NULL_KEY. Therefore, I have disabled CAPS inventory.
2009-11-04 01:56:19 +00:00
Justin Clark-Casey (justincc) 865d3f4b09 minor: remove a few mono compiler warnings 2009-11-03 19:35:18 +00:00
Teravus Ovares (Dan Olivares) fb08133999 * Remove the locklessqueue tests since I guess I didn't understand what it was when I wrote the test. 2009-10-30 19:24:14 -04:00
Teravus Ovares (Dan Olivares) 5101f688ee * Add LocklessQueueTests. One Test is commented out because it fails. It should probably work.. but I'm awaiting clarification. 2009-10-30 19:13:57 -04:00
Teravus Ovares (Dan Olivares) 2e81acec48 * Adding Tests for OpenSim.Framework.Cache. Some test cases disabled until mantis resolutions. 2009-10-30 18:13:58 -04:00
Teravus Ovares (Dan Olivares) 4563f00852 * Another ACL Test 2009-10-30 17:27:44 -04:00
Teravus Ovares (Dan Olivares) 120c731a3b * Moving A test from the OpenSim.Framework.ACL object to the OpenSim.Framework.Tests assembly. Fixing the test. 2009-10-30 17:04:10 -04:00
John Hurliman b81c829576 * Standalone logins will now go through the sequence of "requested region, default region, any region" before giving up
* Hip offset should have been added not subtracted (it's a negative offset). This puts avatar feet closer to the ground
* Improved duplicate checking for terse updates. This should reduce bandwidth and walking through walls
2009-10-28 14:13:17 -07:00
John Hurliman f89c2cac0f Experimental test to rate limit the incoming packet handler and try to always leave a worker thread available for other tasks 2009-10-27 14:16:01 -07:00
John Hurliman c75d415648 * Converts ClientManager.ForEach() (and as a result, Scene.ForEachClient()) to use a non-blocking parallel method when operating in async mode
* Minor code readability cleanup
2009-10-27 00:26:56 -07:00
John Hurliman 0b1726b524 Removing the ClientManager reference from IScene and hiding it entirely inside Scene as an implementation detail. This will reduce programming error and make it easier to refactor the avatar vs client vs presence mess later on 2009-10-26 16:48:43 -07:00
John Hurliman 4847e62e9f * Switched all operations on the list of clients that could be either sync or async to use Scene.ForEachClient() instead of referencing ClientManager directly
* Added a new [Startup] config option called use_async_when_possible to signal how to run operations that could be either sync or async
* Changed Scene.ForEachClient to respect use_async_when_possible
* Fixing a potential deadlock in Parallel.ForEach by locking on a temporary object instead of the enumerator (which may be shared across multiple invocations on ForEach). Thank you diva
2009-10-26 16:33:04 -07:00
John Hurliman ac7ccdf7d7 * Changed the watchdog timer to improve the speed of UpdateThread(), only track threads once the first call to UpdateThread() has been made, and allow re-tracking of threads that timed out but revived later
* Added a commented out call to Watchdog.UpdateThread() in OdeScene. If it turns out that loading a large OAR file or some other operation is timing out the heartbeat thread, we'll need to uncomment it
2009-10-26 14:41:27 -07:00
John Hurliman 730930955a Changing Scene.ForEachClient to use the synchronous for loop instead of Parallel. This is quite possibly the source of some deadlocking, and at the very least the synchronous version gives better stack traces
* Lock the LLUDPClient RTO math * Add a helper function for backing off the RTO, and follow the optional advice in RFC 2988 to clear existing SRTT and RTTVAR values during a backoff

* Removing the unused PrimitiveBaseShape.SculptImage parameter * Improved performance of SceneObjectPart instantiation * ZeroMesher now drops SculptData bytes like Meshmerizer, to allow the texture data to be GCed * Improved typecasting speed in MySQLLegacyRegionData.BuildShape()

* Improved the instantiation of PrimitiveBaseShape
2009-10-25 00:40:21 -07:00
John Hurliman 52a4534f7f * Change the way Util.FireAndForget() calls SmartThreadPool to avoid using a delegate (which STP appears to hold on to). This removes the slow leak I was seeing when using async_call_method=SmartThreadPool and stabilizes allocated memory for an idle OpenSim instance 2009-10-23 13:45:18 -07:00
John Hurliman a41cd1d069 * Unregister Mono.Addins event handlers in PluginLoader.Dispose() and always handle PluginLoader with the using pattern. This freed up 121,634,796 bytes on my system
* Avoid allocating an Action<IClientAPI> object every round of the OutgoingPacketHandler
* Removed unnecessary semi-colon endings from OpenSim.ini.example [InterestManagement] section
2009-10-23 13:14:29 -07:00
John Hurliman b2ed348aa2 Implemented a Watchdog class. Do not manually create Thread objects anymore, use Watchdog.StartThread(). While your thread is running call Watchdog.UpdateThread(). When it is shutting down call Watchdog.RemoveThread(). Most of the threads in OpenSim have been updated 2009-10-22 12:33:23 -07:00
John Hurliman 36b0e5e1d3 Terrible typo in the previous commit! 2009-10-22 11:07:23 -07:00
John Hurliman 6ca4b0f366 * Added a check if Util.m_ThreadPool is null before trying to use it, and if so initialize it to sane defaults
* Simplified the InitThreadPool() function
2009-10-22 10:37:11 -07:00
Jeff Ames d756fa01ae Add copyright header. Formatting cleanup. 2009-10-22 18:57:24 +09:00
John Hurliman 2f394b7e7e * Allow SmartThreadPool to be initialized without setting max stack size (like the original implementation)
* Only initialize Util's SmartThreadPool if it is actually being used
* No longer initializing Util's SmartThreadPool with a custom max stack size. From MSDN: "Avoid using this constructor overload. The default stack size used by the Thread(ThreadStart) constructor overload is the recommended stack size for threads."
2009-10-22 01:30:12 -07:00
Melanie 1e71e3f910 Remove the "mel_t" from version string 2009-10-22 07:03:40 +01:00
Melanie b35fbe1f98 Merge branch 'melanie_test' into prioritization
This makes SmartThreadPool configurable and also makes it the default, since
the regular thread pool simply stinks.
2009-10-22 07:02:21 +01:00
John Hurliman 32ccd5bb40 * Changed the misc. methods calling ThreadPool.UnsafeQueueUserWorkItem() to Util.FireAndForget()
* Changed Util.FireAndForget() to use any of five different methods set with async_call_method in the [Startup] section of OpenSim.ini. Look at the example config for possible values
2009-10-21 23:03:18 -07:00
Melanie 8ce4fd7234 Reduce the default pool threads to 15 (from 30) and the minimum from 5 to 2 2009-10-22 04:02:26 +01:00
Melanie 8a336c6860 Add MaxPoolThreads in startup to limit the size of the thread pool used
for FireAndForget. This lets us limit concurrency to make OpenSim play nice
2009-10-22 02:28:53 +01:00
John Hurliman 6492640e72 * Change the OnQueueEmpty signature to send the flags of the queues that are empty instead of firing once per empty queue
* Change the OnQueueEmpty firing to use a minimum time until next fire instead of a sleep
* Set OutgoingPacket.TickCount = 0 earlier to avoid extra resends when things are running slowly (inside a profiler, for example)
2009-10-21 18:03:41 -07:00
Melanie 9ec55df988 Mark new version 2009-10-22 01:51:27 +01:00
John Hurliman 2b39ff0a39 Merged master into prioritization 2009-10-21 16:24:17 -07:00
Melanie 93b24b5207 Fix web map retrieval for regions configured via .ini 2009-10-21 03:44:40 +01:00
Melanie 2a886fd76c Really make module port selection work. Implement port setting in
LLProxyLoginModule.
2009-10-21 02:19:45 +01:00
John Hurliman 8151190a45 * Removing ODEPrim and ODECharacter GetHashCode() overrides since they were based on something that could change
* Tweaked a few other GetHashCode() overrides to bring them in line with MSDN recommendations
2009-10-20 10:56:15 -07:00
Melanie 9bc303d293 Add MainServer.GetHttpServer(port) method for using multiple listener
ports in region modules
2009-10-20 16:57:22 +01:00
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 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
Jeff Ames 0a259caeef Minor formatting cleanup. 2009-10-19 15:48:07 +09: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
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