User:Babbage Linden/Office Hours/2008 09 10
Jump to navigation
Jump to search
Transcript of Babbage Linden's office hours:
[8:03] | Babbage Linden: | hi everyone
|
[8:03] | Fake Fitzgerald: | hi
|
[8:03] | Psi Merlin: | Hello
|
[8:03] | Tomoneko Mayo: | hi
|
[8:03] | Babbage Linden: | yay
|
[8:03] | Babbage Linden: | fake is sitting on the phoenix cog :-)
|
[8:03] | Babbage Linden: | feel free to stay there and get munged :-)
|
[8:04] | Nock Forager: | lol
|
[8:04] | Babbage Linden: | hmm, some of the cogs have slowed down
|
[8:04] | Babbage Linden: | weird
|
[8:05] | Hidenori Glushenko: | lol
|
[8:05] | Fake Fitzgerald: | nice suicide
|
[8:05] | Nock Forager: | yay, everyone fall at there :)
|
[8:05] | Babbage Linden: | that's better :-)
|
[8:06] | Psi Merlin: | Motion lag doesn't help :)
|
[8:07] | Nock Forager: | I heard 1.24.5 depoying in soon.
|
[8:07] | Babbage Linden: | let's wait a couple of minutes then i'll give an overview of where we are
|
[8:09] | Babbage Linden: | right, ok
|
[8:09] | Babbage Linden: | looks like we're not getting anyone else
|
[8:09] | Babbage Linden: | we're currently finishing off some fixes for 1.24.5
|
[8:10] | Babbage Linden: | which will have it's last QA pass later today
|
[8:10] | Babbage Linden: | and then we'll start a pilot deploy late this evening pacific time
|
[8:10] | Babbage Linden: | as with 1.24.4 we've prioritised crash fixes
|
[8:10] | Babbage Linden: | and fixes for issues that affect LSL
|
[8:11] | Babbage Linden: | we're still working on SVC-2973: MONO - timer() event triggers before on_rez()
|
[8:11] | Babbage Linden: | which is proving to be a tricky one
|
[8:11] | Babbage Linden: | but have fixes for
|
[8:12] | Babbage Linden: | SVC-2925: Instant Messages of certain lengths
|
[8:12] | Babbage Linden: | SVC-1571: Rezzing a coalesced objects with 1024 scripte
|
[8:12] | Babbage Linden: | SVC-2751: Mono Beta - LSL attach() event survives reset
|
[8:12] | Babbage Linden: | plus 2 other internal crash bugs
|
[8:12] | Babbage Linden: | and a security issue that could have allowed DOS
|
[8:13] | Babbage Linden: | we've made significant progress on SVC-2908: C# error messages with Mono Compiled scripts
|
[8:13] | Babbage Linden: | which is actually a meta issue
|
[8:14] | Babbage Linden: | we've significantly hardened the code
|
[8:15] | Babbage Linden: | so we'll see fewer crashes
|
[8:15] | Babbage Linden: | and better reporting
|
[8:15] | Babbage Linden: | also, objects should only report initial errors
|
[8:15] | Babbage Linden: | and then act dumb
|
[8:15] | Babbage Linden: | like LSL scripts with runtime faults
|
[8:15] | Babbage Linden: | but, there may still be more work to be done there
|
[8:15] | Creem Pye: | any idea what types of operations were triggering the C# errors seen in SVC-2908? was the culprit a certain class of functions, or were the errors random?
|
[8:16] | Babbage Linden: | from what we've seen the errors revolve around using llDie to kill scripts
|
[8:17] | Creem Pye: | ok, but no reports of llSetScriptState() to disable a script causing problems?
|
[8:17] | Babbage Linden: | that would also potentially cause problems
|
[8:17] | Babbage Linden: | what we're seeing are problems with migrating stopped scripts to a new application domain
|
[8:18] | Babbage Linden: | so, if you stop scripts
|
[8:18] | Babbage Linden: | then rez and kill lots of other mono scripts to cause the application domain to unload
|
[8:18] | Babbage Linden: | the migration of stopped scripts could cause problems
|
[8:18] | Creem Pye: | ah I see
|
[8:18] | Babbage Linden: | our plan is to fix migration of stopped scripts
|
[8:18] | Babbage Linden: | and then look at why application domain unload is happening too often
|
[8:19] | Babbage Linden: | which will cause time dilation spikes
|
[8:19] | Babbage Linden: | but not crashes
|
[8:19] | Babbage Linden: | this is why the reports were often from busy regions
|
[8:19] | Babbage Linden: | or where lots of region crossing with mono scripts was happening
|
[8:19] | Creem Pye: | yeah, people have told me about these issues when sim load gets high
|
[8:19] | Babbage Linden: | the problems are triggered by lots of cycling of mono scripts
|
[8:20] | Babbage Linden: | rezzing and killing scripts cause the problems
|
[8:20] | Babbage Linden: | so, we're making progress on it now
|
[8:20] | Creem Pye nods
| |
[8:20] | Babbage Linden: | it's lower priority than SVC-2973 as it only affects mono scripts
|
[8:21] | Babbage Linden: | so, we're concentrating on SVC-2973
|
[8:21] | Babbage Linden: | then will look further at DEV-19712
|
[8:21] | Babbage Linden: | sorry, SVC-2908
|
[8:22] | Babbage Linden: | so, that's where we are now
|
[8:22] | Babbage Linden: | 1.24.5 should start being deployed later today
|
[8:22] | Babbage Linden: | and will hopefully fix everything that isn't mono
|
[8:22] | Creem Pye: | uh and I guess SVC-2908 would affect sim crossing of mono scripts as well
|
[8:22] | Babbage Linden: | yes
|
[8:22] | Babbage Linden: | a sim crossing is a rez in one region
|
[8:23] | Babbage Linden: | and a collection in the other
|
[8:23] | Babbage Linden: | any questions or comments?
|
[8:24] | Creem Pye: | nope, I'm set =)
|
[8:24] | Babbage Linden: | 1.24.5 is deployed on aditi now if you'd like to test it there
|
[8:25] | Babbage Linden: | but we hope to include a couple more fixes in it before we deploy it to agni
|
[8:26] | Babbage Linden: | are there any other issues that we should be looking at?
|
[8:26] | Fake Fitzgerald: | SVC-2365 will not be fixed in 1.24.5?
|
[8:26] | Babbage Linden: | i see a few more new issues in http://jira.secondlife.com/browse/SVC-1276
|
[8:26] | Babbage Linden: | but they seem to all be affecting Mono scripts
|
[8:26] | Creem Pye: | http://wiki.secondlife.com/wiki/Release_Notes/Second_Life_Beta_Server/1.24 looks like only 2 Jira issues for the time being, Fake
|
[8:27] | Babbage Linden: | which we'll get to once the crash bugs and LSL bugs are done
|
[8:27] | Fake Fitzgerald: | thanks Creem
|
[8:27] | Creem Pye: | oh Babbage, I have a general Mono question about something you said a week or two ago
|
[8:28] | Babbage Linden: | sure
|
[8:28] | Creem Pye: | you recommended copying identical scripts after compiling them, instead of placing them in an object before batch-recompiling
|
[8:28] | Babbage Linden: | yes
|
[8:28] | Creem Pye: | there's a performance increase,
|
[8:28] | Creem Pye: | but is that only in terms of having a lighter footprint, or is there other optimization?
|
[8:28] | Babbage Linden: | it's just a smaller footprint
|
[8:28] | Creem Pye: | because I'm wondering how much it might help in an object with 2 identical scripts
|
[8:28] | Creem Pye: | ok
|
[8:29] | Creem Pye: | so maybe saving 64KB
|
[8:29] | Babbage Linden: | the copied scripts share bytecode memory
|
[8:29] | Babbage Linden: | (at the moment the savings are not given back to the scripts, but it saves the simulator memory)
|
[8:30] | Creem Pye: | I guess it would'be worth having identical scripts load different configuration data from the prim description, then =)
|
[8:30] | Babbage Linden: | or a notecard, yes
|
[8:31] | Babbage Linden: | any more questions?
|
[8:32] | Ricken Flow: | Hello Everyone
|
[8:32] | Creem Pye: | howdy
|
[8:32] | Object: Hello, Avatar!
| |
[8:32] | Babbage Linden: | hi ricken
|
[8:32] | Nock Forager: | Hi Ricken
|
[8:32] | Fake Fitzgerald: | hi
|
[8:33] | Nock Forager: | Is there any way to find out which bytecode being used for each script?
|
[8:33] | Babbage Linden: | nock, only by rezzing the object and examining it
|
[8:33] | Babbage Linden: | we don't store whether a script is mono in the database
|
[8:34] | Babbage Linden: | so you can't tell just by looking at it in your inventory, unfortunately
|
[8:35] | Nock Forager: | So if same script compiled one by one, no one can tell they are sharing bytecode or not.
|
[8:36] | Nock Forager: | (Sorry my english is bit broken, not my 1st language ;( )
|
[8:36] | Babbage Linden: | so, in the case of bytecode s
|
[8:36] | Babbage Linden: | sorry
|
[8:36] | Babbage Linden: | the best way to do it is to contact someone who looks after the canonical copy
|
[8:37] | Babbage Linden: | so, someone gives or makes available the canonical xytext or whatever
|
[8:37] | Babbage Linden: | and changes the name or description as appropriate if it's updated
|
[8:37] | Babbage Linden: | right clicking and copying the asset id would be a great way to do it, but that's no longer supported
|
[8:38] | Babbage Linden: | in general the description of the script is unique enough#
|
[8:38] | Babbage Linden: | to determine sharing
|
[8:38] | Nock Forager: | I see.
|
[8:39] | Nock Forager: | h
|
[8:40] | Nock Forager: | ah it's just my curiousity, but some voodo magics in scripting is work on Mono too?
|
[8:41] | Nock Forager: | Such as better way to writing script, optimize code.
|
[8:41] | Babbage Linden: | i hope not
|
[8:41] | Babbage Linden: | :-)
|
[8:41] | Nock Forager: | ;)
|
[8:41] | Babbage Linden: | with luck mono will reduce the need for voodoo
|
[8:42] | Babbage Linden: | supporting the current voodoo people do with lsl has been challenging :-)
|
[8:42] | Creem Pye: | does logic evaluate from left-> right in mono now?
|
[8:42] | Babbage Linden: | no, it can't
|
[8:42] | Babbage Linden: | as that would break scripts
|
[8:42] | Ricken Flow: | If someone wants to learn scripting/programming where is a good place to start. Since Mono looks like the way to go I want to start learning LSL /Mono?
|
[8:42] | Creem Pye: | er, so is it right->left?
|
[8:42] | Babbage Linden: | yes
|
[8:42] | Babbage Linden: | as with the original scripting engine
|
[8:43] | Creem Pye: | but mono can terminate early, I guess
|
[8:43] | Babbage Linden: | relying on the order of evaluation is bad in general
|
[8:43] | Babbage Linden: | but people were doing that with lsl
|
[8:43] | Babbage Linden: | so we've had to support it
|
[8:43] | Creem Pye: | if(a==b || c==d) if the first one evaluates to TRUE, I guess it can skip the 2nd
|
[8:43] | Babbage Linden: | again, no
|
[8:44] | Babbage Linden: | lsl would evaluate both terms
|
[8:44] | Babbage Linden: | so that's what we need to do to avoid breaking scripts
|
[8:44] | Creem Pye: | oh damn
|
[8:44] | Babbage Linden: | we have tried to copy the behaviour of lsl on the original scripting engine as closely as possible
|
[8:45] | Babbage Linden: | hopefully we will get to languages that operate more rationally in the future
|
[8:45] | Babbage Linden: | but with this release we want to make it as easy as possible to convert a script to run on mono
|
[8:45] | Babbage Linden: | without changing its behaviour
|
[8:46] | Fay Tal: | if mono is patched, do you need to recompile?
|
[8:46] | Creem Pye: | well, I hope we can get a more optimized profile in the future =)
|
[8:47] | Babbage Linden: | it depends where the fix is
|
[8:47] | Babbage Linden: | if the problem requires a compiler fix
|
[8:47] | Babbage Linden: | recompiling the script will be needed
|
[8:47] | Babbage Linden: | if the problem is a simulator fix, no changes are needed
|
[8:47] | Babbage Linden: | once the simulator restarts the problem will go away
|
[8:48] | Babbage Linden: | we haven't needed to make any compiler changes since the mono deploy
|
[8:48] | Babbage Linden: | if we do, we'll let people know
|
[8:50] | Babbage Linden: | anything else?
|
[8:51] | Babbage Linden: | any other questions?
|
[8:51] | Babbage Linden: | if not, i'll get back to fixing bugs
|
[8:51] | Fay Tal: | may i have your bear :)
|
[8:51] | Nock Forager: | :)
|
[8:52] | Babbage Linden: | sure
|
[8:52] | Babbage Linden: | i'll leave it here to autoreturn in 15 minutes
|
[8:52] | Babbage Linden: | ok, i'm going to head off
|
[8:52] | Babbage Linden: | thanks for coming everyone
|
[8:52] | Creem Pye: | thanks for your time
|
[8:53] | Nock Forager: | Thanks for the meeting.
|
[8:53] | Babbage Linden: | and thanks for your help with bug reports
|
[8:53] | Ricken Flow: | If I want to learn scripting where would be the best place to start.. I want to learn in mono at the same time if thats possible?
|
[8:53] | Babbage Linden: | if you see anything amiss, please put it in jira
|
[8:53] | Babbage Linden: | ricken, if you learn lsl you will be able to use mono
|
[8:53] | Babbage Linden: | the language doesn't change
|
[8:53] | Babbage Linden: | your scripts just go faster
|
[8:53] | Psi Merlin: | Thanks Babbage.
|
[8:53] | Fake Fitzgerald: | thanks Babbage, see you next week
|
[8:53] | Creem Pye: | I"d recommend getting freebie scripted objects, and tweaking the scripts to suit your taste
|
[8:53] | Babbage Linden: | see you all next time
|
[8:54] | Creem Pye: | and rely on the wiki for documentation
|
[8:54] | Creem Pye: | see you
|
[8:54] | Ricken Flow: | thanks Crree,
|
[8:54] | Tomoneko Mayo: | thanks Babbage
|
[8:54] | Fay Tal: | tc babble :)
|
[8:54] | Ricken Flow: | Creem
|
[8:54] | Creem Pye: | sure thing
|
[8:55] | No room to sit here, try another spot.
| |
[8:55] | Fake Fitzgerald: | bye all
|
[8:56] | Nock Forager: | cya |