Chat log from the meeting on 2022-10-04

From OpenSimulator

Jump to: navigation, search
[10:59] Andrew Hellershanks: Hello, everyone.
[10:59] Ubit Umarov: hi
[10:59] Jagga Meredith: waves
[11:00] Jamie.Jordan hey everybody
[11:00] Vincent.Sylvester In this weeks news, Ubit working on dotnet6 support and I'm trying to figure out why physics are broken
[11:01] Andrew Hellershanks: Vincent, hold off for now. I was going to wait to see if Selby or some other people are on their way.
[11:02] Vincent.Sylvester I ain't got much, still trying to figure out what exactly broke in the first place since there are like 20 physics related commits to audit
[11:02] Selby.Evans hi everyone
[11:02] Andrew Hellershanks: Hello, Selby.
[11:03] Andrew Hellershanks: Vincent, sounds like some rounds with git bisect are in your future.
[11:03] Ubit Umarov: well physics is not broken elsewhere
[11:04] Vincent.Sylvester Yeah it's weird thing that, it happens on certain regions and not others
[11:04] Andrew Hellershanks: Vincent, which physics engine is broken at your end?
[11:04] Ubit Umarov: so possible sem use case that needs some more debug Vincent is telling is doing
[11:04] Ubit Umarov: some..
[11:05] Ubit Umarov: well you may some something diferent in this region air
[11:05] Ubit Umarov: also on the text over the bottle to my right
[11:06] Ubit Umarov: thing is that this region is running on dotnet 6.0, not mono
[11:06] Vincent.Sylvester rest in peace XEngine
[11:07] Ubit Umarov: i did changes so it can compile and then run under dotnet 6.0
[11:07] Ubit Umarov: did commit them to the branch dotnet6
[11:07] Ubit Umarov: so others can test
[11:08] Ubit Umarov: as i otld here before, ms made this a big breaking change
[11:08] Ubit Umarov: dotnet6 lile core, etc is not a direct upgrade to .net framework 4.8
[11:09] Ubit Umarov: so we already lost some features, like XEngine and a few stats
[11:10] Andrew Hellershanks: Which stats were lost?
[11:10] Ubit Umarov: thngs that did depend on code no longer present on the framework or jsut windows only
[11:10] Ubit Umarov: some that did depend on performance counters
[11:10] Ubit Umarov: only a few
[11:11] Andrew Hellershanks: The FPS and Script LPS stats still exist?
[11:11] Ubit Umarov: yes
[11:11] Ubit Umarov: where a few "exotic ones"
[11:12] Ubit Umarov: note that i said i made code compile and run in dotnet6.0 in fact, dotnet 60 plus a few support libraries
[11:12] Andrew Hellershanks: ok, good. *FPS and Script LPS are the main ones of concern. Some of the other ones aren't of much interest for mostpeople.
[11:12] Ubit Umarov: like System.Drawing.Commun
[11:12] Ubit Umarov: that where removed on dotnet7.0
[11:13] Ubit Umarov: but at least we have a foot on dotnet
[11:13] Ubit Umarov: and dotnet 6.0 has like 3 or 5 years of support still
[11:13] Ubit Umarov: while mono is just dead
[11:13] Andrew Hellershanks: Sounds good. Minor annoyance if you have to make more changes to handle .net 6 to .net 7
[11:14] Ubit Umarov: that will be a even bigger change
[11:14] Vincent.Sylvester I'm sad to see mono die like this frankly, it had some good things going for it
[11:14] Ubit Umarov: to replace al Bitmap code
[11:14] Ubit Umarov: ah hon linux, libgdiplus is needed
[11:14] Ubit Umarov: the simple way to get it is install mono 6 still :)
[11:15] Ubit Umarov: guess it has install packages on several distros, or can be localy compiled, somehow
[11:15] Ubit Umarov: something to see in near futute
[11:15] Ubit Umarov: not laso that ofc our code is mostly .net 1.0 that jsut happens still run on dotnet 6 :)
[11:16] Ubit Umarov: a lot of that code has now diferent ways of doing the same, in many cases faster
[11:16] Ubit Umarov: but that is optimization stage..
[11:17] Vincent.Sylvester First need to get the most vital parts back in working order heh
[11:17] Ubit Umarov: well System.drawi replacement will be a pain
[11:17] Andrew Hellershanks: Hello, Kayaker.
[11:18] Ubit Umarov: also on libopenmetaverse ofc
[11:18] Ubit Umarov: all the openjpeg support needed even to lludp textures send, map etc
[11:19] Ubit Umarov: and realy draw like on dynamic textures
[11:19] Ubit Umarov: that may just mean a major rewrite using another library
[11:19] Ubit Umarov: meanwhile.. who knoes maybe ms decides to suport it
[11:20] Vincent.Sylvester Wouldn't hurt maybe we can then finally get drawing on existing textures
[11:20] Ubit Umarov: the are also making a new UI thing to replace windows forms etc
[11:20] Ubit Umarov: called MAIU
[11:20] Ubit Umarov: is fi remembet
[11:20] Andrew Hellershanks: Lots of potential for the introduction of bugs during the transition. It will require a lot of testing.
[11:20] Ubit Umarov: that will need Some kind of drawing tools
[11:21] Ubit Umarov: so.. we may just win by waiting
[11:21] Ubit Umarov: the news is that we did gain that time and can replace mono
[11:21] Vincent.Sylvester You said the other day http and logging was broken as well
[11:21] Ubit Umarov: or gained some more time
[11:22] Ubit Umarov: yeha but to a lesser extent
[11:22] Ubit Umarov: we are using things they want us to replace by new ones
[11:22] Ubit Umarov: but the ones we have are still on .net7 i think
[11:22] Ubit Umarov: so a lesser issue
[11:23] Ubit Umarov: looging, ofc hey added own logging now
[11:23] Ubit Umarov: they
[11:23] Vincent.Sylvester Does the new stuff have all the features needed, it's MS half expect deprecating old stuff and not providing one to one replacements is kinda their thing
[11:24] Ubit Umarov: well they kinda hard killed System.Drawing on 7
[11:24] Ubit Umarov: even did it on 6
[11:24] Ubit Umarov: but still a flag to allow it
[11:24] Ubit Umarov: ofc i mean killed for linux..
[11:24] Ubit Umarov: it is there windows only
[11:24] Vincent.Sylvester But MS loves linux (sarcasm)
[11:25] Ubit Umarov: well they have a valid reason
[11:25] Ubit Umarov: Drawing is mostly a wrapper to windows libgdi++
[11:26] Ubit Umarov: mono used/made? the libdidplus to emulate that windows one
[11:26] Ubit Umarov: and that seems to be a very confusing code that depends or other linux libraries like pango and cairo, etc
[11:27] Ubit Umarov: so a big rats nest for ms devs to dig into and assume full responsability
[11:27] Ubit Umarov: see?
[11:27] Ubit Umarov: that is they main "excuse" and makes sense
[11:28] Ubit Umarov: their..
[11:28] Vincent.Sylvester Oh noes, actual work... yeah they get paid to dig through that -.-
[11:28] Ubit Umarov: just a big issue for us :)
[11:28] Ubit Umarov: ofc in the middle of all the other breaking changes.. just another one
[11:28] Andrew Hellershanks nods
[11:29] Ubit Umarov: ofc if we could jsut decided to remove XEngine because AppDomains are gone, we can't do the same for openjpeg2k suport etc :)
[11:30] Kayaker Magic: I'm fine with removing XEngine!
[11:30] Ubit Umarov: and we could do that because YEngine seems fine
[11:31] Ubit Umarov: kay this region is running in dotnet6
[11:31] Kayaker Magic: Cool!
[11:31] Ubit Umarov: like that fisrt line of test to yr left tells
[11:31] Ubit Umarov: of text!!
[11:31] Andrew Hellershanks: There will be people who will complain about the disappearance of XEngine.
[11:31] Ubit Umarov: ... X64/Unit/Dotnet
[11:31] Ubit Umarov: i added x64 also
[11:32] Ubit Umarov: bc dotnet6 can see some cpus
[11:32] Ubit Umarov: well tell
[11:33] Ubit Umarov: well that is mostly all recent code work
[11:33] Ubit Umarov: don't remember if did any fix on master
[11:34] Ubit Umarov: so to recap,   branch dotnet6  id for dotnet6.0
[11:34] Ubit Umarov: will smoke badly on mono :p
[11:34] Vincent.Sylvester Don't think it even compiles on that anymore
[11:34] Ubit Umarov:
[11:35] Ubit Umarov: i changed prebuild so it creates project files for dotnet
[11:35] Ubit Umarov: as i said big deep breaking change
[11:35] Ubit Umarov: very bad news..
[11:36] Ubit Umarov: all modules out there will not work etc
[11:36] Andrew Hellershanks: Ouch.
[11:36] Ubit Umarov: they also need to migrate
[11:36] Ubit Umarov: in same cases not that hard
[11:37] Ubit Umarov: as you can see on git, nly a few changes where needed
[11:37] Ubit Umarov: dotnet 6.0 does rum (most) .net 1.0 code :)
[11:37] Ubit Umarov: even runs
[11:38] Ubit Umarov: plug modules osgrid uses for example do compile with just warnings
[11:38] Ubit Umarov: search and mutes that osgrid uses
[11:39] Ubit Umarov: andrew here :)
[11:39] Andrew Hellershanks: Good to know.
[11:39] Ubit Umarov: think i don't have them here, but lbsa is using them
[11:39] Vincent.Sylvester Needed to redo some of my modules anyways
[11:40] Andrew Hellershanks: Is there any guide about migrating to .net 6/7? ]
[11:40] Ubit Umarov: lbsa is running this for hmm let me see
[11:40] Ubit Umarov: Server has been running since Sunday, 2022-10-02 15:59:40
That is an elapsed time of 1.19:40:45.2235274
[11:40] Ubit Umarov: still alive :)
[11:41] Ubit Umarov: i can see that dotnet 6 GC is slower to react
[11:41] Ubit Umarov: does let memory usage go higher
[11:41] Ubit Umarov: but does seem to release memory a lot better
[11:41] Ubit Umarov: in mid to lopng term
[11:41] Kayaker Magic: I missed the start of this meeting, did you talk about image support on dotnet? Isn't bitmap not supported on Linux?
[11:41] Ubit Umarov: mid to long
[11:42] Ubit Umarov: still supported on dotnet 6 + extra libraries
[11:42] Ubit Umarov: and we need to install libgdiplau
[11:43] Ubit Umarov: and we need to install libgdiplus
[11:43] Ubit Umarov: the simpler way is just to still install mono :P
[11:43] Ubit Umarov: it is a lot of libs for me to try to add to our distro
[11:43] Ubit Umarov: but a possibility
[11:44] Ubit Umarov: no idea abotu macs
[11:44] Ubit Umarov: lets see if gavin and others can try and give some feedback
[11:45] Andrew Hellershanks nods
[11:45] Ubit Umarov: i did found some breaking changes like o strings compare, indexof etc
[11:45] Ubit Umarov: made a few fixes even for lsl
[11:46] Ubit Umarov: posible more will be needed
[11:46] Ubit Umarov: well that is a breaking change ms does assume
[11:46] Andrew Hellershanks: I will need to lookat how I would update my machine to .net 6. I may have to leave that until I update my installed distro to something more recent. The distro people broke the upgrade system so it pretty much forces a fresh install to upgrade.
[11:46] Ubit Umarov: very silly
[11:47] Andrew Hellershanks: I'm thinking of switching to a Debian based distro.
[11:47] Ubit Umarov: like ..indexof("\0") does return 0, even where there is no char 0
[11:47] Ubit Umarov: used to return the correct -1
[11:48] Kayaker Magic: I updated one of my Ubuntu 18.04 systems to dotnet, need to recall how to do that again...
[11:48] Ubit Umarov: nad more cases on special utf8 chars
[11:48] Ubit Umarov: its on url i pasted
[11:48] Ubit Umarov:
[11:48] Andrew Hellershanks: That will introduce "bugs" in to lot of programs.
[11:49] Ubit Umarov: that is file on branch dotnet6
[11:49] Ubit Umarov:
[11:49] Ubit Umarov: so jsut a few apt comands
[11:49] Ubit Umarov: to set the source of the debs
[11:49] Ubit Umarov: then get the sdk and runtimes
[11:50] Andrew Hellershanks: IIRC, I have built mono in the past. I was hoping it would be a simple download of .net 6/7 packages but I can see what happens if I try and build it on my machine.
[11:50] Ubit Umarov: hrere we do have the sdk 6.0.401 i think
[11:51] Andrew Hellershanks: I'll need to do that at some point to eliminate the warnings in some addon modules
[11:51] Ubit Umarov: and NET Runtime 6.0.9
[11:51] Ubit Umarov: opensim.log now does tell that
[11:52] Ubit Umarov: 2022-10-03 22:38:52,448 INFO  [STARTUP]: version: OpenSim Yeti Dev   

