| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
constantly reused ep sender field
|
|
|
|
| |
SocketException on BeginReceive
|
|
|
|
|
|
|
|
|
| |
by the client throttle setting does not
* Old behaviour was to throw an exception on startup
* Print out client stack setting temporarly for debug purposes
|
|
|
|
|
|
|
|
|
|
|
| |
See OpenSim.ini.example for details as to what this means
* Really this should be 1, but I think that this would be too slow compared to a Second Life server until we improve our ability to send textures of variable quality
* This may improve one aspect of sim performance where there are many avatars. However, there are still other performance problems that are unrelated to this change
* Value may be further tuned
* Removed temporary decals since the multipler setting will stick around now
|
|
|
|
|
|
|
|
|
|
|
|
| |
multiplier is applied to all the client throttle settings received by the client
* This should probably be 1, but currently by default it is 8, to reflect what was being eon3 in OpenSim before this revision. So if the client requested a maximum throttle
of 1500 kilobits per second, we would actually send out 1500 kilobytes per second
* Adjusting this multiplier down towards 1 may improve your OpenSim experience, though in other situations it may degrade (e.g. if you're using a standalone over high bandwidth
links)
* This is currently a user setting because adjusting it down may currently reveal other OpenSim bugs.
|
|
|
|
| |
adjustable setting yet (and then only for debug purposes)
|
|
|
|
| |
since this is always non null
|
|
|
|
|
|
|
|
| |
ClientStackUserSettings class
* This conforms better to other module usage
|
|
|
|
|
|
| |
* Don't save attachments on saving oar, which stops them coming back as ghost prims
|
|
|
|
|
|
|
|
|
| |
print this out to the log once
* This may help us detect if mysterious UDP disconnects are happening because of this.
* Shouldn't be any functional change but I would appreciate a buddy check from Teravus if he has time (as for all client stack changes)
|
|
|
|
|
|
|
|
|
|
| |
region server wasn't told that it was coming)
* This moves authentication from the client thread (where failure was difficult to detect) to the particular thread handling that packet
* I've kept the authentication outside of the crucial clientCircuits lock (though any delay here is probably swamped by the other delays associated with login)
* Also added more to the unit test to ensure this doesn't regress
|
|
|
|
|
|
| |
* The fact that the assert passed even when authentication failed reveals a bug in the code that will be corrected soonish
|
|
|
|
|
|
| |
* If this was important to you please reinsert and we can put it in a recognized interface.
|
|
|
|
|
|
|
| |
* Not sure why things still worked in the presence of this bug - possibly the problem is compensated for later on. If you are having udp session problems this bug fix may help
(though no guarantees).
|
|
|
|
| |
synchronously. Shouldn't be any functional change
|
| |
|
|
|
|
|
| |
* Guys, there's an endless loop there *ON PURPOSE*. Please don't try to *fix* it. We must continue to process the UDP stream buffer on clients that disconnected nastily until it ends or the UDP server accept thread will die a horrible death.
|
| |
|
|
|
|
|
|
|
|
|
| |
if we are adding a client
* Regarding an earlier change, I think it would be possible to eliminate the creation of new IPEndPoints on every end receive if we did the client circuit lookup before starting
the next receive. However, this would be a performance trade off and hence not worth trying without performance testing
|
|
|
|
| |
circuitcode is already found in the first one
|
|
|
|
|
|
|
|
| |
could overwrite an existing endpoint that had not yet been used by the previous thread
* in practice these race conditions were probably pretty rare
|
|
|
|
|
|
|
| |
* This widened what I think is an existing race condition where asynchronous recieves could potentially stomp on each other's end points (though this must occur very rarely, if at
all, in reality)
|
|
|
|
|
|
|
|
| |
the existing one
* This requires copying details into a new endpoint when it needs to be stored in client/circuit code hashes
|
| |
|
|
|
|
|
|
|
|
|
| |
* This allows multiple user profile providers to be specified in OpenSim.ini separated by commas
* If multiple providers are specified then a request for a user profile will query each in turn until the profile is either found or all have been queried
* Unfortunately I don't believe this order can currently be specified, which if true is something that will need to be fixed.
* Thanks to smeans for the original patch.
|
| |
|
|
|
|
| |
immedietly.
|
|
|
|
|
|
|
| |
* Experimenting with the PacketPool mechanism.
* It's still disabled in the code, however there's now a flag to enable it.
* Converted to use Generic Collections vs Hashtables, also now uses a list of 'OK to pool' packets, starting with the high volume PacketAck packet.
|
| |
|
|
|
|
| |
actually processing that packet
|
|
|
|
|
|
|
|
| |
values for the total throttle (the one that throttles all packet output)
* Not complete yet
|
|
|
|
|
|
|
|
| |
* Switched it on by default
* Updated OpenSim.ini.example to reflect this
* Caught a UDP Server issue that occurs when the network pipe is saturated
* Still experimental :D
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Floating text, Rotation, Texture animation, Particle System
This will make "Eye Candy" scripts work without modification in
XEngine. The use of the CHANGED_REGION_RESTART hack is no longer
needed. Implemented in MySQL only, hovertext also in SQLite.
|
|
|
|
|
|
|
|
| |
process easier
* documentation
|
| |
|
|
|
|
|
|
|
| |
Thank you, Xugu Madison and ChrisDown, for a patch that
fixes linux filename extensions from .Xml back to .xml
|
|
|
|
|
|
|
| |
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point. Regular people should let the dust settle.
* This has been tested to work with most basic functions. However.. make sure you back up 'everything' before using this. It's that big!
* Essentially we're back at square 1 in the testing phase.. so lets identify things that broke.
|
|
|
|
|
|
| |
Reverted pending further discussion.
|
|
|
|
|
|
|
|
|
|
|
| |
Thank you, openlifegrid, for a patch to move new user connections to
thread pool threads.
Reworked by me to fit current trunk.
I believe that that patch may be beneficial in reducing the cases
in which regions become unresponsive and will no longer accept
new logins.
|
|
|
|
|
|
|
| |
* Unpatched code certainly looks bizarre - attempts to add a new client if we encountered a failure in processing a packet. No apparant ill effects on a sniff test.
* Thanks openlifegrid
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
error in packet creation, we just log and ignore it
* If there's a Socket.AlreadyInProgress, just silently ignore this one
* Tried to refactor the Reset and BeginRecieve logic into something a little more readable, little less duplicated
|
|
|
|
|
|
|
| |
Refactor proxy encode/decode methods out of the PacketPool into
their own class.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Actually, the exception handler seems to be a valid execution
path here, this needs some love.
|