Commit Graph

14477 Commits (cd7517ccb9d522f5fecd57523285a0b17c147620)

Author SHA1 Message Date
Mic Bowman 6e9cdb9ce3 New tokenbucket algorithm. This one provides fair sharing of the queues
when client and simulator throttles are set. This algorithm also uses
 pre-defined burst rate of 150% of the sustained rate for each of the
 throttles.

Removed the "state" queue. The state queue is not a Linden queue and
appeared to be used just to get kill packets sent.
2011-04-11 09:06:28 -07:00
Mic Bowman 72a24cf023 Merge branch 'queuetest' of ssh://opensimulator.org/var/git/opensim into queuetest
Conflicts:
	OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
	OpenSim/Region/Framework/Scenes/Prioritizer.cs
2011-04-11 08:41:36 -07:00
Mic Bowman f778056c7a Removed some priority queue debugging code 2011-04-11 08:37:43 -07:00
Mic Bowman ebc249e3be Changed the "not in scene" check in the prioritizier to just
a warning. There appears to be a race condition on slow logins
that attempts to prioritize before the scene presence is fully
initialized.
2011-04-10 17:02:40 -07:00
Mic Bowman 19c6d1d569 Split the priority queue class into a seperate file. LLClientView
is big enough.
2011-04-10 16:57:02 -07:00
Mic Bowman 83dc2470f2 Fix a bug in the computation of the RTO. Basically... the RTO (the
time to wait to retransmit packets) always maxed out (no retransmissions
for 24 or 48 seconds.

Note that this is going to cause faster (and more) retransmissions. Fix
for dynamic throttling needs to go with this.
2011-04-10 16:57:02 -07:00
Mic Bowman 0bd06d8ba8 Fixed the prioritizer functions for the new priority queues 2011-04-10 16:57:02 -07:00
Mic Bowman 77cf9405de Implements adaptive queue management and fair queueing for
improved networking performance.

Reprioritization algorithms need to be ported still. One is
in place.
2011-04-10 16:57:02 -07:00
Justin Clark-Casey (justincc) 707b6673c9 minor: remove mono compiler warnings 2011-04-09 00:25:00 +01:00
Justin Clark-Casey (justincc) 2aa3984796 Update ODE for mac from source code in opensim-libs SVN library. This version is r1755 + patches as detailed in the svn logs.
This brings it into line with the Windows and Linux libraries.
This is a universal dylib with x86_64, i386 and ppc parts.  However, even on a 64 bit Intel machine Mono can only P/INVOKE the i386 version right now.  ppc is untested.
The configuration used to compile was

CFLAGS="-g -O2 -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -arch ppc" CXXFLAGS="-g -O2 -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -arch ppc" LDFLAGS="-arch i386 -arch x86_64 -arch ppc" ./configure --enable-old-trimesh --disable-asserts --enable-shared --disable-dependency-tracking --disable-demos --without-x

--disable-demos --without-x is required to build ODE on Mac OS X
CFLAGS, CXXFLAGS and --disable-dependency-tracking are necessary to build the universal dylib (some compilation lines use CFLAGS instead of CXXFLAGS)
The other settings are tweaks for using ODE with OpenSim
2011-04-08 20:50:23 +01:00
Melanie abea0c74c2 Add support for the new display name related functions in LSL. This does not
implement the display names functionality as such, but it allows scripts
that are display name aware to function as if the display name were implemented
and set to the avatar name.
2011-04-08 04:19:17 +01:00
Justin Clark-Casey (justincc) d31175060f trivial whitespace removal to trigger a panda rebuild 2011-04-08 00:42:35 +01:00
Justin Clark-Casey (justincc) 9ba787be67 Remove old SQLite library 2011-04-08 00:33:33 +01:00
Justin Clark-Casey (justincc) 0ced677510 Revert master version number to 0.7.1 for now to make merging easier. 2011-04-07 23:22:19 +01:00
Justin Clark-Casey (justincc) 9d40c0dcc7 Remove the SQLite legacy adaptor. This is no longer needed now that the main adaptor works on Mac OS X.
The SQLite legacy adapator was also not at all well maintained, even worse than the mainline sqlite adapator.
2011-04-07 23:20:04 +01:00
Justin Clark-Casey (justincc) 1b1e6f78fd Bundle a built-from-source Mac OS X sqlite3 universal dylib with OpenSim and use this instead of the system one.
This means that Mac OS X users can now use the standard sqlite adaptor instead of the legacy one.
This is SQLite 3.7.5.  I configured the build with the line

CFLAGS="-Os -g -isysroot /Developer/SDKs/MacOSX10.6.sdk -arch i386 -arch x86_64 -arch ppc7400 -DSQLITE_ENABLE_COLUMN_METADATA" LDFLAGS="-arch i386 -arch x86_64 -arch ppc7400" ./configure --disable-dependency-tracking

The SQLITE_ENABLE_COLUMN_METADATA flag exports the metadata symbols that modern Mono SQLite adaptors need.
The -Os removes debugging symbols (as per the sqlite3 source pkg README)
The other parts are to cross compile for x86_64, i386 and ppc.  On Mac OS X, Mono can actually only P/INVOKE 32-bit libraries even on 64 bit platforms so i386 is being used.  The dylib has not been tested on ppc.
2011-04-07 21:44:54 +01:00
Justin Clark-Casey (justincc) a6b1927cff bump main branch version number to 0.7.2. A separate 0.7.1-post-fixes branch now exists. 2011-04-06 22:05:07 +01:00
Justin Clark-Casey (justincc) 9bc2705f37 Fix bug where on duplication, the root part local id was continually used in populating the local id scene object index instead of each part's local id 2011-04-06 20:52:36 +01:00
Justin Clark-Casey (justincc) 8318915d7e Signal prim count taint if the AbsolutePosition of a scene object changes.
This updates prim counts correctly if an object is moved by something other than an avatar (e.g. scripts, region modules)
Create TestMoveOwnerObject() regression test for this case.
2011-04-06 20:48:00 +01:00
Justin Clark-Casey (justincc) 63533412f8 Improve previous ILandObject method doc.
For test code, take a part name prefix when creating objects, so that these can be more easily identified in the logs
2011-04-06 18:57:50 +01:00
Justin Clark-Casey (justincc) fa202a05e9 Add method doc to some land bitmap methods in ILandObject.
Also changes prim count tests to use the correct upper region bounds, though the method actually ignores the overage.
2011-04-06 17:19:31 +01:00
Justin Clark-Casey (justincc) 2497962360 Change some text to make the autoreturn mechanism more obvious, and align with the fact that it's one word rather than two. 2011-04-05 22:25:00 +01:00
Justin Clark-Casey (justincc) acacee98c6 properly refresh object owner list when refresh button is hit on land parcel object tab 2011-04-05 22:15:06 +01:00
Justin Clark-Casey (justincc) 0e465da187 remove now unused individual LandData prim counts.
However, the calls to the land management module to record prims need to remain, since they were also being used to return owner object lists, etc.
This is probably why prim counts were being done there in the first place.
2011-04-05 21:25:54 +01:00
Justin Clark-Casey (justincc) f030ba8992 replace magic numbers in llGetParcelPrimCount() with constants 2011-04-05 20:39:58 +01:00
Justin Clark-Casey (justincc) dc6ce24443 switch llGetParcelPrimCount() to use new prim counts module 2011-04-05 20:31:52 +01:00
Justin Clark-Casey (justincc) 3d400fc663 If an object is selected, then don't include it in owner/group/others prim counts.
This fixes the total prim count that the viewer displays when prims are selected - it appears to ignore the total that we pass it and adds up the counts separately.
2011-04-05 18:24:23 +01:00
Justin Clark-Casey (justincc) c1dec225ab Handle the client's parcel info requests asynchronously rather than synchronously.
Handling these synchronously kills the inbound packet loop if many requests are made for remote land and those requests are handled slowly or timeout (timeout is 10s)
This can happen if a user searches for "land for sale" and then clicks many of the parcels in the list (or just presses down arrow to move through every entry).
2011-04-05 17:47:11 +01:00
Teravus Ovares (Dan Olivares) 18e206d2ed * Bugfix - Compile NullEstateData implement public List<int> IEstateDataStore.GetEstatesByOwner(UUID) 2011-04-04 23:45:28 -04:00
Mic Bowman d5e0674213 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-04-04 20:04:01 -07:00
Mic Bowman b2fbadeae8 Updates NullStorage plugin.
Thanks MisterBlue...
2011-04-04 20:02:13 -07:00
Justin Clark-Casey (justincc) f58941e89f Make the "All Estates" option work from the client (this makes chosen changes to all the estates that the user owns).
This applies to adding/removing estate users, groups, managers and bans.
This is the application of the AllEstates_0.5.patch from http://opensimulator.org/mantis/view.php?id=5420
Thanks very much, Snoopy!
2011-04-05 01:30:13 +01:00
Mic Bowman 65af4bacc9 Merge branch 'queuetest' of ssh://opensimulator.org/var/git/opensim into queuetest
Conflicts:
	OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
	OpenSim/Region/Framework/Scenes/Prioritizer.cs
2011-04-04 14:25:21 -07:00
Mic Bowman 8b134f37f2 Fix a bug in the computation of the RTO. Basically... the RTO (the
time to wait to retransmit packets) always maxed out (no retransmissions
for 24 or 48 seconds.

Note that this is going to cause faster (and more) retransmissions. Fix
for dynamic throttling needs to go with this.
2011-04-04 14:18:26 -07:00
Mic Bowman 15c4bbea59 Fixed the prioritizer functions for the new priority queues 2011-04-04 13:19:45 -07:00
Mic Bowman 6885b7220c Implements adaptive queue management and fair queueing for
improved networking performance.

Reprioritization algorithms need to be ported still. One is
in place.
2011-04-04 11:41:07 -07:00
Melanie adb14ad20a Implement rezzing coalesced objects 2011-04-03 20:32:04 +01:00
Melanie a4b3439025 Implement rezzing coalesced objects 2011-04-03 20:26:18 +01:00
Melanie b385d4aa03 Implement taking of coalesced objects.
WARNING!!!!!
You can TAKE them, but you can't REZ them again. Only the first of the contained
objects will rez, the rest is inaccessible until rezzing them is implemented.
Also, rotations are not explicitly stored. This MAY work. Or not.
2011-04-03 20:24:44 +01:00
Melanie e8e940e33e Make CHANGED_OWNER work for deeding and god-mode in-world change 2011-04-03 14:16:41 +01:00
Justin Clark-Casey (justincc) 4f56c732bc Comment out some startup logging lines to make up for the one I added earlier on.
Most of these are where the region modules are telling us they are disabled.  Convention is only to log when enabled (even that is really noisy)
2011-04-02 02:29:42 +01:00
Justin Clark-Casey (justincc) 7bba0177fe If land is not group owned (group ID is always UUID.Zero) then don't check if a prim should be added to the group count 2011-04-02 01:53:47 +01:00
Justin Clark-Casey (justincc) 8e668abc6d add test for removing group owned objects 2011-04-02 01:46:06 +01:00
Justin Clark-Casey (justincc) 01b399055b add test for adding group object, factor out initial zero counts test 2011-04-02 01:37:46 +01:00
Justin Clark-Casey (justincc) c13502a5cf add remove others object prim count test 2011-04-02 01:15:17 +01:00
Justin Clark-Casey (justincc) 2c86f6ba7d refactor: rename m_dummyUserId to m_otherUserId 2011-04-02 01:13:10 +01:00
Justin Clark-Casey (justincc) 5b0936d4b5 If the land has no group ownership (it is UUID.Zero) then don't put prims in the group count when they are also not group owned.
Also adds simple test for others owned count when an object is added
2011-04-02 01:07:52 +01:00
Melanie 3a113f9902 A stab at making CHANGED_OWNER work 2011-04-01 22:04:29 +01:00
dahlia e974fde953 check threat configuration for LSL print() 2011-03-31 22:56:04 -07:00
dahlia 8c8a0a182e implement LSL "print()" API function 2011-03-31 21:14:53 -07:00