Justin Clark-Casey (justincc)
3b1c91c24b
remove mono compiler warnings
2010-12-17 22:35:08 +00:00
Diva Canto
ed26376ec5
Yet more things out of the main Update thread loop and into threadlets. This time, SendPrimsUpdate. Plus a few more tweaks on triggering actions from the Update loop. #LoginLag.
2010-12-14 20:15:26 -08:00
Diva Canto
74c68474e0
Another attempt at moving heavy computation away from the Update loop. #LoginLag
2010-12-14 18:44:26 -08:00
Diva Canto
e3262ef5ac
Commented out the UpdateLand call from the Update thread loop, because this may be causing the #LoginLag. Attachments taint the prim count. Twice. Each.
2010-12-14 17:50:37 -08:00
Melanie
4df1d25d23
Plumb a code path for the entity transfer module to ask a destination scene
...
whether or not an agent is allowed there as a root agent.
2010-12-09 01:55:32 +00:00
Justin Clark-Casey (justincc)
1fa9399ab8
change doc. trivial commit to get panda to rebuild
2010-12-08 00:41:33 +00:00
Diva Canto
72748746d5
Fixed some inconsistency with trailing /. Made debug messages consistent. Changed the stored region names of HG regions. Increased the size of regionName in DB.
2010-12-05 19:43:24 -08:00
Jonathan Freedman
45cd2e3ef9
Merge branch 'master-core' into mantis5110
2010-12-05 11:49:15 -08:00
Justin Clark-Casey (justincc)
7e72afcb3e
Only force prim persistence before delete if the prim is the result of an unpersisted delink
...
This considerably improves delete performance for objects with large linksets
2010-12-03 00:12:59 +00:00
Diva Canto
f3835fe15c
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2010-11-29 09:58:20 -08:00
Marck
2827deffe8
Trigger changed event with CHANGED_TELEPORT when teleporting to another region.
2010-11-26 22:46:48 +01:00
Diva Canto
1cbd2842d5
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2010-11-25 16:27:19 -08:00
Diva Canto
ae4b02e115
WARNING: LOTS OF CONFIGURATION CHANGES AFFECTING PRIMARILY HG CONFIGS. Added capability to preserve creator information on HG asset transfers. Added a new HGAssetService that is intended to be the one outside the firewall. It processes and filters the assets that go out of the grid. Also fixed the normal AssetService to do special things for the main instance (console commands, etc). Moved HGInventoryService to OpenSim.Services.HypergridService. Changed the way the login service gets the ServiceURL configs.
2010-11-25 11:14:16 -08:00
Melanie
57c4def254
Change all restarting to use the restart module. Remove hardcoded behavior
2010-11-25 03:16:52 +00:00
Jonathan Freedman
b7f5e82843
Merge branch 'master-core' into mantis5110
2010-11-21 20:01:48 -08:00
Jonathan Freedman
562147475c
Merge https://github.com/opensim/opensim into mantis5110
...
Conflicts:
OpenSim/Region/Framework/Scenes/Scene.cs
2010-11-21 19:51:23 -08:00
Diva Canto
6a9ae9e7cb
Global creator information working on MySQL DB and on load/save OARs. Creator name properly shown on the viewer as first.last @authority.
...
New option added to save oar -profile=url. Migration on RegionStore making CreatorID be 255 chars.
Moved Handling of user UUID -> name requests to a new module UserManagement/UserManagementModule.
2010-11-21 13:16:52 -08:00
Melanie
7bb005b0d1
Change the way attachments are persisted. Editing a worn attachment will now
...
save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
2010-11-16 21:01:56 +00:00
Melanie
bfc128529c
Prevent teleporting to a region when the egent is banned in all parcels
2010-11-10 16:20:19 +00:00
Melanie
22144eb8f7
Fix parcel bans to work only on the avatars they're supposed to work on instead of pushing all avatars, even the ones that are allowed.
2010-11-09 22:15:59 +00:00
Melanie
798abd1508
Reinstate a lost fix
2010-11-08 03:06:58 +00:00
Melanie
6056ae8d88
Fix merge artefacts
2010-11-08 02:58:33 +00:00
Melanie
18b27408d6
Prevent plants from being treated like dropped attachments and removed
...
from the sim.
2010-11-08 02:39:06 +00:00
Melanie
4f6dd8bda3
Call the cleanup after saving attachment states, so that the attachments
...
don't get killed before they can be saved
2010-11-08 02:38:15 +00:00
Melanie
2f58d56137
Call the Cleanup when an agent logs out, when an agent leaves and just
...
before an agent logs in directly. Intentionally not calling this from MakeRoot
as that would mess up attachment transfer in teleport
2010-11-08 02:37:28 +00:00
Melanie Thielker
2317b6767b
Add a method to delete left over / dropped attachments
2010-11-08 02:36:51 +00:00
Jonathan Freedman
c8d65c359f
Merge branch 'master' into mantis5110
...
Conflicts:
OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-10-29 23:58:14 -04:00
Jonathan Freedman
d219317074
Merge branch 'master' into mantis5110
...
Conflicts:
OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-10-29 23:12:51 -04:00
Master ScienceSim
f5c9a56c8b
Bunch of fixes that reduce the number of times appearance
...
and avatar data are sent. And the number of times they
are stored.
2010-10-29 13:43:35 -07:00
Master ScienceSim
f2c1d0e34f
Merge branch 'opensim-master' into dev-appearance
2010-10-28 09:09:42 -07:00
dahlia
5968d343bb
Overload Scene.NewUserConnection() to facilitate NPCs and other region specific applications
2010-10-26 21:19:33 -07:00
Justin Clark-Casey (justincc)
80f90229e5
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2010-10-22 23:56:58 +01:00
Justin Clark-Casey (justincc)
fe8d3d5a2b
Revert "Merge remote branch 'otakup0pe/mantis5110'"
...
This reverts commit 21187f459e
, reversing
changes made to 8f34e46d74
.
2010-10-22 23:52:07 +01:00
Jonathan Freedman
38e76d71ac
Merge branch 'hg16' into mantis5110
2010-10-22 18:34:50 -04:00
Melanie
004b395d12
Make SImStatsReporter pick ObjectCapacity striaght out of region info
2010-10-22 18:27:49 -04:00
Melanie
700f4ddea4
Change some exception to use ToString(). e.Message is not sufficient to fix
...
errors. Please don't use e.Message, devs NEED to see the dumps!
2010-10-22 22:55:07 +01:00
Jonathan Freedman
d4144bedb8
* change the data exchanged within hypergrid transactions
2010-10-21 23:22:15 -04:00
Master ScienceSim
b1c8d05888
Major refactoring of appearance handling.
...
AvatarService -- add two new methods, GetAppearance and SetAppearance
to get around the lossy encoding in AvatarData. Preseve the old
functions to avoid changing the behavior for ROBUST services.
AvatarAppearance -- major refactor, moved the various encoding
methods used by AgentCircuitData, ClientAgentUpdate and
ScenePresence into one location. Changed initialization.
AvatarAttachments -- added a class specifically to handle
attachments in preparation for additional functionality
that will be needed for viewer 2.
AvatarFactory -- removed a number of unused or methods duplicated
in other locations. Moved in all appearance event handling from
ScenePresence. Required a change to IClientAPI that propogated
throughout all the IClientAPI implementations.
2010-10-20 16:17:54 -07:00
Melanie
abfede7819
Plumb the path for multiple object deletes
2010-10-06 20:00:51 +01:00
John Hurliman
860b2a502f
Changed SceneObjectGroup to store parts with the fast and thread-safe MapAndArray collection
2010-09-16 17:30:46 -07:00
Justin Clark-Casey (justincc)
39d27fc879
rename SceneObjectGroup.DeleteGroup() to DeleteGroupFromScene() to improve code readability
2010-09-15 22:29:58 +01:00
Justin Clark-Casey (justincc)
dd803b4f0c
minor: Add comments which explain what's going on wrt avatar movements at various points in the main scene loop and associated methods
2010-09-13 21:53:25 +01:00
John Hurliman
c03b24cbfd
Merged
2010-09-12 14:21:51 -07:00
John Hurliman
0db1ed0b5a
* Added ISimulationDataService and IEstateDataService
...
* Removed StorageManager
* CONFIG CHANGE: There are no more database settings in OpenSim.ini. Check the config-include configuration files for region store and estate store database settings
2010-09-12 14:20:26 -07:00
Jeff Ames
f1f0bc23f4
Formatting cleanup.
2010-09-12 13:43:49 -04:00
John Hurliman
007912d6f4
Shuffling fields and properties around in Scene to make Scene.cs more readable
2010-09-11 23:41:48 -07:00
randomhuman
30306a775a
Made it impossible to create a user with names containing spaces and prevented passwords from being echoed after enter is pressed.
2010-09-10 23:19:18 +01:00
John Hurliman
dd277a0d02
First pass at cleaning up thread safety in EntityManager and SceneGraph
2010-09-10 12:04:12 -07:00
Justin Clark-Casey (justincc)
11f4a65f42
Fix deletion persistence when freshly delinked prims are removed
...
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion.
This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart).
However, DeRezObjects() deleted to user inventory, which is required by llDie() or direct region module unlink and deletion.
Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path.
Uncommented TestDelinkPersistence() since this now passes.
Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07 01:12:06 +01:00
Justin Clark-Casey (justincc)
ab875b32c1
Make console backup command do a forced backup rather than non-forced
...
Remove no-arg backup method for simplicity as it only make sense to call non-forced backup internally
2010-09-06 23:12:03 +01:00
Justin Clark-Casey (justincc)
953b7f4917
Add test to check persistence of newly added pre-linked objects
...
Added a MockRegionDataPlugin to do in-memory persistence for tests since adding this to OpenSim.Data.Null.NullDataStore doesn't seem appropriate
NullDataStore can do nothing because OpenSim only ever retrieve region objects from the database on startup. Adding an in-memory store here would be unecessary overhead.
2010-09-06 23:00:24 +01:00
Diva Canto
68f107b27e
Logout the presence if client IP verification fails.
2010-09-04 18:46:27 -07:00
Melanie Thielker
c47de94263
Adjust the "Magic numbers" we use because we can't reference the actual
...
script state enum to reflect recent changes.
2010-08-31 22:36:46 +01:00
Justin Clark-Casey (justincc)
1c0b4457cd
Improve liveness by operating on list copies of SOG.Children where appropriate
2010-08-28 00:40:33 +01:00
Justin Clark-Casey (justincc)
df702417dc
Remove mono compiler warnings
2010-08-26 16:27:41 +01:00
Justin Clark-Casey (justincc)
87a6554d4b
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
...
Resolve merge conflicts
Conflicts:
OpenSim/Region/Framework/Scenes/SceneGraph.cs
2010-08-26 00:35:03 +01:00
Justin Clark-Casey (justincc)
8031f8ec09
Improve consistency of locking for SOG.m_parts in order to avoid race conditions in linking and unlinking
2010-08-26 00:08:53 +01:00
Melanie Thielker
604423d52b
Make scene object directories more robust and prevent deleted SOP's from
...
sticking around
2010-08-25 23:19:30 +01:00
Justin Clark-Casey (justincc)
d69e992665
Split out actual scene object insertion code from Scene.Inventory.RezObject and move into SceneGraph.AddNewSceneObject()
...
The new SceneGraph method is more consumable by region modules that want to extract objects from inventory and add them to the scene in separate stages.
This change also reduces the number of redundant client updates scheduled when an object is rezzed directly by a script or region module
This code does not touch direct rez by a user
2010-08-24 23:25:19 +01:00
Diva Canto
6f83b0ee46
Cleaned up a few more things related to incoming agents.
2010-08-20 09:02:05 -07:00
Melanie
82abaadd55
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2010-08-20 08:36:54 +01:00
Melanie
ae554a48d0
Add some maptile options, change maptile generation from OpenSimBase to Scene
...
to make it more configurable.
2010-08-20 08:36:23 +01:00
Diva Canto
a39ea07158
Finished implementing ViaLogin vs ViaHGLogin. Removed lookup on myipaddress.com. Also removed client IP verification upon UDP connection that had been left there -- we can't do that in general.
2010-08-19 19:54:40 -07:00
randomhuman
8eeb3f2fd2
Updated the create_region command in the RemoteAdmin plugin to properly support estates without seeking further input on the console.
2010-08-13 23:29:01 +01:00
Justin Clark-Casey (justincc)
ab6dc47818
refactor: move binary statistics logging from scene into separate region module
2010-08-13 23:15:11 +01:00
Justin Clark-Casey (justincc)
e89f0b3f71
refactor: move Scene.PerformObjectBuy into BuySellModule
2010-08-13 22:29:42 +01:00
Justin Clark-Casey (justincc)
b30635a454
Establish new Objects/BuySellModule
...
Move Scene.ObjectSaleInfo() to this
2010-08-13 21:39:43 +01:00
Justin Clark-Casey (justincc)
5d20f04e08
refactor: move Scene.TerrainUnAcked() handling into TerrainModule
2010-08-13 21:18:26 +01:00
Justin Clark-Casey (justincc)
fd23f270c6
refactor: remove Scene.SetRootAgentScene() in favour of existing event with same name
2010-08-13 21:01:10 +01:00
Justin Clark-Casey (justincc)
5f5c65e4ba
refactor: move more map tile generation code from scene to IWorldMapModule
2010-08-13 20:34:46 +01:00
Justin Clark-Casey (justincc)
39a748b47a
refactor: Use SOP.Flags rather than SOP.ObjectFlags
2010-08-13 20:23:53 +01:00
Marck
6147efdad9
Avoid truncation of error message during region creation.
...
Signed-off-by: Melanie <melanie@t-data.com>
2010-08-10 19:34:09 +01:00
Justin Clark-Casey (justincc)
1270727c96
Merge branch 'moap'
2010-08-06 18:29:30 +01:00
Diva Canto
f3fa10fa15
Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim
2010-07-30 14:04:29 -07:00
Diva Canto
8ab7d80b09
Changed the way HG client verification is done: now transforming local and LAN client IPs into external IPs. This addresses some issues related to running both the user agents service and the viewer in the same machine/LAN, which then presents a problem when the user agent goes to an external network.
2010-07-30 14:04:13 -07:00
Justin Clark-Casey (justincc)
f84dbafb0c
remove gods event subscription to gods module from scene
2010-07-30 21:58:24 +01:00
Justin Clark-Casey (justincc)
63f3a16b72
remove empty, unused and uncalled UnsubscribeToClientEvents()
2010-07-30 21:44:50 +01:00
Justin Clark-Casey (justincc)
424b4b2b86
move attachment subscription events into AttachmentsModule from scene.
...
restored to some heavy casting in order to preserve RegionCombinerModule semantics, pending better events.
2010-07-30 21:41:44 +01:00
Justin Clark-Casey (justincc)
586ae0f6a0
Add EventManager.OnSceneObjectLoaded() for future use. This is fired immediately after a scene object is loaded from storage.
2010-07-26 23:34:22 +01:00
Melanie
ac1a34714d
Allow Megaregions to start properly after an unclean shutdown
2010-07-20 23:24:04 +01:00
Melanie
e1ea82b329
Major attachments cleanup. Remove unused AttachObject ClientView method
...
Clean up use of AttachObject throughout, reduce number of overloads
and number of parameters
2010-07-14 19:51:12 +01:00
Melanie Thielker
a7b5fe6a88
Remove useless quaternion parameter from AttachObject sig
2010-07-14 19:49:54 +01:00
Melanie Thielker
cd8bb316ea
Remove getting the object capacity from the money module. It is now set
...
directly from the Region Info (and the region ini file)
2010-07-14 03:51:00 +01:00
Melanie
dd14016885
Revamp the permissions propagation. This MAY mess up. Please test.
...
Change the slam bit from 3 to 4. Assume the old slam bit is always set.
The new slam bit is a "changed owner" bit, correcting a bug where an item
passed from the creator to another with less than full perms, then back (sale
test) would arrive back full perm. Lots of in-code docs.
2010-07-13 20:45:16 +01:00
Diva Canto
9c9ce9e8dd
* Deleted duplicated migration that was failing anyway.
...
* Added an error message in initial estate owner creation that makes it clear what needs to happen.
2010-06-14 11:50:42 -07:00
Diva Canto
19558f380a
Fixes the long-standing RegionUp bug! Plus lots of other cleanups related to neighbours.
2010-06-13 19:06:22 -07:00
Diva Canto
b3594681a4
Merge branch 'master' of ssh://diva@opensimulator.org/var/git/opensim
2010-06-12 12:09:06 -07:00
Diva Canto
66619b5996
Added checks for failed UpdateAgent calls.
2010-06-12 12:08:45 -07:00
Melanie
59acb37d92
Change name of method to better reflect what it does
2010-06-12 19:14:46 +01:00
Diva Canto
e6efe34b4c
* Added CHANGED_TELEPORT event trigger upon inter-sim teleports.
...
* Cleaned up NewUserConnection.
2010-06-12 11:11:13 -07:00
Diva Canto
b2b6799f1c
Added more debug messages to try to pinpoint where login is failing for nebadon.
2010-06-10 18:26:04 -07:00
Dan Lake
ca2abc43ad
Refactor SendCoarseLocations for better performance. Instead of computing list of all locations fresh for every scene presence on every frame, we will instead compute the list once every 50 frames and send to all connected presences at that time. Also, we only add 60 items to the list when there are more than 60 presences in the scene. For 1000 users, this change yields a 99.8% reduction in list processing and a 98% reduction in network bandwidth for coarse locations.
2010-06-08 16:44:18 -07:00
Justin Clark-Casey (justincc)
b6076d7b33
Reduce number of full updates sent on region crossing for attachments/huds to 1 from 3
...
This is one step towards reducing hud glitches on region crossing, since the viewer fails to display prims if it receives child full updates before the root prim full update
This commit also introduces a mechanism in LLClientView to stop child attachment updates ever going out before the root one
This is a very temporary mechanism and will be commented out when the next step of the fix (to give root prims higher udpate priority) is committed
This code is a foreport from the equivalent changes in 0.6.9-post-fixes
2010-06-08 15:07:57 +01:00
Melanie Thielker
d91bd7646d
Add a call to SOG.ResumeScripts() after region crossing / teleport
2010-06-07 00:11:30 +01:00
Diva Canto
ab3afd5f42
* Bug fix in TP home: typo in unpacking of GridUserInfo.
...
* Bug fix in TPs across neighboring regions: bug was introduced when getting rid of crashed sessions.
2010-06-05 09:39:09 -07:00
Melanie Thielker
bde01e26e1
Add a method to get the bounding box and root prim offsets within it for
...
a group of prims.
2010-06-01 02:10:11 +01:00
Justin Clark-Casey (justincc)
6b568af565
Adjust Scene.DeleteAllSceneObjects() to not delete objects attached to avatars.
...
This is going to be the right behaviour in all cases, I should think.
This means that avatars in region when an oar is loaded do not lose their attachments
2010-05-28 18:49:32 +01:00
John Hurliman
d0eecf0398
Added a sanity check before using m_config in the Scene constructor
2010-05-21 14:17:03 -07:00
John Hurliman
93ef65c690
* Moving all of the prioritization/reprioritization code into a new file Prioritizer.cs
...
* Simplified the interest management code to make it easier to add new policies. Prioritization and reprioritization share code paths now
* Improved the distance and front back policies to always give your avatar the highest priority
2010-05-21 13:55:36 -07:00
Diva Canto
b7e6b58857
Fixes mantis #4622 .
2010-05-16 09:01:27 -07:00
Diva Canto
2a1e45f657
Finalized the client's TCP IP address verification process for HG1.5.
2010-05-15 19:25:14 -07:00
Diva Canto
b233a4b2ca
* Fixed spamming the assets table with map tiles. The tile image ID is now stored in regionsettings. Upon generation of a new tile image, the old one is deleted. Tested for SQLite and MySql standalone.
...
* Fixed small bug with map search where the local sim regions weren't found.
2010-05-09 13:39:56 -07:00
Diva Canto
a58859a0d4
GridUserService in place. Replaces the contrived concept of storing user's home and position info in the presence service. WARNING: I violated a taboo by deleting 2 migration files and simplifying the original table creation for Presence. This should not cause any problems to anyone, though. Things will work with the new simplified table, as well as with the previous contrived one. If there are any problems, solving them is as easy as dropping the presence table and deleting its row in the migrations table. The presence info only exists during a user's session anyway.
...
BTW, the Meshing files want to be committed too -- EOFs.
2010-05-07 21:29:56 -07:00
Melanie Thielker
2b48ed60ec
Remove the m_Viewer variable and make the property a shortcut to the
...
proper field in AgentCircuitData instead
2010-05-05 23:41:57 +01:00
Melanie
ad2039a8c4
Stab a test fail
2010-05-05 22:48:05 +01:00
Melanie Thielker
e45f5ac126
Plumb Viewer version into ScenePresence for initial login. It's still not
...
carried along
2010-05-05 22:33:22 +01:00
Melanie Thielker
9cf0077bf9
Add "reload estate" command to sims
2010-05-04 16:11:06 +01:00
Melanie Thielker
6eea0a3931
Allow reloading of estate settings into a running region. Move sun update
...
helper into Scene, since that is less evil than exposing m_storageManager
to the public.
2010-05-04 15:52:36 +01:00
Melanie
7a8ad1ceb2
Make in-place sale send CHANGED_OWNER again
2010-05-03 01:30:57 +01:00
Melanie
22b3217113
Fix link security issue
2010-04-30 11:46:50 +01:00
Melanie
21cad5d3ac
All scripts are now created suspended and are only unsuspended when the object
...
is fully rezzed and all scripts in it are instantiated. This ensures that link
messages will not be lost on rez/region crossing and makes heavily scripted
objects reliable.
2010-04-19 06:29:26 +01:00
Justin Clark-Casey (justincc)
26e3884237
refactor: move DeatchObject() into the AttachmentsModule
2010-04-17 00:00:45 +01:00
Justin Clark-Casey (justincc)
17d023ba5b
refactor: crudely move the RezMultipleAttachments() method into the AttachmentsModule
2010-04-16 22:54:25 +01:00
dahlia
3d0860ae61
thanks lkalif for Mantis #4676 - a patch that adds support for inventory links
...
Signed-off-by: dahlia <dahliaTrimble@gmail.removeme.com>
2010-04-12 17:10:51 -07:00
Melanie
ec637e2b8c
Committing the LightShare code, which was developed by TomMeta of Meta7.
...
This allows scripts to set WindLight parameters for clients connecting
to a region. Currently, this is only supported by the Meta7 viewer.
2010-03-31 04:20:20 +01:00
Melanie
607ed61ec2
Stab one bug. When joining an estate with a new region, make sure it's also
...
used on first run and not only later.
2010-03-28 23:18:25 +01:00
John Hurliman
5a2315c68c
* Fixed a bug with null value handling in WebUtil.BuildQueryString()
...
* Changed the null check back in estate manager setup but fixed the case for an existing account being found
* Implemented SetPassword() in the SimianGrid auth connector
2010-03-26 12:21:05 -07:00
John Hurliman
dd1c1b3bcd
Fixed a backwards null check that was preventing estate owner from being set and a misleading error message (in grid mode it tries to get a user, not create one)
2010-03-26 11:08:14 -07:00
Justin Clark-Casey (justincc)
19c659ca99
fix unit tests broken by commit dcf18689b9
...
can't prompt for estate owner in unit tests
2010-03-25 21:46:23 +00:00
Melanie
dcf18689b9
First stage of the new interactive region creation. This will allow creation
...
of a region and joining it to an existing estate or creating a new estate,
as well as creating an estate owner if in standalone, and assigning estate
owners. In Grid mode, existing users must be used. MySQL ONLY!!!! so far, as
I can't develop or test for either SQLite or MSSQL.
2010-03-23 02:05:56 +00:00
Melanie
70b0e07d1e
Remove the reading of estate_settings.xml and the associated processing of
...
defaults. Adding code to facilitate estate creation / managemment as part of
first time start up
2010-03-22 18:49:56 +00:00
Dan Lake
62e0b53ca4
Renamed TryGetAvatar to TryGetScenePresence on SceneManager, SceneBase, Scene and SceneGraph. This was the only change in this patch to keep it isolated from other recent changes to the same set of files.
2010-03-19 15:16:44 -07:00
Dan Lake
859bc717a4
Cleaned up access to scenepresences in scenegraph. GetScenePresences and GetAvatars have been removed to consolidate locking and iteration within SceneGraph. All callers which used these to then iterate over presences have been refactored to instead pass their delegates to Scene.ForEachScenePresence(Action<ScenePresence>).
2010-03-19 15:16:35 -07:00
Dan Lake
73e9b0be72
Inconsistent locking of ScenePresence array in SceneGraph. Fixed by eliminating option to return the actual list. Callers can now either request a copy of the array as a new List or ask the SceneGraph to call a delegate function on every ScenePresence. Iteration and locking of the ScenePresences now takes place only within the SceneGraph class.
...
This patch also applies a fix to Combat/CombatModule.cs which had unlocked iteration of the ScenePresences and inconsistent try/catch around the use of those ScenePresences.
2010-03-17 11:21:27 -07:00
John Hurliman
b51f40da8f
Removed the unused use_async_when_possible config variable
2010-03-16 12:03:04 -07:00
Justin Clark-Casey (justincc)
315fa06c75
refactor: Move another RezSingleAttachment() from Scene.Inventory to AttachmentsModule
2010-03-12 23:20:38 +00:00
Justin Clark-Casey (justincc)
582375509c
refactor: move RezSingleAttachmentFromInventory() from SceneGraph to AttachmentsModule
2010-03-12 22:48:49 +00:00
Justin Clark-Casey (justincc)
b9f5cd75bc
refactor: move client invoked AttachObject from SceneGraph to AttachmentsModule
2010-03-12 22:39:15 +00:00
Jeff Ames
f58a0394ed
Formatting cleanup. Add copyright notices.
2010-03-10 13:15:36 +09:00
unknown
98f91a252c
- parcel blocking, region crossing blocking, teleport blocking
...
Signed-off-by: Melanie <melanie@t-data.com>
2010-03-09 22:43:55 +00:00
Diva Canto
f4c165afe7
Bug fix: store correct position information upon logout. Fixes mantis #4608
2010-03-06 08:21:54 -08:00
John Hurliman
27b8d13057
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2010-03-05 17:05:15 -08:00
John Hurliman
36afd0bfd1
* Cache packed throttle data to avoid repeated allocations in CheckForSignificantMovement()
...
* Removed a lock on "return m_neighbours.Count" in GetInaccurateNeighborCount(). Dictionary<>.Count by itself does not benefit from locking
2010-03-05 17:04:20 -08:00
Justin Clark-Casey (justincc)
395f343498
refactor: Move DetachSingleAttachmentToInv to region module
...
need to rationalize method names later
2010-03-06 00:07:47 +00:00
Justin Clark-Casey (justincc)
60553e62a3
refactor: begin to move attachments code into a region module
2010-03-05 23:18:47 +00:00
Justin Clark-Casey (justincc)
edb176447b
Fix bug where approximately half the time, attachments would rez only their root prim until right clicked (or otherwise updated).
...
The root cause of this problem was that multiple ObjectUpdates were being sent on attachment which differed enough to confuse the client.
Sometimes these would eliminate each other and sometimes not, depending on whether the scheduler looked at the queued updates.
The solution here is to only schedule the ObjectUpdate once the attachment code has done all it needs to do.
2010-03-03 22:14:06 +00:00
Diva Canto
14073831d2
Fixes Region.Framework tests. Although these tests don't fail, they need to be rewritten, because they are doing agent manipulations in the wrong way, so they're fairly meaningless.
2010-03-02 07:53:52 -08:00
Diva Canto
5c5966545d
Initial Online friends notification seems to be working reliably now. All this needs more testing, but everything is there.
2010-02-28 12:07:38 -08:00
John Hurliman
71c6559a91
Merge branch 'presence-refactor' of ssh://opensimulator.org/var/git/opensim into presence-refactor
2010-02-22 14:10:19 -08:00
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
Melanie
1f45e6c649
Merge branch 'master' into presence-refactor
...
This brings presence-refactor up to master again
2010-02-22 03:00:59 +00: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)
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
Melanie
1d75ad9fd5
Merge branch 'master' into presence-refactor
2010-02-08 21:54:26 +00:00
Justin Clark-Casey (justincc)
9f4883d146
refactor: Reuse SceneObjectGroup.IsAttachmentCheckFull() in Scene.AddSceneObject since this wraps a check that is much less clear
2010-02-08 19:10:54 +00:00
Justin Clark-Casey (justincc)
00947cf2ca
Add EventManager.OnIncomingSceneObject event which is triggered by an incoming scene object
...
Add a read-only Attachments property to ScenePresence
2010-02-08 19:02:20 +00: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
Melanie
2953bee1f4
Revert "change position of OnAttach event firing so that this also happens when a user teleports into a region"
...
The behavior introduced here is not compatible with SL
This reverts commit b6bee4999c
.
2010-02-04 17:11:06 +00:00
Justin Clark-Casey (justincc)
b6bee4999c
change position of OnAttach event firing so that this also happens when a user teleports into a region
2010-02-03 15:35:41 +00:00
Justin Clark-Casey (justincc)
05a3e37b85
Apply http://opensimulator.org/mantis/view.php?id=3334
...
Send continuous touch() events if the left mouse button is held down while moving over an object
This conforms with Linden Lab practice
Thanks Revolution
2010-01-29 23:12:08 +00:00
Diva Canto
00f7d622cb
HG 1.5 is in place. Tested in standalone only.
2010-01-28 19:19:42 -08:00
Justin Clark-Casey (justincc)
38cfc9366c
Fix a problem where llDie() calls were sometimes leaving dead objects behind.
...
When an object was deleted, the remove script instance call was aggregating the scripting events as normal.
This would queue a full update of the prim before the viewer was notifed of the deletion of that prim (QuitPacket)
On some occasions, the QuitPacket would be sent before the full update was dequeued and sent.
In principle, you would think that a viewer would ignore updates for deleted prims. But it appears that in the Linden viewer (1.23.5),
a prim update that arrives after the prim was deleted instead makes the deleted prim persist in the viewer. Such prims have no properties
and cannot be removed from the viewer except by a relog.
This change stops the prim event aggregation call if it's being deleted anyway, hence removing the spurious viewer-confusing update.
2010-01-25 21:51:58 +00:00
Diva Canto
bbbe9e73cc
* Fixed misspelling of field in GridService
...
* Moved TeleportClientHome to EntityTransferModule
2010-01-18 09:14:19 -08:00
Diva Canto
04e29c1bac
Beginning of rewriting HG. Compiles, and runs, but HG functions not restored yet.
2010-01-16 21:42:44 -08:00
Diva Canto
ee1fb81376
Finished moving object crossings into EntityTransferModule
2010-01-16 08:42:20 -08:00
Diva Canto
bd6d1a2444
Moved prim crossing to EntityTransferModule. Not complete yet.
2010-01-16 07:46:07 -08:00
Diva Canto
32bfbdab6f
Merge branch 'presence-refactor' of ssh://diva@opensimulator.org/var/git/opensim into presence-refactor
2010-01-15 17:24:41 -08:00
Diva Canto
4ac3c0e81b
Renamed IAgentTransferModule to IEntityTransferModule -- accounts for objects too.
2010-01-15 17:14:48 -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
Diva Canto
f1c30784ac
* General cleanup of Teleports, Crossings and Child agents. They are now in the new AgentTransferModule, in line with what MW started implementing back in May -- ITeleportModule. This has been renamed IAgentTransferModule, to be more generic.
...
* HGSceneCommunicationService has been deleted
* SceneCommunicationService will likely be deleted soon too
2010-01-15 15:11:58 -08:00
Diva Canto
e90a5895ad
Bug fix in releasing agent. In Scene, always use SimulatonService, and not m_SimulationService, because it may be null...
2010-01-13 21:32:48 -08:00
Diva Canto
daa9866a9a
Omit AuthorizationService from the default configurations, because the service doesn't exist in the distribution.
2010-01-13 19:25:33 -08:00
Diva Canto
7356860b48
Several more buglets removed.
2010-01-13 09:17:30 -08:00
Melanie
e3a04fcb7b
Change the error messages on region region registration. This changes URM
...
and region. The non-error case should be compatible, so no version bump.
Untested.
2010-01-13 03:08:34 +00:00
Diva Canto
011a1b3798
More appearance woes fixed, this time for child agents. Tested on a grid with 2 simulators. Everything seems to be working, including border crosses. TPs (prim crossing) need love now.
2010-01-12 09:49:27 -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
77e43f4801
Fixed a couple of bugs with Appearance. Appearance is all good now.
2010-01-11 17:30:05 -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
dc4bbf6065
All Framework.Communications.Clients and Framework.Communications.Services deleted, including old LoginService.
2010-01-10 20:29:09 -08:00
Diva Canto
4dd523b45d
* Changed IPresenceService Logout, so that it takes a position and a lookat
...
* CommsManager.AvatarService rerouted
2010-01-10 15:34:56 -08: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
45b19e5e2d
Fix a small bug in login disable code
2010-01-10 04:05:19 +00:00
Melanie
b0a7bcb2c8
Add "StartDisabled" to [Startup] to make all regions start up with
...
logins disabled until enabled from the console. Add the AccessModule (WIP)
2010-01-10 03:17:40 +00:00
Diva Canto
25fdbd6cbc
Less refs to UserProfileCacheService. Compiles but likely doesn't run.
2010-01-09 09:09:32 -08:00
Melanie
673a52fa7a
Implement the groups module query to make the estate allowed groups work
2010-01-09 15:58:18 +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
Diva Canto
b63405c1a7
Inching ahead... This compiles, but very likely does not run.
2010-01-08 10:43:34 -08:00
Diva Canto
f11a97f12d
* Finished SimulationServiceConnector
...
* Started rerouting calls to UserService.
* Compiles. May run.
2010-01-07 15:53:55 -08: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
Diva Canto
8a9677a531
The Library Service is now working. UserProfileCacheService.LibraryRoot is obsolete. Didn't delete it yet to avoid merge conflicts later -- want to stay out of core as much as possible.
2010-01-01 21:12:46 -08:00
Diva Canto
4240f2dec6
New LL login service is working! -- tested in standalone only. Things still missing from response, namely Library and Friends. Appearance service is also missing.
2010-01-01 16:54:24 -08:00
Diva Canto
a8901a40f4
Simulation handlers (agents & objects) completed.
2009-12-31 09:25: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
37b07aa9ec
Fix a case where an idle sim can eat 100% of a core
2009-12-20 16:44:31 +00:00
Melanie
0813dc8c1d
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2009-12-14 00:32:00 +00:00
Melanie
c426549f53
Add an option to exit an instance rather than restarting a region within it
2009-12-14 00:31:15 +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
Teravus Ovares (Dan Olivares)
d9a20edfb0
* Move code from that last commit to LLClientView since it's a linden client specific limitation, it moves to the Linden Specific client handler.
2009-12-03 02:02:04 -05:00
Teravus Ovares (Dan Olivares)
af04cd1ae0
* If the position that comes in on Scene.SetHomeRezPoint has a component that is 255.5, replace the component with the user's position in the simulator.
...
* Fixes mantis 4414: http://opensimulator.org/mantis/view.php?id=4414
2009-12-03 01:50:54 -05:00
Teravus Ovares (Dan Olivares)
75e28b3a16
* Fix Inconsistent line ending style on Scene
2009-12-01 10:48:11 -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)
66f511c76a
Remove unused GetDefaultAppearance() static function that is also available on AvatarFactoryModule
2009-11-27 19:45:33 +00:00
Jeff Lee
d39c300d11
Added osGetRegionStats() function, to return a number of sim statistics
2009-11-26 17:43:00 +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
Teravus Ovares (Dan Olivares)
0ff3c28f90
* This doesn't fix mantis 3522, but it should mitigate it.
...
* If the start position is outside of the region on the X and Y, put the user in the center of the region and then damp the Z position at 720 if necessary. If the start position is not outside of the region on the X or Y, then don't check the Z.
2009-11-22 20:21:33 -05:00
Justin Clark-Casey (justincc)
8f0db68424
Fix http://opensimulator.org/mantis/view.php?id=3874 - parenthesis in for statements cause script compile failures
...
This fixes a problem in OpenSim where statements of the form
for ((i = 0); (i < 10); (++i)) { ... }
do not compile even though they are valid lsl.
2009-11-20 18:39:39 +00:00
Justin Clark-Casey (justincc)
622003ab09
minor: tweak log message to say which region is being enabled for logins
2009-11-18 20:27:37 +00:00
dahlia
2e24415077
undo previous changes
...
add a GetGroupByPrim() method to Scene.cs
delete a redundant method
2009-11-13 22:13:40 -08:00
Teravus Ovares (Dan Olivares)
4a2d82e14b
* Thanks to a little help from jhurliman, jradford, diva, mono's brajkovic, miguel, and the fabulous bug reports by our community members.. The workaround fix for the "ERROR:metadata.c:3211:mono_metadata_token_from_dor: code should not be reached" bug in the RegionCombinerModule.
2009-11-11 02:47:17 -05:00
John Hurliman
e6d7303b29
Applying #4332 , optional packet statistics logging
2009-11-05 12:01:40 -08:00
Justin Clark-Casey (justincc)
9dd5d63495
minor: remove some mono compiler warnings
2009-11-04 19:44:28 +00:00
John Hurliman
67ac9881fa
Removing duplicate SceneObjectPart.RotationalVelocity property
2009-11-02 11:28:35 -08:00
Adam Frisby
838bc80ab9
* Implemented some tweaks to monitoring module.
...
* Output is prettier & more useful.
* Added 'Alerts' to allow rules to be constructed using Monitors to detect for events such as deadlocks. This will be translated to SNMP Traps when I get SNMP implemented.
2009-11-02 00:05:49 +11:00
Adam Frisby
711dde34e4
* Implements new 'Monitoring' system for reporting performance.
...
* Mostly the same set as the StatsMonitor used for Viewer notification, but exposes some new frametimes - including EventMS, PhysicsUpdateMS, LandUpdateMS; new memory monitoring - both GC.TotalMemory and Process.PrivateWorkingMemory64; also exposes ThreadCount (using System.Diagnostics.Process)
* Type 'monitor report' on the console to see output.
* SNMP Implementation forthcoming.
2009-11-01 19:37:40 +11:00
John Hurliman
59eb378d16
Small performance tweaks to code called by the heartbeat loop
2009-10-28 23:10:16 -07:00
John Hurliman
a069a1ee68
Limit physics time dilation to 1.0
2009-10-28 14:44:05 -07:00
John Hurliman
0c466b28bb
Move the calculation of time dilation from the scene to the physics engine. The scene is still the one reporting dilation so this does not break the API or remove flexibility, but it gets the calculation happening in the right place for the normal OpenSim usage. The actual calculation of physics time dilation probably needs tweaking
2009-10-27 16:24:43 -07:00
John Hurliman
a718d7d56a
Making the defaults for interest management variables match whether you have the [InterestManagement] section in your config or not
2009-10-27 10:17:20 -07:00
John Hurliman
bcd7593dfb
Forgot a line in the previous commit
2009-10-27 10:07:35 -07:00
John Hurliman
3a1ee79ee4
Finally hunted down the Parallel deadlock. Packets were being handled asynchronously (filling up the threadpool with handlers), which would turn around and try to do parallel operations on the starved threadpool. The solution for now is to disable Parallel.cs operations until we can gracefully handle parallel operations with a potentially starved threadpool
2009-10-27 02:36:57 -07:00
John Hurliman
d199767e69
Experimental change of PhysicsVector to Vector3. Untested
2009-10-26 18:23:43 -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
119cf80e13
Added calls to GC.AddMemoryPressure() when unmanaged memory is allocated for ODE (helps the GC make better scheduling choices), and a call to GC.Collect() right before logins are enabled for a region. Although this doesn't change actual memory usage, it improves the reported usage from OpenSim and the operating system
2009-10-26 15:52:59 -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
2c34619aea
* Changed various modules to not initialize timers unless the module is initialized. Ideally, the timers would not initialize unless the module was actually enabled, but Melanie's work on configuring module loading from a config file should make that unnecessary
...
* Wrapped the Bitmap class used to generate the world map tile in a using statement to dispose of it after the JPEG2000 data is created
2009-10-23 14:22:21 -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
62f1a5e36d
Implemented a "FrontBack" prioritizer, using distance plus the plane equation to give double weight to prims/avatars in front of you
2009-10-23 02:38:59 -07:00
John Hurliman
588361e2a2
Experimental change to use an immutable array for iterating ScenePresences, avoiding locking and copying the list each time it is accessed
2009-10-23 01:02:36 -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
Melanie
c4969d47d9
Merge branch 'master' into vehicles
2009-10-22 07:12:10 +01: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
Melanie
ffd59868f5
Merge branch 'master' into vehicles
2009-10-19 21:58:51 +01: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
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
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
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
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
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
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
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
Melanie
6bdd6ae0a0
Merge branch 'master' into htb-throttle
2009-10-14 23:31:38 +01:00
Diva Canto
bea13e3709
Setting changeY in border crossing.
2009-10-14 11:01:46 -07:00
Melanie
d83ace0d3b
Merge branch 'master' into htb-throttle
2009-10-14 05:10:43 +01: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
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
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
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
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
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
Melanie
f6b8bac0fa
Merge branch 'master' into vehicles
2009-10-08 10:32:15 +01:00
John Hurliman
eb205ef4f0
Added a debug line for nebadon
2009-10-06 14:07:04 -07: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
Melanie
0374f1b144
Merge branch 'master' into vehicles
2009-10-06 17:44:59 +01: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
John Hurliman
2519f071f2
Fixing a few compile errors in the previous commit
2009-10-06 02:50:59 -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
Melanie
46955f4260
Merge branch 'master' into vehicles
2009-10-02 19:04:46 +01: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
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
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
Melanie
41ff39414b
Merge branch 'master' into vehicles
2009-10-01 14:08:15 +01: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
acfe2d9f4e
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2009-09-30 15:28:23 -07: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
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
Diva Canto
2432cc607e
Neighbours cache working.
2009-09-27 13:43:57 -07: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
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
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
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
Jeff Ames
01ec93945e
Formatting cleanup.
2009-09-13 13:56:09 +09:00
Diva Canto
ce332f235c
Changed the interface of IAuthorizationService to get less data.
2009-09-10 19:56:08 -07:00
Rob Smart
16940097be
The stubs for an authorization service, at the moment the service will always grant access to an avatar entering the region if requested.
2009-09-10 17:51:28 -07:00
Justin Clark-Casey (justincc)
f5feb25dd1
fix spurious loading... messages on iar load by creating folders as version 1 rather than version 0
2009-09-10 17:08:26 +01:00
Justin Clark-Casey (justincc)
bb1f64fe51
minor: suppress mono warning 0162 generated when comparing const RegionSize against a literal number
2009-09-09 18:09:23 +01:00
Teravus Ovares (Dan Olivares)
9a06056c9a
* Fixes a 'take object from mega region' and rez it in a regular region.. and have it appear 5 regions over bug by limiting the stored position in the asset to Constants.RegionSize. The stored position in the asset gets overwritten anyway by the rezzing routine, but at least this way, there's no chance of the objects border crossing before the rezzing routine finishes.
2009-09-08 04:43:00 -04:00
Teravus Ovares (Dan Olivares)
8797a82098
Merge branch 'master' of ssh://MyConnection/var/git/opensim
2009-09-06 16:15:20 -04:00
Teravus Ovares (Dan Olivares)
511bddc8bc
* Moves another Legacy avatar inbounds check to Border
2009-09-06 16:15:06 -04:00
Melanie
998624544c
Addendum to last commit. With the last commit, some other code that should
...
have been in this commit slipped in. If the last heartbeat is more than
2 seconds ago, kill that thread and start a new one. Untested.
his commit adds support to let the first heartbeat complete unconditionally,
since it is almost always longer.
2009-09-06 16:14:45 +01:00
Melanie
dcebbc3f1b
Remove the encryption from the IAuthenticationService interface. That
...
is too high up for that type of stuff. It needs to be at the
connector/handler level
2009-09-06 15:55:14 +01:00
Teravus Ovares (Dan Olivares)
016a648a30
* Fixes various quirks rezzing in virtual regions.
...
* Breaks up the Client event registrations in Scene into methods of similar event types. The generic event registration registers all of the event types.
*Created symmetrical Un-Registration methods.
* Made the Registration and Unregistration methods public
* Hooks The events required for creating new prim and rezzing new prim into the proper scene.
2009-09-04 20:19:34 -04:00
Jeff Ames
56ddd6828c
Add copyright headers. Formatting cleanup.
2009-09-03 02:04:17 +09:00
Teravus Ovares (Dan Olivares)
9505297fb1
* One last attempt to get the bordercrossing/primcrossing/attachmentcrossing right in the new border framework.
...
* This also contains some inactive preliminary code for disconnecting combined regions that will be used to make one root region a virtual region of a new root region.
2009-09-02 04:39:00 -04:00
Melanie
f32de6fe88
Thank you, dslake, for a set of patches to improve OpenSim startup
...
and idle performance.
2009-09-02 03:33:31 +01:00
Teravus Ovares (Dan Olivares)
2245e2977e
* The return of fuzzy borders!
2009-08-31 23:16:24 -04:00
Teravus Ovares (Dan Olivares)
c09884a467
No more fuzzy borders
2009-08-31 22:50:27 -04:00
Teravus Ovares (Dan Olivares)
2068b6714a
* -2 on the south and west side, -1 on the north and east side. Fuzzy borders! yay
2009-08-31 21:40:06 -04:00
Teravus Ovares (Dan Olivares)
b997174d08
* Fix attachment cross issues with new borders.
2009-08-31 20:07:33 -04:00