Commit Graph

1478 Commits

Author SHA1 Message Date
Jonathan Freedman
45cd2e3ef9 Merge branch 'master-core' into mantis5110 2010-12-05 11:49:15 -08: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
Jonathan Freedman
b7f5e82843 Merge branch 'master-core' into mantis5110 2010-11-21 20:01:48 -08:00
Jonathan Freedman
562147475c Merge https://github.com/opensim/opensim into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2010-11-21 19:51:23 -08: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
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
Jeff Ames
ae9c4a4d11 Formatting cleanup. 2010-11-08 07:48:35 -05:00
Jonathan Freedman
95a0ea78f9 Merge branch 'master' into mantis5110 2010-10-30 18:28:07 -04:00
Jonathan Freedman
e371d3208c Merge branch 'master' into mantis5110
Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Services/Connectors/Simulation/SimulationServiceConnector.cs
2010-10-30 14:10:13 -04: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
Jonathan Freedman
9e7d3e0f25 Merge branch 'master' into mantis5110 2010-10-29 23:59:16 -04:00
Jonathan Freedman
d219317074 Merge branch 'master' into mantis5110
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2010-10-29 23:12:51 -04: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
Master ScienceSim
f2c1d0e34f Merge branch 'opensim-master' into dev-appearance 2010-10-28 09:09:42 -07: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
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
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
256c8cb62d Send kill packets for avatars, too 2010-09-17 03:56:31 +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
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
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
John Hurliman
c03b24cbfd Merged 2010-09-12 14:21:51 -07:00
John Hurliman
0db1ed0b5a * Added ISimulationDataService and IEstateDataService
* Removed StorageManager
* CONFIG CHANGE: There are no more database settings in OpenSim.ini. Check the config-include configuration files for region store and estate store database settings
2010-09-12 14:20:26 -07:00
Jeff Ames
f1f0bc23f4 Formatting cleanup. 2010-09-12 13:43:49 -04:00
Melanie
47a5e2633c Prevent child agents from being blacklisted in the kill record. 2010-09-11 20:24:14 +01:00
John Hurliman
0bebe94231 Rolling back the recent libomv update but keeping the ExpiringCache cleanups (as much as is possible). There was a report of non-finite avatar positions after the update 2010-09-07 15:45:33 -07:00
John Hurliman
9be1c0ff44 * Cache null account responses in the SimianUserAccountServiceConnector to avoid repeated requests for missing avatar IDs
* Updated to OpenMetaverse r3442 to fix a timezone issue with ExpiringCache
2010-09-07 14:41:13 -07:00
Melanie Thielker
6a0a878f7c Remove "Dwell" support from core and replace it with calls to methods
on IDwellModule
2010-09-05 14:28:33 +01:00
Melanie Thielker
ed72396d9b Show when appearance is sent to an avatar to help track down failure
\to display avatars
2010-09-02 19:59:12 +01:00
Justin Clark-Casey (justincc)
b8c58e5f9f reinsert functionality to debug log more levels of incoming and outgoing client protocol packets
These levels correspond to packets that one isn't usually interested in when debugging (e.g. regular outgoing SimStats packets)
This is equivalent to what we had a year ago before it was removed.  It's extremely crude since it doesn't allow one to pick individual clients or packets.  However, it can still be useful when debugging packet race conditions.
2010-08-31 18:27:10 +01:00
Jonathan Freedman
0a83fde85c Implements parcel media setting persistence and packet / CAPS handling
properly for the new media settings.

Signed-off-by: Melanie <melanie@t-data.com>
2010-08-30 02:07:55 +01:00
Justin Clark-Casey (justincc)
374807d194 Replace hardcoded 0 with KickFlags provided by the client.
This finally completes http://opensimulator.org/mantis/view.php?id=4356 where this change had been accidentally removed.  Thanks Revolution.
2010-08-28 02:45:28 +01:00
Melanie
1f1d72eba5 Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2010-08-26 23:39:20 +01:00
Melanie
5b4e0b72bc Send a null result search packet when no results are passsed in 2010-08-26 23:38:35 +01:00
Justin Clark-Casey (justincc)
d99c60164d Reinstate kill record check that prevents an entity update being sent to a client after it has been told that the entity has been deleted.
On Linden Lab clients and some derivatives, receiving an entity update after an entity deletion notice results in an undeleteable prim that disappears upon client relog.
This check was dropped in 0.7 for unknown reasons but renewed testing demonstrates that queued updates can still be present after a scene object has been deleted.
2010-08-26 16:06:34 +01:00
Melanie
de85aabcbe Plumb the region type through to the ProductName field in estate messages 2010-08-24 12:41:21 +01:00