Simulator User Group/Transcripts/2012.10.30

Simulator_User_Group
Prev 2012.10.26	Next 2012.11.02
== List of Speakers ==
Andrew Linden 	Baker Linden 	Duckie Dickins
Lexbot Sinister 	Lucia Nightfire 	Nalates Urriah
Qie Niangao 	Rex Cronon 	Simon Linden
Tankmaster Finesmith	Techwolf Lupindo	Theresa Tennyson
WhaleGod 	Yuzuru Jewell 	
== Transcript ==
[12:05] Simon Linden: I can start with release news, which is that we didn't release anything new today. The update for the main channel was pushed back a day and should be done tomorrow morning
[12:05] Tankmaster Finesmith: next month theres going to be both a lunar and a solar eclipse
[12:05] Simon Linden: The RC updates are also pushed back one day to Thursday
[12:05] Lexbot Sinister: uh oh, that doesn't sound too good, with the halloween events inworld going on.
[12:05] Tankmaster Finesmith: hi baker
[12:06] Nalates Urriah: If there is a lunar elcipse what is eclipsing the sun?
[12:06] Simon Linden: That's a good point, Lex. I'll mention that later today at a meeting about the updates
[12:06] Baker Linden: Hello Tank, everyone
[12:06] Rex Cronon: hi baker
[12:06] Tankmaster Finesmith: they are 2 weeks apart, nal
[12:06] Simon Linden: The forum about the releases is in the usual place: http://community.secondlife.com/t5/Second-Life-Server/bd-p/SecondLifeServer
[12:06] Nalates Urriah: oh... that makes sense then...
[12:07] Baker Linden: My news is that large group stuff seems to be working moderately well since its release on the Snack RCs
[12:07] Nalates Urriah: Yay Baker
[12:07] Baker Linden: There are a couple bugs, and while fairly major bugs, they should be fixed when we can integrate Simon and Kelly's changes to the HTTP request queue
[12:08] Baker Linden: I have their code merged with mine on a region on Aditi, and everything seems to work, albeit with a few lag issues here and there
[12:08] Simon Linden: That _should_ be going in to the RC on Thursday, but things have been shaken up this week as I mentioned so it's a little tenious
[12:08] Rex Cronon: nalates. the moon is in earths shadow
[12:09] Simon Linden: That's it for news,I think, so the table is open for topics or questions
[12:10] Theresa Tennyson: Baker - you mentioned lag issues - with group loading or with the sim?
[12:10] Baker Linden: group loading
[12:11] Theresa Tennyson: Cool. Those we can deal with.
[12:11] Baker Linden: the issue right now is that the group name, description, and other things don't load right now on the Snack RC's
[12:11] Baker Linden: there may still be some lag when loading those with Simon and Kelly's changes, but they should work -- they did on my testing on Aditi this morning
[12:12] Tankmaster Finesmith: any code update to the viewer?
[12:12] Baker Linden: no, thanksfully
[12:12] Tankmaster Finesmith: nice ?
[12:13] Qie Niangao: Speaking of sim lag, I wonder if we can learn any more about the cause of BUG-355, Toysoldier Thor's bug about anomalous network performance. I gather that Friday it was mentioned as something that may be fixed in an RC this week; not sure how fervently to hope for that.
[12:14] Simon Linden: I would hang onto the RC as a thread of hope, but not feverently
[12:14] Theresa Tennyson: Have you figured out what's happening with that yet?
[12:15] Qie Niangao: hehehe... okay. It would be some relief if we had a bit more handle on what's happening to cause the problem.
[12:15] Andrew Linden: Hello, sorry I'm late. I was in a meeting that went over.
[12:15] Qie Niangao: Hi Andrew.
[12:15] Rex Cronon: hi andrew
[12:15] Simon Linden: I think those reports cover a couple of different issues, Theresa
[12:17] Simon Linden: Hi Andrew - we covered the simulator news for releases and the table is open now
[12:18] Andrew Linden: Ok, well the only news I've got is about my interestlist work.
[12:18] Andrew Linden: I fixed some of the bugs that would cause some linked objects to not fully show up (missing child prims)
[12:19] Andrew Linden: and am now tracking down a performance problem... turns out I'm triggering FULL updates whenever an avatar moves, rather than just TERSE updates
[12:19] Andrew Linden: so the performance for a crowd of avatars is much worse in my code.
[12:19] Andrew Linden: This (broken) code is currently up on Ahern on the beta grid (aditi).
[12:19] TankMaster Finesmith: minor issue :D
[12:19] Andrew Linden: And I'll be updating it as I fix stuff.
[12:20] Rex Cronon: terse updates? they update less things in interest list?
[12:20] Andrew Linden: My hope is measurable performance improvements in how the interestlist works, maybe some correctness improvements too.
[12:20] Techwolf Lupindo grins
[12:21] Techwolf Lupindo: I"ll be testing that somewhat.
[12:21] Andrew Linden: The "terse" updates are smaller (have less data).
[12:21] Andrew Linden: So they are cheaper to assemble and send.
[12:21] Andrew Linden: fin
[12:22] Andrew Linden: Oh btw, I actually updated the transcripts for the past months worth of meetings last Friday. I'm back on the wagon.
[12:22] Rex Cronon: :)
[12:22] TankMaster Finesmith: \o/
[12:22] Techwolf Lupindo: :-)
[12:22] Qie Niangao: yay!
[12:23] Andrew Linden: Which reminds me... Simon, if you could send me the transcript for this meeting (the first half at least) I'll try to post the transcript today.
[12:24] Simon Linden: sure, I can send it now
[12:24] Rex Cronon: maybe the sim should determine whether or not to send a full update, otherwise the viewer can request one every second
[12:24] Andrew Linden: Rex, the simulator does decide whether to send a full update.
[12:24] Rex Cronon: cool than
[12:24] Andrew Linden: The viewer doesn't request full updates that I know of.
[12:25] Theresa Tennyson: So right now the new code makes poor decisions, is what you're saying?
[12:25] Andrew Linden: Sorta Theresa... I cleaned up some stuff, tried to optimize other stuff, and ended up introducing bugs
[12:26] Andrew Linden: which QA found, and now I'm tracking down where those bugs came in.
[12:27] Andrew Linden: But... consistently when I arrive for this meeting this meeting floor is often one of the last prims to actually show up.
[12:27] Andrew Linden: I'm going to test this region on my code soon and see if it shows up sooner on the new code.
[12:27] Rex Cronon: u colide with it
[12:28] Lexbot Sinister: Oh, so thats serverside? i've noticed that some prims don't render until selected in build mode, but i thought it was a viewer bug rather.
[12:28] Nalates Urriah: For me the railing is pretty consistantly the last thing to show up...
[12:28] Rex Cronon: sorry i missread. i thought u said the floor is the first thing u see:)
[12:28] Andrew Linden: Lexbot, yes I think it is server-side.
[12:28] Simon Linden: here Nal? They're big sculpties, and loading that is slower than prims
[12:29] Lexbot Sinister: it's been very consisten for at least 2 months though.
[12:29] TankMaster Finesmith: the info is sent via udp, right?
[12:29] Nalates Urriah: Simon, Yes here...
[12:30] Lexbot Sinister: Imo, the bigger the prim, the bigger the chance of it not rendering.
[12:30] Nalates Urriah: The lawn chairs here and the floor show up early, but the chairs take some time to take their final shape. Some time after that the rails show up.
[12:30] Andrew Linden: TankMaster, yes the object data is sent via UDP. There are three categories of ObjectUpdates... Full, Terse, and Cacheable. Only the Cacheable packets are actually "reliable UDP" (are resent if they fail to arrive).
[12:30] Meeter: Timecheck : User Group is half over
[12:30] TankMaster Finesmith: ok
[12:31] Andrew Linden: Right, that delay for objects to take shape is the delay for downloading the mesh or sculpty data.
[12:31] Qie Niangao: I've seen what Lex describes for a couple months or so, too... not here, particularly but there's one place I TP to that pretty consistently doesn't show a particular linkset until I select it.
[12:31] Andrew Linden: Qie, how can you select it if you can't see it?
[12:32] Lexbot Sinister: the whole linkset? For me it's usually just one big prim in the linkset but not the whole linkset.
[12:32] Qie Niangao: I know where it is, and it highlights with a right-click and instantly rezzes.
[12:32] Lexbot Sinister: because we know it's supposed to be there.
[12:32] Rex Cronon: can we have something like an download bar that shows the progress of getting that object's data?
[12:32] Qie Niangao: so... it "feels" viewer-side, to me.
[12:32] Lexbot Sinister: me too.
[12:32] Andrew Linden: Qie, yeah that sounds like a viewer bug.
[12:32] Lucia Nightfire: the object occlusion setting fixes that problem for some
[12:32] TankMaster Finesmith: im wondering if droped packets may be partly resposable fo rthat behavior
[12:32] Lucia Nightfire: unchecking that is
[12:33] Rex Cronon: and a "reload object" button:)
[12:33] Simon Linden: Lex - have you tried different viewers or versions? I'm pretty sure there have been recent bugs like that reported (and maybe fixed) in the viewer
[12:33] Andrew Linden: That is, your viewer knows it is there, and the GL-pick operation can detect it (what happens when you click the mouse there), but it is not rendering.
[12:33] Andrew Linden: Well, I discovered this one bug, which may be partially viewer...
[12:34] Qie Niangao: Thanks Lucy, I'll try that occlusion thing.
[12:34] Andrew Linden: we sometimes have to send the child prim data in separate packets than the root prim data, certainly true for objects with lots of prims
[12:34] Lexbot Sinister: it's so rare&random for me that i can't really tell if different viewers do any differance.
[12:34] Andrew Linden: but sometimes also true for simpler objects
[12:34] Andrew Linden: when we send packets separately, it is possible for them to arrive out of order... later packets show up first
[12:34] Lexbot Sinister: Ah!
[12:34] Andrew Linden: if the viewer gets a Full update for a child prim before it gets it for the root
[12:35] Andrew Linden: then it kinda "knows" that the child prim is there, but it won't render it
[12:35] Andrew Linden: but it does render the root prim
[12:35] Andrew Linden: if you select the object, I think all the child prims will suddenly be rendered
[12:36] Andrew Linden: so ahem... I had a bug in my new code where I was sending the child data first... and this bug showed up like crazy.
[12:36] Theresa Tennyson: Could that be connected to mesh vehicles often not fully rendering at first on sim crossings?
[12:37] Techwolf Lupindo: I'll have to test out the new code on my new area search code.
[12:37] Andrew Linden: Maybe Theresa, if the missing bits are child prims only.
[12:37] Andrew Linden: Or there could be a different bug there...
[12:38] Andrew Linden: When an object crosses region boundaries it keeps its unique "object_id", however it picks up a new "local_id"
[12:38] Techwolf Lupindo: One thing I noticed is object detailed data is return in busty mode. Like when I requests 1000 object details, I get the first 500-700 really quick, then about 30 seconds later, get the rest.
[12:38] Andrew Linden: the "local_id" is just a U32 number, and we use it because it takes up fewer bits in update messages
[12:38] Andrew Linden: the local_id is specific to the region in which the object lives, so gets changed whenever it crosses into a different region
[12:38] Lexbot Sinister: mm, busty mode :)
[12:39] Andrew Linden: but the local_id is used for the full/terse/cacheable updates
[12:39] Techwolf Lupindo: bursty that is...lol
[12:39] Andrew Linden: so the object hasn't actually changed appearance, but the veiwer may have to re-allocate data for it, because it belongs to a different region.
[12:39] TankMaster Finesmith: unless your talking about prim boobs...
[12:39] Andrew Linden: I'm not quite sure what the viewer does in this case. I'll have to examine the code.
[12:39] Simon Linden: That's an interesting observation, Techwolf. I wonder if our bandwidth throttle is doing that
[12:40] Rex Cronon: i think the localid might be a source of problems if for some reason the localid for the vehicle is not updated correctly on sim crossing
[12:40] Techwolf Lupindo: Not sure, I need to test some more using a vpn to Dallas, TX so I have nearlty perfect data stream.
[12:40] Lexbot Sinister: oh, so thats why there's things that render instantly, and then a few objects where the texture refuses to load for an awful long time?
[12:41] Andrew Linden: perhaps Rex, but what I'm saying is that the fact that the local_id must change on region crossing... the viewer might not be smart enough to "recycle" the data for that object, and instead must rebuild the render data for it
[12:41] Techwolf Lupindo: Also, i've observed when the rest of the data comes in, it comes in slow but steady stream.
[12:42] Andrew Linden: Hrm... interesting Techwolf. I think I looked over that throttle code just a few weeks ago.
[12:42] Andrew Linden: I didn'
[12:42] Andrew Linden: I didn't spot a problem there, but at least I know where the code is.
[12:43] Andrew Linden: If I can reproduce the burst I might be able to figure out why it would be going wrong.
[12:43] Techwolf Lupindo: I _could_ be related to looking up object data from the infrastructure, but when I re-run the test, same speed.
[12:43] Simon Linden: Right, that should mean it's purely a viewer-sim issue, and not back-end asset fetches
[12:44] Andrew Linden: Although I guess the first thing would be to try to reproduce it in my new code... I now think maybe I changed some things about tracking the bandwidths used for the various update categories.
[12:46] Techwolf Lupindo: Repro is somewhat easy, just click "refresh" in area search to list all the objects in the regine.
[12:46] Techwolf Lupindo: make sure to do that in a heavy prim regine.
[12:47] Andrew Linden: Oh sorry, you're talking about some "Object Details" floater?
[12:47] Andrew Linden: That data is not sent via UDP, as far as I know.
[12:47] Techwolf Lupindo: Yes, TPV feature.
[12:47] TankMaster Finesmith: Firestorm has a floater that lists all the objects the viewer currerntly knows of
[12:48] Andrew Linden: oh hrm... perhaps the TPV hacked into the UDP protocol and are requesting a burst of UDP replies?
[12:48] TankMaster Finesmith: can sort by several types of perimeters
[12:48] TankMaster Finesmith: http://hg.phoenixviewer.com/phoenix-firestorm-lgpl/rev/63b32fa2e916
[12:49] Andrew Linden: There is an old "RequestObjectDetails" UDP (not the correct name I think, but it basically sends the details for selecting objects).
[12:49] Andrew Linden: I could belive a bursty behavior there. Probably not terribly hard to fix.
[12:51] Theresa Tennyson: Has anything been done with threaded region crossings lately?
[12:52] Andrew Linden: The state of that project is... in QA? or else in the queue for getting to RC.
[12:52] Duckie Dickins: There be whales
[12:52] Simon Linden: Yes Theresa ... that's just getting handed off to QA for a round of testing
[12:52] Techwolf Lupindo: I wish there was _PREHASH_RequestObjectProperties, but there isn't. So I have to use _PREHASH_ObjectSelect and _PREHASH_ObjectDeselect instead.
[12:52] Andrew Linden: That is, the next cleanup pass on threaded region crossings. Probably not the end of that effort.
[12:53] Techwolf Lupindo: There is _PREHASH_RequestObjectPropertiesFamily , but that return limited data.
[12:53] Techwolf Lupindo: sorry for the delay, I was looking up the msg
[12:54] Andrew Linden: Techwolf, you're saying that the TPV is using RequestObjectPropertiesFamily? or is specifically NOT using it?
[12:54] Techwolf Lupindo: In my new code, not using it. In the old code, it was using it.
[12:54] Techwolf Lupindo: Family is used for the mouse hovertext.
[12:55] Meeter: Timecheck : User Group is almost over
[12:56] Simon Linden: ok, now my viewer had gone weird - I only see whale parts, not everything connected right
[12:56] Techwolf Lupindo: _PREHASH_RequestObjectProperties is not in the viewer. I never tried hacking it in and see if the regine/sim returned data for that request.
[12:56] WhaleGod: might not have undeformed right on your end
[12:57] Simon Linden: it looks like the parts are there but not connected correctly - now it's good
[12:57] Simon Linden: awesome AV, btw
[12:57] Techwolf Lupindo: Also, this bieavor will affect build tools as the same data request is used when selecting objects to edit.
[12:57] WhaleGod: thanks
[13:00] Techwolf Lupindo drops a pin
[13:00] Simon Linden: well, we're about out of time ... last call for any questions
[13:00] Lucia Nightfire: guess thats the meeting, huh
[13:00] Simon Linden: yep - thanks everyone for coming this week
[13:00] Andrew Linden: Yup.
[13:00] Qie Niangao: Thanks, Lindens. :) Have fun, all.
[13:00] Meeter: Thank you for coming to the Server User Group
[13:00] Simon Linden: See you next time
[13:00] Lucia Nightfire: laters
[13:00] Nalates Urriah: Bye Lindens
[13:01] Rex Cronon: tc simon, andrew, baker.
[13:01] Rex Cronon: tc everybody and have a nice day:)
[13:01] Yuzuru Jewell: Thank you, Lindens.
[13:01] Baker Linden: Bye everyone, see you Friday
[13:01] Arawn Spitteler's been spending too much time trying to escape that other SNS: Is it possible for browsers to ask permission before running non-responsive scripts?
Simulator_User_Group
Prev 2012.10.26	Next 2012.11.02