Commit Graph

1596 Commits

Author SHA1 Message Date
Melanie
4b979362e9 Add some safeguards: DOn't send someone else's HUDs, don't send deleted prims
Removed some unneccessarily wordy core comments
2010-12-04 14:41:57 +01:00
Melanie
342dc532ec Merge branch 'master' into careminster-presence-refactor
Also prevent god takes from ending up in Lost and Found
2010-12-03 02:36:13 +00:00
Justin Clark-Casey (justincc)
5246d98b8d Stop LLUDPServer sending updates after object deletes by always queueing deletes
If an LL 1.23.5 client (and possibly earlier and later) receives an object update after a kill object packet, it leaves the deleted prim in the scene until client relog
This is possible in LLUDPServer if an object update packet is queued but a kill packet sent immediately.
Beyond invasive tracking of kill sending, most expedient solution is to always queue kills, so that they always arrive after updates.
In tests, this doesn't appear to affect performance.
There is probably still an issue present where an update packet might not be acked and then resent after the kill packet.
2010-12-02 02:01:01 +00:00
Justin Clark-Casey (justincc)
26569a7cd0 minor: add some method doc 2010-12-02 02:01:01 +00:00
Melanie
2bee150aac Implement health monitoring of the packet receiving and sending threads 2010-11-28 20:45:03 +01:00
Melanie
4765fd9cd0 Remove hard limit on prim owners. The new LibOMV autosplits packets to
prevent overflow
2010-11-27 19:31:18 +01:00
Melanie
164007dd00 Merge branch 'master' into careminster-presence-refactor 2010-11-18 19:06:09 +00:00
Justin Clark-Casey (justincc)
c4f3175e17 add "Unacked bytes" column to "show queues"
This should show the number of bytes sent to the client that it has not yet acknowledged.
2010-11-17 22:55:19 +00:00
Justin Clark-Casey (justincc)
2a17c39dfe Fix "show queues" console command
For each agent, this command shows how many packets have been sent/received and how many bytes remain in each of the send queues (resend, land, texture, etc.)
Sometimes useful for diagnostics
2010-11-17 22:55:19 +00:00
Melanie
43c270b536 Fix gesture and viewer preview sounds not playing 2010-11-17 18:20:24 +00:00
Melanie
2e5ae1b013 Fix gesture and viewer preview sounds not playing 2010-11-17 17:54:32 +01:00
Melanie
c4eb430ad2 Merge branch 'master' into careminster-presence-refactor 2010-11-16 21:15:15 +00:00
Justin Clark-Casey (justincc)
1e7334d985 provide avatar name in log if an exception ends up at the top of an async packet processing stack 2010-11-12 23:20:07 +00:00
Melanie
ee85a530f6 Merge branch 'master' into careminster-presence-refactor 2010-11-09 22:16:48 +00:00
Jeff Ames
ae9c4a4d11 Formatting cleanup. 2010-11-08 07:48:35 -05:00
Melanie
7844872067 Fix merge artefacts 2010-11-05 14:46:13 +01:00
Melanie
ddd3c6824a Revert "Spin the AddNewClient process off into a new thread to avoid locking up the LLUDPServer (and therefore the entire scene)"
This reverts commit 40e05f4109.

Conflicts:

	OpenSim/Region/ClientStack/LindenUDP/LLUDPServer.cs
2010-11-05 14:27:53 +01:00
Melanie
f985775962 Revert "Fix for hanging on "Connecting to region".. caused by packets being processed before the presence has bound to receive events. Fixed this by adding packets to a queue and then processing them when the presence is ready."
This reverts commit 91b1d17e5b.

