To JustinCC<br><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Yeah, there is a mechanism in the inventory code that other functions<br>
use to complete execution only when the inventory is received (such as<br>
opening a folder, at least under UDP rather than CAPS). The appearance<br>
mechanism should probably use that. Probably everything should be<br>
using that mechanism (rather than just checking if RootFolder != null<br>
which I suspect is what is currently being done).<br><div class="Ih2E3d"></div></blockquote><div><br>What you said is correct, but making request synchronous is not the main point<br>of this problem. (Even though it LOOKs like that appearance persistence works if the <br>
"getinventory" is synchronous)<br><br>I think the main problem is:<br>we are using(in function TryGetAvatarAppearance) the data(wearable uuids) which we<br>don't trust(in function SetAppearanceAsset).<br><br>
we have to do some work to let us feel safe to use our data.<br>the "check" should be done when the data is updated(inserted), not after selected.<br><br>and another sub-problem is:<br>appearance and inventory has close relationship, but they are stored in separated<br>
servers.<br><br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">
><br>
> *NOTE*: as I tested, in windows there is no timing problem, Line19:<br>
> "getinventory" in windows is SYNC. :@<br>
><br>
> ---------------------------------------<br>
> 1| 20:20:13 - [CONNECTION DEBUGGING]: Expect User called, starting<br>
> agent setup ...<br>
> 2| 20:20:13 - [CONNECTION DEBUGGING]: Main agent detected<br>
> 3| 20:20:13 - [CONNECTION DEBUGGING]: Triggering welcome for<br>
> e8738a41-d260-4030-9b54-31688164b260 into 10996215791947776<br>
> 4| 20:20:13 - [CAPS]: Setting up CAPS handler for root agent<br>
> e8738a41-d260-4030-9b54-31688164b260 in WolfDrawer<br>
> 5| 20:20:13 - [CONNECTION DEBUGGING]: Creating new circuit code<br>
> (1590320709) for avatar e8738a41-d260-4030-9b54-31688164b260 at WolfDrawer<br>
> 6| 20:20:13 - [OGS1 GRID SERVICES]: Welcoming new user...<br>
> 7| 20:20:15 - [CAPS]: Seed Caps Request in region: WolfDrawer<br>
> 8| 20:20:15 - [UDPSERVER]: Adding New Client<br>
> 9| 20:20:15 - [CLIENT]: Started up new client thread to handle incoming<br>
> request<br>
> 10| 20:20:15 - [CLIENT]: Got authenticated connection from<br>
</div>> <a href="http://219.106.248.145:62864" target="_blank">219.106.248.145:62864</a> <<a href="http://219.106.248.145:62864" target="_blank">http://219.106.248.145:62864</a>><br>
<div><div></div><div class="Wj3C7c">> 11| 20:20:15 - [CLIENT]: Adding viewer agent to scene<br>
> 12| 20:20:15 - [CONNECTION DEBUGGING]: Creating new client for<br>
> e8738a41-d260-4030-9b54-31688164b260 at WolfDrawer<br>
> 13| 20:20:15 - [REGION]: Add New Scene Presence<br>
> 14| 20:20:15 - [APPEARANCE]: appearance not found for<br>
> e8738a41-d260-4030-9b54-31688164b260, creating default<br>
> 15| 20:20:15 - [APPEARANCE]: Appearance not found, creating default<br>
> 16| 20:20:15 - [SCENE]:WolfDrawer: Creating new child agent.<br>
> 17| 20:20:16 - [GROUP]: Adding lulu run to OpenSimulator Testing<br>
> 18| 20:20:17 - [CLIENT]: Entered loop<br>
> 19| 20:20:17 - [OGS1 INVENTORY SERVICE]: Requesting inventory from<br>
> <a href="http://osgrid.org:8004/GetInventory/" target="_blank">http://osgrid.org:8004/GetInventory/</a> for user<br>
> e8738a41-d260-4030-9b54-31688164b260<br>
> 20| 20:20:17 - [SUN]: Initial update for new client<br>
> 21| 20:20:17 - [FRIEND]: Claiming lulu run in region:10996215791947776.<br>
> 22| 20:20:17 - [CAPS]: Setting up CAPS handler for root agent<br>
> e8738a41-d260-4030-9b54-31688164b260 in WolfDrawer<br>
> 23| 20:20:18 - [OSG1 USER SERVICES]: Successfully updated user record<br>
> 24| 20:20:18 - [APPEARANCE]: appearance not found for<br>
> e8738a41-d260-4030-9b54-31688164b260, creating default<br>
> 25| 20:20:18 - [APPEARANCE]: Appearance not found, creating default<br>
> 26| 20:20:19 - [OGS1 INVENTORY SERVICE]: Received inventory response for<br>
> user e8738a41-d260-4030-9b54-31688164b260 containing 15 folders and 4 items<br>
> 27| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 28| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 29| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 30| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 31| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 32| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 33| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 34| 20:20:21 - [INTERGRID]: Starting to inform client about neighbours<br>
> 35| 20:20:21 - [APPEARANCE]: Sending Appearance to All Other Agents<br>
> 36| 20:20:21 - [CLIENT]: unhandled AgentHeightWidth packet<br>
> 37| 20:20:21 - [CLIENT]: unhandled MuteListRequest packet<br>
> 38| 20:20:22 - [CLIENT]: unhandled AgentHeightWidth packet<br>
> 39| 20:20:22 - [APPEARANCE]: Sending Own Appearance<br>
><br>
><br>
> --<br>
> Liu Xiaolu<br>
><br>
><br>
</div></div>> ------------------------------------------------------------------------<br>
<div class="Ih2E3d">><br>
> _______________________________________________<br>
> Opensim-dev mailing list<br>
> <a href="mailto:Opensim-dev@lists.berlios.de">Opensim-dev@lists.berlios.de</a><br>
> <a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br>
<br>
<br>
</div><font color="#888888">--<br>
justincc<br>
Justin Clark-Casey<br>
<a href="http://justincc.wordpress.com" target="_blank">http://justincc.wordpress.com</a><br>
</font><div><div></div><div class="Wj3C7c">_______________________________________________<br>
Opensim-dev mailing list<br>
<a href="mailto:Opensim-dev@lists.berlios.de">Opensim-dev@lists.berlios.de</a><br>
<a href="https://lists.berlios.de/mailman/listinfo/opensim-dev" target="_blank">https://lists.berlios.de/mailman/listinfo/opensim-dev</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Liu Xiaolu