| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
lock handler. This gives us:
- Faster prim inventory actions. Multiple threads can read at once.
- Fixes the known prim inventory thread locks
- In the event of a thread lock occurring, it will usually self heal after sixty seconds with an error message in the console
|
|\ |
|
|\ \
| |/ |
|
| |
| |
| |
| | |
normally again.
|
| |
| |
| |
| | |
one fixes the situation where the object on the server is moving but no updates are being sent.
|
|\ \ |
|
| |/
| |
| |
| | |
the event of a terse update being rejected - Re-add a synchronous SendTo for certain types of packets
|
| |
| |
| |
| |
| |
| | |
AttachPoint
* LLClientView.CreateImprovedTerseBlock() now uses AttachPoint and does the proper high-low swap (this should fix disappearing attachment pieces)
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
* Change the PhysicsCollision callback for objects to send full contact point information. This will be used to calculate the collision plane for avatars
* Send the physics engine velocity in terse updates, not the current force being applied to the avatar. This should fix several issues including crouching through the floor and walking through walls
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| |
| |
| | |
drifting prims/avatars
* Added contacts_per_collision to the ODE config section. This allows you to reduce the maximum number of contact points ODE will generate per collision and reduce the size of the array that stores contact structures
|
| |
| |
| |
| | |
avoid floating away forever until a key is pressed (deviates from SL behavior in a hopefully good way)
|
|\ \
| |/
| |
| |
| |
| |
| | |
Conflicts:
OpenSim/Region/Physics/Manager/PhysicsActor.cs
OpenSim/Region/Physics/OdePlugin/ODEPrim.cs
|
| |
| |
| |
| | |
mitigate some of the rubberbanding issues while we are sending incorrect time dilation values
|
| | |
|
| |
| |
| |
| |
| |
| | |
in faster than the surrounding scene
* Adds duplicate tracking for SceneObjectParts and ScenePresences to avoid sending out duplicate ImprovedTerseObjectUpdate packets
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
avoiding locking and copying the list each time it is accessed
|
|/ |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
implements a simple distance prioritizer based on initial agent positions. Re-prioritizing and more advanced priority algorithms will follow soon
|
| |
| |
| |
| |
| |
| |
| |
| | |
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)
|
|\ \
| |/ |
|
| | |
|
|\ \
| |/ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
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>
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
|
|
|
| |
murky. This affects Mono only.
|
| |
|
|\
| |
| |
| | |
inventory-connector
|
| | |
|
|/ |
|
| |
|
|
|
|
|
| |
Moved the Close() for the appdomain-hosted parts into a new destructor
on ScriptInstance.
|
|
|
|
|
| |
This matches behavior seen with an earlier attempt to do this, apparently
the sponsor mechanism does't work in Mono
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|Date: Wed, 5 Aug 2009 09:51:52 -0700
|Subject: [PATCH] Closed two major memory leaks for scripted objects
|
|Two major memory leaks for the scripted objects were fixed
|- One leak had to do with remoting acrossing app domains. When a script and
| its controlling agent communicate across an application boundary, it calls
| functions on a stub proxy object that then invokes the remote method on
| the object in the other app domain. These stub objects (two for each script)
| were setup to have infinate lifetimes and were never being garbage collected.
|- The second leak was the result of adding a scene object part instance method
| to a scene event and never removing it. This cause the event's delegate list
| to maintain a link to that object which is then never freed as the scene event
| object is never destroyed.
Patch applied, please direct feedback to me. Possible issue: Longtime idle
scripts like vendors may fail.
|
|
|
|
| |
allow final deletion of objects. Meant to support the attach(NULL_KEY) event,
|