2022-10-03 22:38:52,449 INFO  [STARTUP]: Operating system version: Microsoft Windows NT 10.0.22621.0, .NET platform Win32NT, Runtime 6.0.9
2022-10-03 22:38:52,452 INFO  [STARTUP]: Processor Architecture: X64(le 64bit)
[11:52] Ubit Umarov: on my win :p
[11:52] Vincent.Sylvester I gave up a few days ago trying to get jenkins to play ball with dotnet6 it just didn't want to, have to revisit that at some point get some builds automated for testing
[11:53] Vincent.Sylvester It's almost as if MS is trying to make it difficult to get it to work on linux
[11:53] Kayaker Magic: NO!
[11:54] Andrew Hellershanks: :)
[11:54] Ubit Umarov: 022-10-03 14:45:15,098 INFO  [STARTUP]: version: OpenSim Yeti Dev   bf257a9
2022-10-03 14:45:15,099 INFO  [STARTUP]: Operating system version: Unix, .NET platform Unix, Runtime 6.0
2022-10-03 14:45:15,099 INFO  [STARTUP]: Processor Architecture: X64(le 64bit)
[11:54] Ubit Umarov: here
[11:55] Ubit Umarov: ahh all tests are dead :p
[11:55] Ubit Umarov: nuit ones
[11:55] Ubit Umarov: the script tests will be a pain
[11:55] Ubit Umarov: all depend on XEngine
[11:55] Ubit Umarov: well and all will be a pain because are for obsolete nunit2.0
[11:56] Vincent.Sylvester I'm sure Andrew can help us with that
[11:56] Ubit Umarov: as you can see this region is using 493MB
[11:56] Vincent.Sylvester hint hint shove shove
[11:57] Kayaker Magic: lol
[11:57] Ubit Umarov: like 100 more than did on mono during meetings ?
[11:57] Andrew Hellershanks: :)
[11:57] Andrew Hellershanks: Nice seeing real memory usage stats.
[11:57] Ubit Umarov: but gc seems a lot better than mono.. like the windows one
[11:58] Ubit Umarov: also does not leak threads as mono was doing
[11:58] Ubit Umarov: just lets memory use go higher before acting
[11:58] Selby.Evans Must go -- bye  all
[11:58] Ubit Umarov: this also means a bit less cpu use
[11:58] Ubit Umarov: cya selby.Evans
[11:58] Andrew Hellershanks: We are at the top of the hour. Are there any other questions before we wrap up todays meeting?
[11:58] Andrew Hellershanks: ok, Selby. Thanks for dropping by.
[11:59] Ubit Umarov: like now
[11:59] Ubit Umarov: it did not considered that selaby did left and released memory :)
[11:59] Ubit Umarov: selby
[12:00] Andrew Hellershanks: It dropped now
[12:00] Ubit Umarov: but well memory usage still grows in time.. it is GC still
[12:01] Vincent.Sylvester I took a look at groups finally, well I changed all the tables over to a different charset and all
[12:01] Andrew Hellershanks: How does memory usage behave when using Warp3D?
[12:01] Ubit Umarov: just peaks a bit more
[12:01] Vincent.Sylvester So far nothing has blown up, but it doesn't seem faster either
[12:01] Vincent.Sylvester If I can find the time I'll dig some more
[12:02] Ubit Umarov: like 100MB or less here
[12:02] Andrew Hellershanks: It used to be known for memory leaks. I was hoping that it is no worse under .net6 than before.
[12:02] Ubit Umarov: MEMORY STATISTICS
Heap allocated to OpenSim   : 102 MB
Heap allocation rate (last/avg): 0.247/-0.125MB/s
Process memory:      Physical 495 MB     Paged 0 MB      Virtual 69281 MB
Peak process memory: Physical 830 MB     Paged 0 MB      Virtual 78561 MB
[12:02] Ubit Umarov: nah hi fixed warp leaks ages ago
[12:03] Ubit Umarov: i know no real memory leak on our code
[12:03] Ubit Umarov: GC just loses memory
[12:03] Andrew Hellershanks: Yes, I do seem to remember that they were fixed at last. Not a major issue if the memory usage peaks a little higher when using Warp3D with .net6 if it settles back down after the tiles have been generated.
[12:04] Ubit Umarov: yes it is just because GC is slower to act
[12:04] Ubit Umarov: so save cpu
[12:04] Ubit Umarov: so to save..
[12:04] Vincent.Sylvester There is some leakage somewhere in scripts still, but that might be down to bad LSL code too. Have not been able to find the cause of that, just deleted a ton of scripts and then it stopped, not really keen on looking through about 1000 of them
[12:04] Vincent.Sylvester Usually it's list operations and state changes that cause memory to grow
[12:04] Vincent.Sylvester Copy operations mainly
[12:04] Ubit Umarov: script memory usage report does nto count
[12:05] Ubit Umarov: will nver be exact
[12:05] Vincent.Sylvester Over the course of a day it gained like 10% cpu and 200mb so some script was royally out of whack
[12:05] Ubit Umarov: ok
[12:06] Vincent.Sylvester Not really something we can fix anyhow, just bad LSL code in the end
[12:06] Vincent.Sylvester 99% of regions run fine
[12:06] Ubit Umarov: well dilemas now is where do keep devel
[12:06] Ubit Umarov: some code is now diferent
[12:07] Ubit Umarov: because diferent c# version  6 to 10 ?
[12:07] Ubit Umarov: or 11
[12:07] Ubit Umarov: and diferent framework
[12:07] Ubit Umarov: so the way of programming is diferent in some cases
[12:07] Vincent.Sylvester Maybe get dotnet6 branch working with all the core functionality, then backport what's possible to master, do a final release for 4.8 and then continue with dotnet6
[12:08] Ubit Umarov: yeah
[12:08] Andrew Hellershanks: Sounds like a plan.
[12:08] Ubit Umarov: ofc next release will be master
[12:08] Ubit Umarov: mono etc
[12:09] Kayaker Magic: RL is calling me! Good meeting, glad to see dotnet progress!
[12:09] Vincent.Sylvester That way it has a nice closure and we can do breaking changes without everyone losing their minds heh
[12:09] Ubit Umarov: not sure how many ppl outthere have machines that do not suport dotnet
[12:09] Kayaker Magic: buy all!
[12:09] Ubit Umarov: fill my paypar
[12:09] Ubit Umarov: :p
[12:09] Ubit Umarov: paypal
[12:09] Andrew Hellershanks: Bye, Kayaker. See you next time.
[12:09] Vincent.Sylvester We can't support everyone, especially not on platforms so ancient they are out of security updates
[12:09] Ubit Umarov: then i may buy something :p
[12:10] Ubit Umarov: duhh no 32bit on dotnet :(
[12:10] Andrew Hellershanks: I need somethings from Amazon but I'm not going to get all.
[12:10] Vincent.Sylvester Anyone running 32bit these days should have their computers taken away
[12:10] Ubit Umarov: duhhh
[12:11] Jamie.Jordan have a great week yall
[12:11] Ubit Umarov: opensim runs great and uses less mem on win
[12:11] Andrew Hellershanks: ok, Bye Jamie.
[12:11] Ubit Umarov: on win64 in 32bit
[12:11] Vincent.Sylvester What's next, support for powerpc and ibm mainframes lol
[12:11] Ubit Umarov: as i said many times
[12:11] Ubit Umarov: z80 will be a bi thard
[12:12] Andrew Hellershanks nods
[12:12] Andrew Hellershanks: I'd go for a 6809. ;)
[12:12] Ubit Umarov: yeah that was better
[12:13] Ubit Umarov: just arrived 2 late and 2 expensive to get a big market share
[12:13] Andrew Hellershanks: Similar thing happened with the 68000.
[12:13] Ubit Umarov: yeah
[12:13] Andrew Hellershanks: All righty. Time to wrap up todays meeting.
[12:13] Andrew Hellershanks: Thank you all for coming. See you again next week.
Personal tools
About This Wiki