| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
* This renders RootPart == null checks useless - the replacement is to check SOG.IsDeleted. However, in many cases this will not be necessary since updates to deleted parts
will not be sent to the client
* This should remove any remaining race conditions where an object is deleted while another thread is yet to obtain the root part to perform some operation
* Doing this is probably a necessary prerequisite to moving to a model without a separate SOG and SOP
* Unfortunately it's not possible to eliminate all RootPart == null checks since in some contexts it is currently used to check whether an object was created successfully
|
| |
|
|
|
|
|
|
| |
fromAgentSession field.
|
| |
|
|
|
|
|
|
|
|
| |
the IM module and makes it into a module of it's own, which can be used by
all other modules. Removes some ugly hacks. Refer to the IM module to see
how it's used. Also fixes the persistence issue (Mantis #2598)
|
|
|
|
|
|
| |
(added a fix for the broken build from last commit, too)
|
|
|
|
|
|
|
|
|
|
|
| |
objects better.
Objects will be persisted now MinimumTimeBeforePersistenceConsidered seconds
after the last change, but latest MaximumTimeBeforePersistenceConsidered after
the first change (both are configurable in OpenSim.ini.example and are set to
60 and 600 as default).
|
|
|
|
| |
for future common use
|
|
|
|
|
|
|
|
|
|
| |
Contains a migration. May contain nuts.
Please back up your inventory data store. This revision changes the interface
version!! No older regions can connect to these new UGAIM, and the new regions
can't connect to the old UGAIM. Fixes a long-standing issue of permissions loss
Currently persisted on MySQL only.
|
|
|
|
|
|
|
| |
Solves the problem of changes to objects not
persisted on server shutdown.
|
| |
|
|
|
|
| |
SceneGraph to make it more descriptive of its intended function
|
|
|
|
|
|
|
|
| |
region comms
* Some scene methods ignored it, others did nothing if the region handler given did not match their own (which would never be triggered)
|
|
|
|
|
|
|
|
|
| |
part of the login sequence
* This may alleviate a little the freezing experienced by existing avatars when a new client logs in
* Race condition risks look minimal since one wouldn't expect another thread to start fiddling with that presence
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
https://lists.berlios.de/pipermail/opensim-dev/2008-November/003468.html
* This is done by sending a 'major interface version' number on sim registration. Developers must increment this every time they make a change that would make the previous
OpenSim revision failure incompatible with the new one (non-fatal incompatibilities are fine).
* This number resides in OpenSim.Framework.Servers.VersionInfo.MajorInterfaceVersion
* This allows the grid service to stop older, incompatible regions from connecting
|
|
|
|
|
|
|
|
| |
will allow people who don't want megaprims in their sim to prevent them
from being created. Any prim rezzed or pulled across the border will be
clamped to the size specified in OpenSim.ini if this option is set.
|
| |
|
|
|
|
|
|
|
| |
* Decouple sog and sop by removing the need to pass the sog to the sop when it is created - most of the code was doing this operation (and hence duplicating it) anyway
* Remove unused constructors
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch addresses mantis bug 2576.
http://opensimulator.org/mantis/view.php?id=2576
Briefly, if you call llDie from many scripts at the same time (say a
build is cleaning up excess objects) then OpenSim deadlocks. Avatars
are unable to move, and whilst the console is active you can't do much
without it also locking up. This only occurs with the XEngine script
engine enabled.
I have attached a patch which works, but I'm not sure its the right way
to address the problem. The fundamental problem is that a lock on a
SceneObjectGroup's m_parts is taken when the object is deleted, a
callback to the script engine occurs and a fair way down the callchain,
potentially there are locks taken on several other SceneObjectGroup's
m_parts. Deadlock then occurs if you get unlucky enough
to get in the situation where with several llDie's are called and
SceneObjectGroups
have taken a lock on their own m_parts, and end up waiting on each
other's
locks to become available.
The patch adds a lock at a high level so that that the removal of script
instances
from an object only occurs once per scene at a time. This avoids the
potential
of deadlock. Theoretically there could be some performance hit but
AFAICT
the path taken is not a common occurrence.
Would welcome any suggestions for a better solution, otherwise feel free
to apply :-)
Note this patch was built against the 0.6.0 freeze as trunk was
rather broken for me this morning (creating a script killed the client
connection).
|
|
|
|
|
|
| |
an avatar moves.
|
|
|
|
|
|
| |
groundwork.
|
|
|
|
|
|
| |
* Changed SendInstantMessage, dropped fromAgentSession and imSessionID as security precaution, see http://opensimulator.org/wiki/OpenSim_0.6_IClientAPI#Porting_Guide for details on porting.
* Removed unused usings from Framework.*
|
|
|
|
|
|
| |
current form
|
| |
|
|
|
|
|
|
|
| |
* Was caused by the lack of a local id. Local ids are now given from the same sequence as prims, rather than a separate one
* I don't believe this will cause any problems, but please revert to a separate sequence if it does
|
| |
|
|
|
|
| |
the verb at the front
|
|
|
|
|
|
| |
* These are assigned when the object is attached to the scene
|
|
|
|
| |
scene
|
|
|
|
|
|
| |
Too many fixes to list.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
on-/offline updates, calling cards for friends.
This adds methods in the DB layer and changes the MessagingServer, so a full
update (incl. UGAIM) is necessary to get it working. Older regions shouldn't
break, nor should older UGAIM break newer regions, but friends/presence will
only work with all concerned parts (UGAIM, source region and destination
region) at this revision (or later).
I added the DB code for MSSQL, too, but couldn't test that.
BEWARE: May contain bugs.
|
|
|
|
|
|
| |
* set debug scene name on scene registration, rather than within the Scene constructor
|
|
|
|
| |
get through after the malformed ones have been sent
|
|
|
|
| |
logging messages
|
|
|
|
|
|
| |
* reinstate debug level log message indicating when a child agent is made a root for future debugging purposes
|
|
|
|
|
|
| |
a bit faster.
|
|
|
|
|
|
| |
Also add experimental distance ordering for prims
|
|
|
|
|
|
|
|
| |
Add rezzing time to objects. Add Object return and traffic fields to land
database. Add plumbing for auto return. Implement auto return.
Contains a migration. May contain nuts.
|
|
|
|
|
|
|
| |
* Implement llGetRegionFPS()
* Thanks idb
|
|
|
|
| |
descriptive of what it actually does
|
|
|
|
|
|
|
| |
- minor formatting adjustments
- remove some trailing whitespace
|
| |
|
|
|
|
|
|
|
|
| |
* Implemented a proper update thread
* Removed the UpdateLock Mutex as it's no longer needed because updates can only happen one at a time now.
* This should actually improve performance significantly.. But, see the warning on the next line!
* Warning: If there are deadlocks that the threadpool timer method was hiding, this will expose them for all the nastiness they are.
|
| |
|
|
|
|
|
|
| |
- Add support for immediate switching of Music/Media URLs. Radio-scripts should work now.
|
| |
|
|
|
|
|
|
|
| |
* I believe this was the cause of the remaining packet_out_of_order messages in the Linden client logs
* There were race conditions where multiple clientstacks would overwrite each other's sequence numbers
|