Conflicts:

	OpenSim/Client/Sirikata/ClientStack/SirikataClientView.cs
	OpenSim/Region/ClientStack/LindenUDP/LLClientView.cs
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-11-05 14:27:14 +01:00
Melanie
26f12f479f Merge branch 'master' into careminster-presence-refactor 2010-11-02 22:58:33 +00:00
Melanie
e98d8d500f Fix logins and avatar appearance. Contains a Migration. May contain nuts.
This will cause visual params to be persisted along with worn items. With
this, alpha and tattoo laters will be saved. Multiple layers MAY work, but
not tested because I don't use Viewer 2.
2010-10-30 19:06:47 +01:00
Melanie
46362cd1c0 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-10-30 00:56:58 +01:00
Justin Clark-Casey (justincc)
343c894658 Set async_packet_handling = true by default
Setting this to true avoids a 500ms or so client freeze when the LLUDP server thread is taken up with processing a UseCircuitCode packet synchronously.
Extensive testing on Wright Plaza appeared to show no bad effects and this seems to reduce login lag considerably.
Of course, a lot of login lag is still coming from other sources.
2010-10-30 01:35:12 +01:00
Melanie
7503c4ad61 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-10-30 00:56:42 +01:00
Melanie
818ed2032a READ CAREFULLY!!! This is a BROKEN commit. It is UNTESTED and INCOMPLETE.
It contains a major interface version bump and will NOT work with earlier grid
services. This is preliminary work that will lead to layers support.
Rest appearance services are commented out completely, they will have to be
adapted by someone who actually uses them. Remote admin is working, but has
no layers support. There is no layers support in the database. Login likely
won't work. You have been warned.
2010-10-30 00:41:36 +01:00
Justin Clark-Casey (justincc)
abcde41c0d Merge branch 'justincc-dev' 2010-10-29 23:15:35 +01:00
Justin Clark-Casey (justincc)
f19816aeb9 Add number of ms it takes to complete UseCircuitCode packet handling to log for diagnostics 2010-10-29 21:38:26 +01:00
Melanie
05d2302c62 Merge branch 'dev-appearance' 2010-10-29 20:24:14 +01:00
Melanie
9331898c32 Merge branch 'master' into careminster-presence-refactor 2010-10-29 20:40:48 +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
Justin Clark-Casey (justincc)
21187f459e Merge remote branch 'otakup0pe/mantis5110' 2010-10-22 23:35:07 +01:00
Jonathan Freedman
d4144bedb8 * change the data exchanged within hypergrid transactions 2010-10-21 23:22:15 -04:00
Melanie
28c4dd7931 Merge branch 'master' into careminster-presence-refactor 2010-10-21 20:26:29 +01:00
Diva Canto
fe99f194ad Deleted a verbose and unneeded log message. 2010-10-21 12:00:30 -07: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
52dd547863 Make SendKillObject send multiple localIDs in one packet. This avoids the
halting visual behavior of large group deletes and eliminates the packet flood
2010-10-08 11:31:52 +02:00
Melanie
f89dd85f68 Fix a comment marker 2010-10-04 00:17:48 +01:00
Melanie
766ce9a141 Add linden prim renderer and update libOMV 2010-10-04 00:10:08 +01:00
Melanie
90f9b7b7c4 Fix line endings 2010-10-04 00:37:18 +02:00
Melanie
50b03d08a8 Add linden prim renderer and update libOMV 2010-10-04 00:04:42 +02:00
Melanie
e32855d080 Merge branch 'master' into careminster-presence-refactor 2010-09-17 03:57:15 +01:00
Melanie
256c8cb62d Send kill packets for avatars, too 2010-09-17 03:56:31 +01:00
Melanie
7df4383235 Merge branch 'master' into careminster-presence-refactor
Integrate the next large patch.
Don't use this version, it has a ghost avatar issue. Next push
will fix it.
2010-09-17 03:49:30 +01:00
Justin Clark-Casey (justincc)
5072429263 Send KillPackets on the Task queue rather than the State queue
Object updates are sent on the task queue.  It's possible for an object update to be placed on the client queue before a kill packet comes along.
The kill packet would then be placed on the state queue and possibly get sent before the update
If the update gets sent afterwards then client get undeletable no owner objects until relog
Placing the kills in the task queue should mean that they are received after updates.  The kill record prevents subsequent updates getting on the queue

Comments state that updates are sent via the state queue but this isn't true.  If this was the case this problem might not exist.
2010-09-17 01:16:21 +01:00
Melanie
58b1ee8e2c Merge branch 'master' into careminster-presence-refactor 2010-09-16 18:04:50 +01:00
Justin Clark-Casey (justincc)
7383173d3d extend m_entityUpdates.SyncRoot lock in LLClientView.ProcessEntityUpdates() to reduce scope for kill/update race conditions
This is necessary because it was still possible for an entity update packet to be constructed, the thread to pause, a kill to be sent on another thread, and then the original thread to resume and send the update
This would result in an update being received after a kill, which results in undeletable ghost objects until the viewer is relogged
Extending the lock looks okay since its only taken by kill, update and reprioritize, and both kill and update do not take further locks
However, evidence suggests that there is still a kill/update race somewhere
2010-09-15 23:06:38 +01:00
Melanie
1212cb0c74 Merge branch 'master' into careminster-presence-refactor 2010-09-14 22:03:42 +01:00
Justin Clark-Casey (justincc)
fbe72e30eb Improve generic message exception logging. Quieten down complaints about unhandled GenericMessages 2010-09-13 21:52:36 +01:00
Justin Clark-Casey (justincc)
e4858b0eeb Add client name to packet resend log messages to make them a bit more informative 2010-09-13 21:29:04 +01:00
Melanie
6a1ce17cdb Merge branch 'master' into careminster-presence-refactor
The modules will need to be updated for this to compile and run again. Please
don't use until I do the companion commit to modules later on.
2010-09-13 16:17:38 +01:00
John Hurliman
c03b24cbfd Merged 2010-09-12 14:21:51 -07:00