Minetest logo

IRC log for #minetest-dev, 2015-08-01

| Channels | #minetest-dev index | Today | | Google Search | Plaintext

All times shown according to UTC.

Time Nick Message
00:10 alex_m joined #minetest-dev
00:22 paramat VanessaE, please can i use your mushroom spore nodes and textures to help me make the new default mushrooms farmable?
00:22 VanessaE sure.
00:22 paramat thanks
00:22 VanessaE they're actually Dan Duncombe's textures but use them anyway
00:22 VanessaE they're just a bunch of silly dots anyway ;)
00:23 paramat heh yeah
00:23 paramat perhaps i'll make growing depend on reasonable darkness as in your abms
00:24 VanessaE sounds good to me but you'll want to be more conservative with the growth rate and max spread distance from a tree
00:24 VanessaE (what I have now produces too many)
00:27 paramat yeah i'm not adding uncontrolled spreading, just growing from spores dropped by mapgen mushrooms
00:27 VanessaE ahh
00:27 paramat and dependant on dirt/grass below not wet soil
01:11 paramat left #minetest-dev
03:04 alket_ joined #minetest-dev
03:31 hmmmm https://github.com/kwolekr/minetest/commit/7919318be715e3bf60f01b7c63816a3e5802176d
03:31 hmmmm pushing in 30 minutes if nobody has any objections... still would like a review if anybody's around
04:12 hmmmm pushing....
04:35 hmmmm https://github.com/kwolekr/minetest/commit/ebaa973a0b4d8338cd829061a8185bd55dc572f2
04:35 hmmmm would like at least two reviews for this^
04:35 hmmmm will make PR
04:52 kaeza joined #minetest-dev
05:53 Hunterz joined #minetest-dev
05:55 CraigyDavi joined #minetest-dev
06:00 Taoki joined #minetest-dev
06:54 err404 joined #minetest-dev
07:13 err404 joined #minetest-dev
07:35 diemartin joined #minetest-dev
07:46 blaze joined #minetest-dev
07:48 hmmmm i really need to talk to rubenwardy when he's around
07:54 H-H-H joined #minetest-dev
08:00 Yepoleb_ joined #minetest-dev
08:16 nore joined #minetest-dev
08:25 Krock joined #minetest-dev
08:49 alex_m joined #minetest-dev
08:51 FR^2 joined #minetest-dev
09:15 Player_2 joined #minetest-dev
09:15 crazyR joined #minetest-dev
09:25 Calinou joined #minetest-dev
09:30 bluegreen joined #minetest-dev
09:49 TBC_x Are there any minetest bots?
09:50 Calinou bots in which sense?
09:50 Calinou headless players you can connect to a server? no, except using "null" video driver
09:51 Calinou they won't do anything too
09:51 Calinou (not sure if random_input is effective when you use the null video driver)
09:51 TBC_x I think I know how to reproduce two of those #2913 bugs
09:51 ShadowBot https://github.com/minetest/minetest/issues/2913 -- Unexplained, random crashes (segfaults, aborts, OOM)
10:31 TBC_x is there supposed to be a copy? std::list<u16> getPeerIDs() { return m_peer_ids; }
10:33 TBC_x src/network/connection.h:1056
10:44 H-H-H joined #minetest-dev
10:46 MinetestForFun joined #minetest-dev
10:54 Amaz joined #minetest-dev
10:57 MinetestForFun joined #minetest-dev
10:59 TBC_x VanessaE: try this patch http://sprunge.us/THZA
11:01 TBC_x I have no way to test it
11:01 bluegreen game#602
11:01 ShadowBot https://github.com/minetest/minetest_game/issues/602 -- Allowed players with server priv to access any locked chest and open any steel door. by red-001
11:01 TBC_x bluegreen, stop spamming
11:01 bluegreen how do you have no way to test it?
11:02 bluegreen ok sorry
11:02 TBC_x it is a race condition
11:02 bluegreen ok
11:07 alex_m joined #minetest-dev
11:39 TBC_x what am I supposed to do when m_map->emergeBlock returns NULL?
11:40 TBC_x I mean what is ServerEnvironment::deactivateFarObjects supposed to do, when m_map->emergeBlock returns NULL?
11:41 TBC_x Because that is related to #2913
11:41 ShadowBot https://github.com/minetest/minetest/issues/2913 -- Unexplained, random crashes (segfaults, aborts, OOM)
12:50 bluegreen joined #minetest-dev
12:54 blaze joined #minetest-dev
13:01 err404 joined #minetest-dev
13:06 leat1 joined #minetest-dev
13:39 hmmmm joined #minetest-dev
13:57 leat1 joined #minetest-dev
13:58 AltSopa joined #minetest-dev
14:18 leat1 joined #minetest-dev
14:28 leat1 joined #minetest-dev
15:08 kilbith joined #minetest-dev
15:09 hmmmm ha
15:10 hmmmm nice one TBC_x
15:10 hmmmm were you working on that one the whole time?
15:10 hmmmm i was just starting to look at it last night
15:10 hmmmm how do you reproduce that crash?
15:20 leat1 joined #minetest-dev
15:29 TBC_x It is hard to reproduce
15:30 hmmmm it looks like a plausible fix for the first one
15:30 TBC_x because I have no popular server
15:30 TBC_x I was not working on that the whole time
15:30 hmmmm as for the deactivateFarObjects; yeah I missed the null deref in the second find()
15:31 hmmmm deleteBlock() needs fixing though
15:31 TBC_x I'm not familiar with that code too much
15:31 hmmmm active objects don't get unlinked from that block
15:31 hmmmm me neither
15:32 hmmmm your two fixes are good though
15:32 hmmmm pushing..
15:32 TBC_x cool
15:32 TBC_x but I've noticed that the NULL deref happened when EmergeThread was doing its thing
15:32 hmmmm ?
15:32 hmmmm what do you mean
15:33 TBC_x from the stack traces
15:33 hmmmm it's almost always doing something
15:33 hmmmm so what?
15:34 bluegreen joined #minetest-dev
15:35 TBC_x well... the Segfault happened whenever the Mapgen was generating and at the same time the deactivateFarObjects() was running
15:35 alket_ joined #minetest-dev
15:35 TBC_x I thought that was a race condition at first
15:36 TBC_x just sharing my observations
15:37 TBC_x lua exceptions need better error reporting
15:37 TBC_x that propagate to C++ code
15:38 TBC_x I mean that `ERROR[main]: not enough memory` for example
15:38 bluegreen what does "Subgame specified in default_game [minetest] is invalid." mean?
15:39 Taoki[mobile] joined #minetest-dev
15:42 TBC_x I think we should close #2913 and open a new issue so the old stack traces with the fix don't mix up
15:42 ShadowBot https://github.com/minetest/minetest/issues/2913 -- Unexplained, random crashes (segfaults, aborts, OOM)
15:43 TBC_x I was not looking into the code with Abort on assertion
15:43 rubenwardy joined #minetest-dev
15:45 rubenwardy hmmmm, hi.
15:45 rubenwardy Read the logs, is it about #2913?
15:45 ShadowBot https://github.com/minetest/minetest/issues/2913 -- Unexplained, random crashes (segfaults, aborts, OOM)
15:46 TBC_x Check out #2980
15:46 ShadowBot https://github.com/minetest/minetest/issues/2980 -- Fix a race condition and a nullptr dereference by t0suj4
15:47 TBC_x that should fix the segfaults
15:48 TBC_x for the not enough memory thing... Lua exceptions should have better error reporting
15:48 TBC_x hmm
15:49 TBC_x is all the lua-related code inside single directory?
15:59 bluegreen no
15:59 bluegreen there is /src/lua
15:59 bluegreen and /src/script
16:00 bluegreen but lua itself is in /src/lua
16:00 nore /src/lua is the bundled lua
16:01 nore and /src/script is the API
16:07 TBC_x I think this is a little bit better: http://sprunge.us/bIJU
16:12 hmmmm TBC_x:  It's definitely caused by delete_area
16:12 hmmmm TBC_x: I was wrong in the github comments
16:13 TBC_x well... I have no clue how to fix that one
16:13 hmmmm the problem is that objects statically stored in that block that were active in the environment weren't getting m_static_exists updated
16:14 hmmmm that's the reason why the problem exists
16:14 hmmmm but the actual problem was what you fixed, i.e. the result of emergeBlock is not checked
16:15 TBC_x oh
16:16 TBC_x I've got no idea what that code even does
16:16 hmmmm so yeah, while I did make a slight mistake in deleteBlock that should've otherwise gone unnoticed, the actual problem is forgetting to check return values
16:16 hmmmm which is not my bug :p
16:17 hmmmm I'm gonna split up 2913 into multiple issues
16:17 TBC_x ok
16:18 hmmmm are you looking at SharedBuffer<T>::drop() Assertion (*refcount) > 0 failed?
16:18 TBC_x not yet
16:18 hmmmm ok i'll let you do that one then
16:19 MinetestForFun joined #minetest-dev
16:20 hmmmm rubenwardy:  it was about 2913, nevermind though, it's pretty much confirmed
16:20 TBC_x I'm sure that rubenwardy's segfaults are covered in 2980
16:23 crazyR joined #minetest-dev
16:23 hmmmm hmm
16:23 hmmmm if it's okay with everybody I'd like to actually delete the comments with backtraces in 2913 so there's no confusion
16:24 hmmmm as i make the new separate issues
16:25 VanessaE fine by me, hmmmm
16:26 VanessaE I only started it as a "collection" originally because I wasn't sure where to divide them
16:26 Yepoleb joined #minetest-dev
16:27 TBC_x better a collection than nothing
16:30 rubenwardy I'd like a minetest.delete_all_areas() - I hope it would be faster than delete_blocks because it unloads all active blocks and then runs DELETE FROM blocks; call
16:30 rubenwardy although I don't know how this area of code works - so it's probably more complicated than that
16:31 hmmmm delete the entire map?
16:31 Yepoleb joined #minetest-dev
16:31 rubenwardy yeah
16:31 hmmmm just delete the entire map!?
16:31 hmmmm is delete_area() actually slow?
16:31 rubenwardy It is on an SSD
16:31 hmmmm i don't see how it could be slow if the db is running asynchronously
16:32 hmmmm are you using sqlite or something
16:32 rubenwardy takes two seconds to do 160x160x160
16:32 hmmmm okay
16:32 rubenwardy yeah, it's sqlite
16:32 TBC_x why unsigned int *refcount
16:32 hmmmm TBC_x, because people who use shared pointers suck at designing their objects :p
16:32 rubenwardy I probably should use redis, leveldb or ramdisks though
16:34 rubenwardy I'd also like to be able to set the seed after a delete_blocks call - but minetest.set_mapgen_params(MapgenParams) is only for load time
16:34 hmmmm yeah
16:34 TBC_x is that even necessary?
16:35 rubenwardy it is for CTF
16:35 rubenwardy I want a different map each time
16:35 hmmmm well
16:35 hmmmm what you are asking for is basically a way to change a massive amount of state in a game that's already running, while in game
16:35 rubenwardy I guess I could change where the arena is in the world
16:35 hmmmm ughhhhh
16:35 TBC_x I mean, is there a bug that would cause the refcounting to malfunction if that was not a pointer to reference counter?
16:36 rubenwardy I guess mapgen is asynchronous? Or is it synchronous due to the need to call lua callbacks?
16:37 rubenwardy I can see the problem though
16:38 TBC_x hmmmm do you agree that I should turn `unsigned int *refcount` into `unsigned int refcount`?
16:38 hmmmm no don't do that
16:38 hmmmm that defeats the entire purpose of refcounted shared pointers
16:38 hmmmm what you want to do is to turn it into a scoped pointer
16:39 hmmmm confusion about object lifetimes is why i'd like to remove all instances of smart pointers... there are a lot of people who say it's best practices but i see it as an excuse to practice sloppy design
16:40 hmmmm the person who coded that complained that there wasn't a good way of doing this without using a shared pointer though
16:40 hmmmm he's not around anymore... Connection needs a big fixup
16:40 hmmmm what I would say is that you should just get familiar with the code and understand where it's being used and when, document that, and try to redesign it so that it can work with well-defined object lifetimes
16:41 hmmmm and ownership of that object
16:44 TBC_x the issue is, that I have no idea why that has to be a pointer
16:45 TBC_x hmm
16:45 TBC_x or I think I do now
16:45 hmmmm it's because all copies of the smart pointer data need a common counter to increment and deincrement
16:45 hmmmm if that wasn't a pointer, they'd be editing their own copies
16:46 TBC_x yeah
16:46 TBC_x got it
16:46 TBC_x reference counting sucks
16:47 TBC_x use it whenever you have no idea who owns who
16:47 hmmmm what's alarming is how much smart pointers are being advocated in "modern C++"
16:48 TBC_x I don't have anything against unique_ptr
16:51 hmmmm hmm
16:51 hmmmm UDPPeer is shared between ConnectionSendThread and ConnectionReceiveThread
16:51 hmmmm because they're technically owned by Connection
16:51 hmmmm UDPPeer has multiple Channels, each channel has an outgoing and incoming BufferedPacket list
16:52 TBC_x what is the point of channels?
16:52 hmmmm you can logically separate kinds of data from each other
16:53 hmmmm it's not very useful here
16:53 hmmmm also certain channels can be assigned priorities
16:55 TBC_x I still don't think that channels are of any practical use here, unless it works like broadcast or something
16:56 hmmmm getTimedOuts looks like it's thread safe
16:58 TBC_x SharedBuffer is nice, but it doesn't have anything like a mutex so is it really safe to share it?
16:58 hmmmm I think the reason why BufferedPacket uses a SharedBuffer for the data is to avoid a copy when a BufferedPacket is being assigned
16:58 hmmmm it's not thread safe but i just looked
16:58 Taoki[mobile]_1 joined #minetest-dev
16:59 hmmmm you should double check for race conditions though
16:59 TBC_x that is a problem, it is used everywhere
16:59 TBC_x :P
16:59 TBC_x I'm trying to rewrite connection.cpp in rust
17:00 TBC_x from scratch
17:00 TBC_x will definitely port it to C++
17:00 hmmmm heh
17:02 hmmmm it's tempting to simply make SharedBuffer thread-safe, but there's no indication that'll fix any problem
17:03 TBC_x I think that may slow things down too much
17:03 hmmmm locks are only slow when they're in contention
17:04 TBC_x there also may be cases where the reference counter could underflow
17:04 hmmmm ?? how
17:04 TBC_x race condition
17:04 hmmmm well yeah sure
17:05 hmmmm but i don't think that's the case here because ReliablePacketBuffers for a Peer aren't shared between ConnectionSendThread and ConnectionReceiveThread
17:06 TBC_x I think the protocol could be simpler though
17:06 hmmmm incoming_reliables and outgoing_reliables_sent
17:06 hmmmm obviously
17:06 hmmmm this whole thing could use a lot of cleanup
17:07 hmmmm it's way too big of a task for right now though
17:07 hmmmm unless you have lots of spare time
17:07 TBC_x cleanup would take too much time imho
17:08 TBC_x it would be simpler just to redo it from scratch
17:08 hmmmm you're probably right
17:08 TBC_x I don't even wanna look at that code
17:09 TBC_x when I open my server in gdb, the only thing I see is pretty much `throw ...`
17:09 hmmmm using exceptions as return codes is horrible
17:09 hmmmm that should've been fixed a while ago
17:10 hmmmm it uses up 25% of the cpu for serverthread iirc
17:10 TBC_x that should have been fixed?
17:10 hmmmm yeah it was something we noticed when we were doing callgrind stuff
17:10 hmmmm but i dunno people forgot and got busy
17:10 TBC_x that thing shouldn't have even brought to the codebase
17:10 hmmmm or maybe i thought somebody else was going to work on it
17:10 hmmmm yeah well neither should have particle spawners
17:11 hmmmm but if you're too harsh on peoples' code they get upset and tell us that you should be grateful anybody's working on it at all
17:11 TBC_x what data the particle spawner structure has?
17:11 hmmmm idk but any particle spawner related code is an absolute mess
17:12 hmmmm at least it's not memory leaking/crash anymore because of all the fixes that have been made to it over the years
17:16 TBC_x I still believe that treating game data in an OOP way is a mistake
17:17 hmmmm of course it's a mistake
17:18 hmmmm data oriented programming has been advocated for high performance applications for a while not
17:18 hmmmm now
17:18 hmmmm but in terms of minetest it's a microoptimization
17:18 hmmmm there's so much more to go
17:18 TBC_x the particles even have their own physics simulation
17:19 hmmmm sometimes I give up on saving minetest and I want to blow it up and start fresh
17:19 hmmmm but then i remember netscape 3.0
17:19 TBC_x man, me too
17:46 Puma_rc joined #minetest-dev
17:48 VanessaE want an easier one to chew on, hmmmm ? ;)
17:49 VanessaE https://github.com/minetest/minetest/issues/2984
17:51 TBC_x back face culling
17:51 TBC_x that is really creepy skin
17:52 VanessaE hat's what I figured too, TBC.
17:52 VanessaE yeah, it's a weird skin, but well, it's the player's choice so I won't complain too loudly.
17:52 VanessaE well either backface culling or just lack of double-sided normals.
17:53 TBC_x I can't unsee this now
17:55 VanessaE lol
17:55 VanessaE want an even creepier one? :)
17:55 TBC_x please, stop
17:55 TBC_x and I thought that those upside-down skins are creepy
17:56 VanessaE http://www.minecraftskins.com/skin/6001194/baby-sheep/
17:56 TBC_x i'm not gonna click on that one
17:56 VanessaE eh, it's just a sheep reduced to fit into the thickness of the player model
17:56 VanessaE that's another one that's affected by the aforementioned glitch
17:56 TBC_x oh no
17:56 TBC_x I did it
17:57 VanessaE this seems to be a trend btw.
17:57 TBC_x I clicked
17:57 VanessaE several of my regular players are using these miniature animal skins
17:57 TBC_x I am glad minetest can't handle those skins
17:58 Taoki[mobile]_1 joined #minetest-dev
17:59 VanessaE hah, and there ^^^ was the person whose domain this is :)
17:59 TBC_x domain of f***ed up skins?
18:00 VanessaE heh
18:00 VanessaE well no, more like the player model in general :)
18:08 est31 joined #minetest-dev
18:09 est31 hmmmm, about #2981
18:09 ShadowBot est31: Error: Delimiter not found in "An error has occurred and has been logged. Please contact this bot's administrator for more information."
18:09 est31 the fix in 2980 for it looks good, but doesnt seem to match what you've written in the issue as a possible explanation
18:10 est31 or is the return value thats forgotten to be checked the retval of emergeBlock
18:10 est31 ?
18:19 TBC_x yes
18:19 TBC_x doing some finishing touches you pointed out
18:20 TBC_x also, what does the style guide say on multiline statements in if() conditions? double tab or single tab?
18:21 est31 you mean if the condition is too long for one line?
18:21 TBC_x yes
18:21 est31 then indent by two.
18:21 TBC_x ok
18:26 est31 I guess I just merge #2978, nrz can find a shorter version for the pipes later on if he wants.
18:26 ShadowBot https://github.com/minetest/minetest/issues/2978 -- Android: Add githash header to spare rebuilds after new commits by est31
18:27 est31 does that sound ok?
18:29 TBC_x http://sprunge.us/DMRJ looks good?
18:30 est31 yes
18:31 leat2 joined #minetest-dev
18:32 TBC_x pushed
18:33 kaeza joined #minetest-dev
18:35 est31 #2981
18:35 ShadowBot est31: Error: Delimiter not found in "An error has occurred and has been logged. Please contact this bot's administrator for more information."
18:35 est31 ShadowBot, who's your admin??
18:35 est31 ~help
18:35 ShadowBot est31: help [<plugin>] [<command>]
18:35 est31 ~help admin
18:35 ShadowBot est31: Error: There is no command "admin". However, "Admin" is the name of a loaded plugin, and you may be able to find its provided commands using 'list Admin'.
18:36 est31 Tesseract, somehow the bot doesnt like #2981
18:36 ShadowBot est31: Error: Delimiter not found in "An error has occurred and has been logged. Please contact this bot's administrator for more information."
18:36 est31 see?
18:38 TBC_x #2982
18:38 ShadowBot https://github.com/minetest/minetest/issues/2982 -- Segfault in ConnectionReceiveThread::getFromBuffers -> Connection::getPeerIDs -> std::list ctor
18:39 TBC_x do single `->` mess it up or what?
18:39 est31 gonna push #2978 then
18:39 ShadowBot https://github.com/minetest/minetest/issues/2978 -- Android: Add githash header to spare rebuilds after new commits by est31
18:41 leat2 joined #minetest-dev
18:41 est31 pushed
18:42 TBC_x #2980 is pretty much ready
18:42 ShadowBot https://github.com/minetest/minetest/issues/2980 -- Fix a race condition and a nullptr dereference by t0suj4
18:42 est31 gonna push that too, seems it has approval by hmmmm.
18:45 TBC_x I get tab explosion in my firefox way too often
18:45 OldCoder joined #minetest-dev
18:49 VanessaE I can't reproduce #2985
18:49 ShadowBot https://github.com/minetest/minetest/issues/2985 -- Player's direction of view pitches up slightly when clicking
18:50 VanessaE (it's probably the user moving his mouse ever so slightly when clicking - happens to me too, if I'm not careful)
18:50 est31 yea
18:50 est31 Ill try it myself, and if confirmed not reproducible, close it.
18:51 leat2 joined #minetest-dev
18:51 VanessaE note that I kinda "crammed" my mouse down on a tack part of my desk while trying it, just to make sure it can't move at all
18:51 VanessaE tacky*
18:51 est31 the other way is to turn it around
18:52 VanessaE oh heh, didn't think of doing that
18:53 TBC_x easy to not move on a touchpad
19:13 kilbith so you confirm the freeze is tomorrow, est31 ?
19:14 est31 yeah.
19:14 Out`Of`Control hi
19:14 est31 seems the terminal wont make it
19:14 est31 I wonder, do we want to merge logging and threading cleanups before the freeze?
19:15 Out`Of`Control when player X connects, server crashes, what else there is to remove beside data in /players ?
19:15 est31 whats the crash message
19:15 VanessaE est31: I don't see why not, they aren't features, per se.
19:15 kilbith Out`Of`Control is using a 0.4.10 server btw
19:16 Out`Of`Control kilbith:  yes will move soon to new one
19:16 kilbith so that makes your report invalid
19:16 kilbith lot of things have changed since then
19:17 Out`Of`Control kilbith:  i just need to know where else player data is stored
19:17 Out`Of`Control beside auth.txt and players/
19:17 est31 there is auth.txt too
19:18 est31 well, if the player is a bad guy, they can use a hacked client to crash the server
19:18 Out`Of`Control est31:  thank you
19:19 est31 there have been some fixes regarding that in the last weeks and months, so I suggest you update
19:19 Out`Of`Control i know its a good guy
19:19 est31 even 0.4.12 is vulnerable to crashes
19:21 Out`Of`Control what are those numbers at the end of auth.txt each line? player last location?
19:22 est31 no I think time of last login
19:22 Out`Of`Control i see
19:22 Out`Of`Control where does it store last location?
19:22 Out`Of`Control in players/ ?
19:23 sfan5 yes
19:23 Out`Of`Control thanks! :)
19:34 est31 kilbith, VanessaE I see feature freeze as a time where nothing gets merged except trivial changes (cleanups) and bugfixes.
19:35 VanessaE fair enough
19:35 VanessaE btw, don't forget the collision bug :)
19:35 kilbith "problem" with SN's PRs are they contains cleanup and bugfixes altogether
19:36 est31 well, then the bugfixes have to be extracted
19:40 est31 and on august 10 we either release, or branch a dev branch off to not kill development.
19:41 Out`Of`Control what could cause server to appear twice on psl?
19:41 Out`Of`Control crash & restart?
19:42 est31 Out`Of`Control, this channel is about minetest development
19:42 est31 please speak in #minetest :)
19:42 Out`Of`Control est31:  ok
19:42 Out`Of`Control left #minetest-dev
19:43 crazyR joined #minetest-dev
19:43 est31 but right now we don't even have a list of bugs to be fixed until release
19:45 VanessaE I think #2833 can be closed now
19:45 ShadowBot https://github.com/minetest/minetest/issues/2833 -- Server shutdown is potentially confusing for players
19:47 est31 agreeds
19:47 est31 s/s//
20:10 Taoki joined #minetest-dev
20:10 TBC_x shall we prepend lua errors like this? m_server->setAsyncFatalError("Lua: " + std::string(e.what()));
20:12 est31 TBC_x, can you give more context
20:12 TBC_x better than ERROR[main]: not enough memory
20:12 TBC_x because that message comes from Lua
20:12 TBC_x so you get ERROR[main]: Lua: not enough memory
20:13 est31 if only lua errors are handled there, sure why not
20:13 TBC_x it is in catch(LuaError &e) blocks
20:14 est31 well, then
20:14 est31 ok
20:18 VanessaE about the bugs that should be fixed during the freeze, seems to me everything "high priority" or "blocker" should be in that list anyway
20:19 TBC_x http://sprunge.us/TbfR
20:20 TBC_x will look basically like this ^
20:20 TBC_x the changes
20:23 est31 we don't need that for MAINMENU ERROR
20:24 est31 that's already lua per definition
20:26 crazyR_ joined #minetest-dev
20:31 TBC_x ok
20:38 TBC_x }
20:38 TBC_x catch (...)
20:38 TBC_x {
20:38 TBC_x or } catch (...) {
20:40 est31 last one
20:41 est31 the only place where { should be on its own line is for functions
20:43 TBC_x vim rocks!
20:44 TBC_x fixed style of the entire Server::Thread()
20:44 TBC_x ServerThread::Thread()
20:49 TBC_x https://github.com/t0suj4/minetest/commit/6292e4be627972e69f981275537bb8807e9808ff
20:50 TBC_x looks good?
20:50 est31 no
20:50 TBC_x well?
20:50 est31 see comment
20:51 TBC_x oh, that one
20:51 est31 otherwise ok
20:52 est31 VanessaE, can you try to do an experiment for me?
20:52 VanessaE hm?
20:52 VanessaE possibly :)
20:52 est31 can you copy a spawn area of your servers with worldedit, and then compare fps with fps after you did //replace signs_lib:sign default:air?
20:53 est31 and //clearobjects ofc
20:53 VanessaE sure
20:53 VanessaE stand by a bit
20:53 crazyR joined #minetest-dev
20:53 TBC_x alright, https://github.com/t0suj4/minetest/commit/23e9ea97138a6cb6151f8ce14d68158bb4e5f56c
20:53 est31 btw thats not the name, the list is here https://github.com/VanessaE/homedecor_modpack/blob/master/signs_lib/init.lua#L118
20:55 est31 +1
20:59 VanessaE hm, just the spawn building alone is too small.
20:59 VanessaE (using VE-Basic)
20:59 TBC_x #2986
20:59 ShadowBot https://github.com/minetest/minetest/issues/2986 -- Prepend "Lua: " before lua exceptions by t0suj4
21:00 * VanessaE uncaps her fps
21:00 dzho joined #minetest-dev
21:01 est31 TBC_x, will merge that when my working directory is clean again. right now I'm researching the openal bug
21:02 dzho joined #minetest-dev
21:03 TBC_x the memory leak?
21:03 est31 no, the "prepend lua" one
21:03 est31 the memory leak is alredy merged, no?
21:03 TBC_x I mean, are you researching a memory leak in openal?
21:04 est31 no, total failure
21:04 TBC_x oh
21:04 est31 this commit made the regression
21:04 est31 https://github.com/minetest/minetest/commit/c788b1732225ed0c118ed11b184bb5d3b35e1f7c
21:04 est31 now I have found out that our openal copy ignores when you pass APP_ABI to it
21:04 est31 but rather reads TARGET_ARCH_ABI
21:04 VanessaE est31: totally unscientific measure says 125-130 fps with the signs present, 140-160
21:05 VanessaE ...without the signs
21:05 est31 but that didnt fix the bug.
21:05 VanessaE if you wanna see the test zone, join VE-B and teleport to me.
21:05 TBC_x signs should be drawn to the texture
21:05 TBC_x not implemented in core though
21:05 TBC_x afaik
21:05 VanessaE TBC_x: yes, they should, but they can't be because textures on a node can't be modified after init
21:05 VanessaE (whereas textures on an entity can be)
21:06 est31 so, teleport me :)
21:06 est31 I am at spawn and have fps of 1
21:07 est31 fps is 14 now
21:07 VanessaE ok here's the spwn devoid of signs.
21:07 VanessaE shall I reload the signs?
21:08 est31 ok
21:08 est31 android controls are weird
21:08 TBC_x the TIMEOUT of 5.0 in connection.cpp is imho too short
21:08 est31 some people complain its too short, some complain its too long
21:09 est31 wow, before it was fps of 22
21:09 est31 now its fps of 15
21:09 VanessaE wait for the signs' entities to load :)
21:09 VanessaE there they go
21:09 TBC_x I had to raise it to 15.0 so my mt with address sanitizer doesn't time out
21:10 est31 fps of 13
21:10 est31 around 17-18 now
21:10 TBC_x sign entities is a ugly hack, something has to be done about it
21:10 est31 its not constant
21:10 est31 VanessaE, can you remove them again?
21:11 VanessaE doing it now.
21:11 VanessaE done.
21:12 est31 ok, seems I've gained 2 to 4 fps
21:12 VanessaE over where I am at is the best observation point, you'll see the most signs from here.
21:12 est31 it was somewhere between 13-18 fps before
21:12 VanessaE ok here goes replacing them again...
21:12 est31 now its 14-22
21:13 TBC_x the fact that you're talking over IRC when you're ingame means that MT ingame chat sucks
21:13 VanessaE loaded.
21:13 VanessaE TBC_x: nah, we're just keeping away from the #minetest/Inchra clutter.
21:13 est31 well its very crowded on that server
21:13 est31 lotsa "he called me midget" and "when do i get my skin"
21:14 TBC_x lol
21:14 VanessaE est31: come over where I am for a better observation point
21:14 est31 from there, 50% is outside of viewing range
21:15 est31 but I'm seeing the signs
21:15 VanessaE oh ok, well where I'm at I see the whole thing
21:15 VanessaE screen aspect/size diff I guess
21:15 VanessaE note your FPS and I'll swap in the no-signs version
21:15 est31 ok
21:15 VanessaE swapping it now.
21:16 VanessaE done.
21:17 est31 ok, the increase is by around 2 fps
21:17 VanessaE ok.  and for such a small test zone, I'd say that's pretty severe of a change
21:17 est31 yes
21:18 est31 thanks
21:18 VanessaE for others' reference:  there are about 40 signs in the test scene, plus whatever's in that building below us that I've left alone.
21:19 VanessaE (f6 says there are 58 total objects in the scene)
21:20 TBC_x btw, how is the minimap rewrite going on? if any
21:21 est31 seems nobody is doing it right now
21:22 est31 also, first I think we should make a list of points that should be fixed
21:23 est31 because from what I see, the fact that we do the prescan in the mesh thread and not the minimap thread is no issue
21:23 est31 because either we do a prescan, which is at worst just a loop over the whole mapblock and comparison is it air or not,
21:24 est31 or we dont do it, and copy the whole mapblock
21:24 TBC_x extrusion mesh leak still not fixed?
21:24 est31 but thats again much like a loop
21:24 est31 dunno
21:25 TBC_x well... creating mapblockmesh on my machine takes some time
21:25 TBC_x when I give it a reason, the mesh creating drops my fps from 30 to 24
21:25 est31 mesh creating isnt done in the main thread
21:25 TBC_x with minetest_game and in the nautre
21:26 est31 or do you have single thread cpu?
21:26 VanessaE mesh gen on my box is slow enough (particularly with HDX) that it causes huge stutters and brief (tenths-of-a-second) hangs.
21:26 TBC_x single core
21:26 est31 well then it can indeed affect the fps
21:27 TBC_x that doesn't mean that mesh creation cannot be more efficient
21:27 VanessaE #1288 can be closed I think.
21:27 ShadowBot https://github.com/minetest/minetest/issues/1288 -- There is no way of checking if you have lost connection with the server
21:28 VanessaE (yes, I'm poking around among the old bugs at the moment)
21:28 TBC_x would be useful if the pending timeout could have some feedback to the user
21:28 VanessaE #1218 also, maybe.
21:28 ShadowBot https://github.com/minetest/minetest/issues/1218 -- huge error shouldn't be printed in game
21:29 VanessaE TBC_x: like the lag timer in hexchat? (below the user list on the right)
21:29 TBC_x I don't know hexchat, but if it is what I think, then yes
21:29 TBC_x :)
21:29 est31 does hexchat have a lag timer?
21:29 est31 where
21:29 VanessaE yeah
21:29 VanessaE View -> User List
21:30 VanessaE at the bottom, little blue horizontal bar
21:30 est31 ahhhh
21:30 * est31 tests it
21:30 VanessaE for minetest, such a thing were to be implemented, I'd use a "clock" format instead
21:30 est31 test
21:31 est31 didnt work.
21:31 VanessaE (like gimp 2.8's round, green progress indicator for most operations)
21:31 TBC_x with a disconnection icon shade
21:31 alket joined #minetest-dev
21:31 TBC_x a pretty animation
21:32 TBC_x mt needs more eye-candy imho
21:32 VanessaE well I was thinking something much simpler.
21:32 TBC_x and configurable
21:33 VanessaE hide the lag indicator if lag < 1 second, fade it in smoothly for times > 1 second, have it count-off up to 30 seconds or whatever (more elapsed time = less of the clock's "pie" remaining)
21:34 TBC_x oh, connection.cpp was being refactored somewhere in the past?
21:34 VanessaE #1091 can probably be closed.  I've not seen this happen in current minetest versions.
21:34 ShadowBot https://github.com/minetest/minetest/issues/1091 -- Bone position and rotation shared on all objects
21:35 TBC_x I just... It doesn't look that way
21:36 TBC_x I don't want to do #2983
21:36 ShadowBot https://github.com/minetest/minetest/issues/2983 -- void SharedBuffer ::drop() [with T = unsigned char]: Assertion `(*refcount) > 0' failed.
21:36 TBC_x I would have to rewrite the entire connection.cpp
21:36 est31 why that
21:36 TBC_x it's a mess
21:41 VanessaE #1533, isn't the python mapper considered obsolete now?
21:41 ShadowBot https://github.com/minetest/minetest/issues/1533 -- minetestmapper.py isn't working properly
21:42 est31 we should remove it IMO
21:44 VanessaE #1654 can be closed I think.
21:44 ShadowBot https://github.com/minetest/minetest/issues/1654 -- Player is not informed if keepalive ping to server fails
21:45 hmmmm hehe
21:45 hmmmm like connection.cpp?
21:45 hmmmm that's german engineering
21:46 est31 ahem.
21:46 hmmmm :P
21:46 est31 :D
21:46 est31 we cant even build trains anymore
21:47 hmmmm dear god
21:47 hmmmm my house is falling apart
21:47 est31 german rails are organized by one big state owned railway company
21:47 hmmmm minetest is falling apart
21:47 hmmmm everything's a mess
21:47 TBC_x thet reminded me
21:47 TBC_x do you know this? https://www.youtube.com/watch?v=-oB6DN5dYWo
21:47 est31 and they have lotsa problems
21:47 est31 many come from manufacturing problems
21:47 est31 by siemens.
21:48 hmmmm i get one weekend to work on minetest and then i get these problems
21:48 hmmmm est did you look at my PR
21:48 est31 also they give siemens order to build new trains
21:48 hmmmm i pushed another one that was trivial
21:48 est31 but order belates
21:48 TBC_x we don't have such problems because we build on soviet technology
21:48 est31 hmmmm, I've looked at it, looks good
21:48 hmmmm do you think it needs another approval
21:49 VanessaE TBC_x: I thought soviet tech built on YOU? :P
21:49 est31 hmmmm, I think no, but perhaps sb should test it.
21:49 TBC_x haha
21:50 TBC_x man... soviet machines will outlive you
21:50 hmmmm I wrote unit tests for it
21:50 hmmmm and I tested it too on public servers
21:50 est31 ok
21:52 est31 I guess it can be merged then
21:52 est31 what about shadowninja's cleanup prs?
21:52 est31 feature freeze is planned for today, they won't go in during feature freeze.
21:52 hmmmm noo
21:53 hmmmm I want to add the Threading PR
21:53 hmmmm did he fix the last two things
21:54 est31 ?
21:55 hmmmm there was a missing semicolon ; which would make it not compile under OS X or w/e
21:55 hmmmm and then there was a memory leak somewhere
21:56 VanessaE #2315 can be closed (submitter said it's fixed)
21:56 ShadowBot https://github.com/minetest/minetest/issues/2315 -- Minetest 0.4.11 Crashes When You Click Anything
21:57 GunshipPenguin joined #minetest-dev
21:58 hmmmm alrighty
21:58 hmmmm I think ShadowNinja's thraeding PR is ready
21:58 hmmmm +1
21:58 hmmmm how about the rest of us
21:58 hmmmm oh it needs a rebase
21:58 hmmmm :\
22:01 VanessaE I can't reproduce #2276
22:01 ShadowBot https://github.com/minetest/minetest/issues/2276 -- 3rd person camera flicker
22:02 VanessaE given its age I'd say close that one also
22:02 werwerwer joined #minetest-dev
22:03 est31 perhaps ask them whether it still occurs
22:03 VanessaE yeah.
22:03 VanessaE #2331 can be closed (fixed according to TeTpaAka)
22:03 ShadowBot https://github.com/minetest/minetest/issues/2331 -- craft replacement only replaces when stack is 1
22:04 est31 ah my error
22:05 TBC_x hmmmm, you said you're rewriting RBA's minimap?
22:05 hmmmm not rewrite, just redesign the way it works
22:05 hmmmm also RBA said that he was working on it so i dunno
22:05 hmmmm I would do it if he doesn't
22:05 VanessaE RBA will be working on it for the next month :P
22:06 TBC_x given that his last on the minimap was what it was...
22:06 TBC_x I'm afraid of what his changes will look like
22:07 hmmmm I guess it's okay if you keep very close watch and make sure his shit's been valgrinded first
22:07 hmmmm valgrinded?
22:07 hmmmm valground
22:07 VanessaE hah
22:07 est31 lol
22:07 VanessaE take the compromise:  valgrounded.
22:08 hmmmm hmm
22:08 hmmmm about the heap corruption issue
22:09 TBC_x ok, Fix extrusion mesh leak: check!
22:09 hmmmm it very well could be random especially with true symmetric multithreading on today's machines, but I like to think that it's possible there's a higher chance of the heap corruption resulting from the last operation inside the same thread
22:09 hmmmm especially if glibc uses thread-local heap arenas
22:09 TBC_x more minimap leaks need fixing
22:10 hmmmm so I can't help but wonder if writing packets to the SharedBuffer in the ReliableDataBuffer is writing out-of-bounds
22:10 hmmmm at least that's where I would guess to look if we didn't have address sanitizer
22:11 TBC_x I have no way to check this because my server is buggy and don't send more mapblocks
22:11 hmmmm does anybody know what Zeno- meant when he said "
22:11 hmmmm MutexedQueueCurlFetchThread::Request::pop_front" ?
22:11 TBC_x probably stuck somewhere in sendpacket and throw
22:11 VanessaE *shakes head* no idea, hmmmm
22:12 hmmmm in any case I don't see that as the cause of any of these crashes...
22:12 TBC_x me neither
22:14 hmmmm I think I see where the InventoryList::getItem assertion happens
22:14 hmmmm this is just a guess because I didn't even look at the code but
22:14 hmmmm it's trying to roll back to an item in the inventory that didn't exist?
22:14 hmmmm shrug
22:14 hmmmm sounds extremely reproducible
22:15 OldCoder joined #minetest-dev
22:15 paramat joined #minetest-dev
22:16 est31 its some rollback problem, thats sure
22:18 hmmmm okay so I captured all the problems from #2913 in separate issues
22:18 ShadowBot https://github.com/minetest/minetest/issues/2913 -- Unexplained, random crashes (segfaults, aborts, OOM)
22:18 hmmmm I'm going to close it
22:18 VanessaE ok
22:18 est31 why
22:19 est31 it serves well as a "dumping" place for backtraces
22:19 est31 or alternative, perhaps a new bug can be opened for that
22:19 VanessaE well one could always just delete all the posts that have since been rendered moot
22:19 est31 its hard to scroll through all those
22:19 TBC_x https://github.com/t0suj4/minetest/commit/399e83dca2a372bfc88adf6350dab0fcc168307f
22:19 VanessaE I wish github had a "condense log" markdown
22:20 TBC_x looks good?
22:21 hmmmm wait
22:21 TBC_x hmm
22:21 TBC_x the type casting could be dropped
22:21 hmmmm doesn't createForsynthOptimizedMesh return an IMesh?
22:21 TBC_x yes
22:21 hmmmm and IMesh has a drop()
22:21 paramat for 0.4.13: i'm working on making mushrooms farmable, nearly ready, that perhaps counts as trivial. i have some trivial tweaks for the biome system
22:21 TBC_x gonna fix that
22:21 hmmmm so what the hell is the point
22:21 hmmmm yeah
22:21 hmmmm change to IMesh, remove the cast
22:22 VanessaE paramat: when you do, could you provide me with a list of item/node names so I can remove them from plantlife's mushroom mod?
22:22 hmmmm so guys from now on when there's an unexplained crash, somebody has to dig through the backtrace and rename the issue accordingly
22:22 VanessaE hmmmm: eh, you're right.  close it.
22:23 hmmmm I did already
22:23 VanessaE open a new report as needed.
22:23 VanessaE oh ok :)
22:24 paramat also i want to change the fallback biome in the biome api to be all stone, the current one with dirt/grass can trip up users easily, and has caused problems for me too, also places girt/grass underground in overgenerated caves
22:24 TBC_x I've noticed that when you leave an issue open for dumping stacks, people are more likely to attach their own stacktraces if they have any
22:26 VanessaE #2822 can be closed - it's already been requested and declined once before.
22:26 ShadowBot https://github.com/minetest/minetest/issues/2822 -- Nodebox Rotation
22:27 VanessaE #415 can also be closed, use mesh nodes instead.
22:27 TBC_x https://github.com/t0suj4/minetest/commit/fc31e7e0ebc6f16cffb7e91ad63e16574e5972ba
22:27 ShadowBot https://github.com/minetest/minetest/issues/415 -- Add multiple nodeboxes for "wallmounted" drawtype
22:27 TBC_x looks good?
22:29 est31 where has 2822 been used?
22:29 est31 err suggested
22:29 VanessaE est31: I suggested it once ages ago
22:30 VanessaE c55 was....shall we say "insistent" on there being a better way :)
22:31 est31 I still dont understand what rui suggested
22:31 est31 his reports are always so cryptic
22:31 VanessaE I think he wants to be able to control the yaw, pitch, and roll of a nodebox.
22:31 VanessaE so 9 fields instead of 6
22:31 est31 and I dont see what 4aiman means with "2 is sufficient"
22:32 est31 hmmmm, I agree with TBC_x if a "dump your dumps here" issue is open, people more likely report it
22:32 VanessaE for the wallmount, you can't give more than one { a,b,c,d,e,f } box, so a "complex" one would be { {box 1}, {box 2} }
22:32 est31 if they have to do a search first, many wont report
22:32 VanessaE (or more than 2)
22:32 est31 I see
22:33 est31 but thats doable with mesh nodes already?
22:33 VanessaE yep
22:33 est31 ok closing then
22:33 paramat VanessaE, can you confirm that the commit of game#598 is actually correct, any existing use of the name 'mese_block' should be converted to 'mese', not the other way around as it is currently?
22:33 ShadowBot https://github.com/minetest/minetest_game/issues/598 -- Fix mese block alias by CraigyDavi
22:33 TBC_x better then create new issues when the code changes so there's no confusion
22:34 est31 TBC_x, ????
22:34 VanessaE paramat: lgtm
22:34 paramat ok will push later
22:35 VanessaE node is defined as default:mese and that alias will change all default:mese_block into it.
22:35 TBC_x nvm
22:37 TBC_x does anybody feel to make all the stack traces automatic on every crash?
22:37 TBC_x and also append version string
22:37 est31 the stack traces require people to build minetest in debug mode
22:37 VanessaE I'm not against the idea, though getting the automatic stacktraces was actually pretty trivial with gdb's help
22:38 est31 which can slow down
22:39 VanessaE plus windows builds already have that minidump feature
22:39 TBC_x I think that most distros don't strip their binaries of debug symbols
22:40 TBC_x man 3 backtrace
22:44 TBC_x though, this is a gnu extension
22:45 TBC_x imho this is more helpful than nothing at all
22:46 TBC_x please mercy, I have to mess with RBA's leaks again :P
22:48 TBC_x btw  CXXFLAGS=-g increases binary size only, it doesn't decrease speed
22:59 TBC_x hmm
22:59 TBC_x google's breakpad looks promising
23:00 VanessaE bbl
23:13 TBC_x #2990
23:13 ShadowBot https://github.com/minetest/minetest/issues/2990 -- Fixmesh extrusion memory leak by t0suj4
23:13 est31 +1
23:14 TBC_x ok, now there are three leaks from minimap and one... I think it is audio?
23:15 OldCoder joined #minetest-dev
23:16 TBC_x fluidsynth leaking 4kb
23:17 blaise joined #minetest-dev
23:27 TBC_x cool
23:30 hmmmm requesting review
23:30 hmmmm https://github.com/kwolekr/minetest/commit/42cf5e972d1e27a92048712bc79806e1a088b96c
23:34 est31 is 0x7FFFFFFF  == 2^52-1?
23:35 hmmmm no..?
23:35 est31 because afaik, floats are safe up to 2^52 - 1
23:36 est31 if converted to an integer
23:36 hmmmm erm, you might be confused
23:36 hmmmm the maximum exponent of a float is 37
23:36 hmmmm the maximum value of a 32 bit signed integer is 2^31 - 1
23:37 hmmmm in any case, read what that actually does
23:37 TBC_x this one slipped last time https://github.com/t0suj4/minetest/commit/83489ef6b70fc4b2701255a6499f6e0bda8d79dd
23:37 est31 slipped??
23:37 hmmmm /whoops
23:38 TBC_x yeah
23:38 hmmmm why does a mapper even need to be created with new, though?
23:39 TBC_x good idea
23:39 hmmmm hmm
23:39 TBC_x gonna look at it
23:39 hmmmm nah keep it that way
23:39 TBC_x kk
23:39 hmmmm when enable_mapper is false we simply won't create it
23:39 hmmmm we'll modify it later on so it makes sense
23:40 hmmmm btw if you're modifying that for loop that uses iterators, you should change the i++ to ++i
23:40 est31 ++
23:41 TBC_x needs more style fixing
23:41 est31 hmmmm, regarding #2989  have you seen #2972?
23:41 ShadowBot https://github.com/minetest/minetest/issues/2989 -- Can't serialize data of type userdata
23:41 ShadowBot https://github.com/minetest/minetest/issues/2972 -- userdata crash by tenplus1
23:42 hmmmm oh the second one is a PR not an issue report
23:42 hmmmm i agree with closing that and not merging, if you actually want to fix it, you should find the root error...
23:42 hmmmm did you look at the backtrace?
23:43 est31 at which stack
23:43 est31 err backtrace
23:43 hmmmm in 2989
23:43 hmmmm it's 4 copies of dump_or_ref_val
23:43 hmmmm i didn't look at that function but i'm assuming it's recursive
23:43 est31 yes
23:44 hmmmm are lua stack backtraces limited to 4 entries only?
23:44 hmmmm or is that really all there is
23:44 est31 i remember a recursive function in that file
23:45 est31 so the bug is that we don't print the whole stack or what?
23:45 hmmmm yeah i'd say so
23:45 est31 well then the issue name doesn't match
23:45 hmmmm then once we get a full backtrace we can figure out what's calling serialize
23:46 blaise joined #minetest-dev
23:46 hmmmm we don't know if it's an error with some builtin function, minetest_game, or some random mod
23:46 hmmmm i think getting a full backtrace is one task required to solve the issue
23:55 TBC_x https://github.com/t0suj4/minetest/commit/4c2bc22f5460d4b8591a521d82c389e7f5c01ac6
23:55 TBC_x looks good now?
23:55 hmmmm sure, looks great
23:56 TBC_x #2991
23:56 ShadowBot https://github.com/minetest/minetest/issues/2991 -- Fix mapper memory leak by t0suj4
23:57 crazyR joined #minetest-dev
23:58 est31 can be pushed i guess

| Channels | #minetest-dev index | Today | | Google Search | Plaintext