Time |
Nick |
Message |
00:19 |
|
sapier left #minetest-dev |
00:31 |
|
OldCoder joined #minetest-dev |
01:28 |
|
Zeno` joined #minetest-dev |
01:31 |
VanessaE |
sfan5: still awake? |
03:28 |
|
zat1 joined #minetest-dev |
03:32 |
|
Sokomine joined #minetest-dev |
04:40 |
|
^v joined #minetest-dev |
04:56 |
|
Miner_48er joined #minetest-dev |
05:48 |
|
Hunterz joined #minetest-dev |
06:28 |
|
nore joined #minetest-dev |
06:51 |
|
Krock joined #minetest-dev |
07:05 |
sfan5 |
VanessaE: >awake >03:31 -> no, but I'm awake now |
07:23 |
|
CraigyDavi` joined #minetest-dev |
08:02 |
|
Hairy_Powder left #minetest-dev |
08:23 |
Zeno` |
Is CONTENT_IGNORE available via Lua? |
08:23 |
Zeno` |
for example: assert(minetest.get_content_id("blah") ~= minetest.CONTENT_IGNORE) ?? |
08:24 |
Zeno` |
basically I want to check that the item string exists |
08:26 |
nore |
Zeno`, did you try minetest.get_content_id("ignore")? |
08:26 |
nore |
(you can also do assert(minetest.registered_items["blah"] ~= nil) |
08:27 |
Zeno` |
I'll try both |
08:27 |
Zeno` |
thanks |
08:31 |
Zeno` |
I'll go with the 2nd method |
08:37 |
|
PenguinDad joined #minetest-dev |
08:47 |
|
Megaf joined #minetest-dev |
08:47 |
Megaf |
you broke my server again |
08:47 |
Megaf |
congratualations |
08:47 |
Megaf |
https://github.com/minetest/minetest/issues/1556#issuecomment-53146903 |
08:53 |
Zeno` |
I didn't do that |
08:54 |
Megaf |
someone did |
08:54 |
|
Krock joined #minetest-dev |
08:55 |
Megaf |
lucky me that I know the terrible quality of code and now a days I do a full backup before every git pull |
08:56 |
|
Calinou joined #minetest-dev |
08:56 |
Zeno` |
does this happen with no mods installed? |
09:03 |
Megaf |
I restored my backup and it still crashing, now Im totally lost |
09:08 |
Zeno` |
That code in httpfetch.cpp is a @$&*@2 mess |
09:11 |
|
sapier joined #minetest-dev |
09:16 |
Megaf |
server was running for several hours, then it crashed, then I backed it up and updated it, then it began to crash on start up |
09:16 |
Megaf |
http://paste.debian.net/117058/ |
09:16 |
Zeno` |
Megaf, what happens if you add curl_parallel_limit = 8 to the .conf? |
09:16 |
Megaf |
and now even restoring from the backup it will keep crashing |
09:16 |
Zeno` |
or even set it to 1 |
09:17 |
Megaf |
Zeno`: its a server, that thing shouldnt matter anyway |
09:17 |
Zeno` |
well, it's being called somehow |
09:17 |
Zeno` |
I think |
09:17 |
Zeno` |
just add it to the .conf to rule it out ;) |
09:18 |
Zeno` |
if adding that doesn't fix the crash then at least people know to look elsewhere |
09:21 |
sapier |
sorry but the stack doesn't help if you want us to track this down we need more information |
09:22 |
Zeno` |
well, I'd like to rule it out anyway |
09:23 |
Megaf |
sapier: so make a decent code that tells something when it crashes |
09:23 |
Megaf |
insttead of useless crash info |
09:24 |
Zeno` |
why g_httpfetch_thread is global is beyond me |
09:24 |
Zeno` |
Megaf, you can do a backtrace using gdb |
09:24 |
sapier |
gdb ./minetestserver |
09:26 |
Megaf |
im installing minetest |
09:26 |
Megaf |
I mean, gdb |
09:28 |
Megaf |
gdb doesnt help much, does it? |
09:28 |
Megaf |
http://paste.debian.net/117060/ |
09:28 |
sapier |
you need to do a debug build |
09:29 |
* Megaf |
wishes it could shoot someone |
09:29 |
sapier |
Calm down, you're using development branch things like that happen |
09:30 |
Megaf |
because if I use the stable and have any problem you would say that it is old and its already fixed on the FUCLING development! |
09:31 |
Megaf |
Zeno`: curl_parallel_limit = 8 doesnt help |
09:31 |
Megaf |
I will try to compile without curl support |
09:32 |
sapier |
dev is unstable and regressions are supposed to happen every now and then ... especially if you use a version where lots of things have been added the past 24 hours ;-) |
09:40 |
Megaf |
sapier: compiled it without curl and in debug mode |
09:40 |
Megaf |
terminate called after throwing an instance of 'ServerError' |
09:40 |
Megaf |
what(): C++ exception |
09:40 |
Megaf |
no useful info again |
09:40 |
sapier |
did you run in gdb? |
09:40 |
Megaf |
Program received signal SIGABRT, Aborted. |
09:40 |
Megaf |
0xb6cbff96 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6 |
09:41 |
Megaf |
yes man, I did |
09:41 |
sapier |
hmm disable luajit too |
09:41 |
Megaf |
can you please tell me the cmake flag for that? |
09:41 |
|
iqualfragile joined #minetest-dev |
09:43 |
sapier |
-DDISABLE_LUAJIT=1 -DCMAKE_BUILD_TYPE="Debug" -DUSE_CURL=0 -DENABLE_CURL=0 .... just to be sure ;-) |
09:43 |
sapier |
but I don't think curl is really involved |
09:43 |
sapier |
what do you do to cause the bug? |
09:44 |
Megaf |
thats the bug I reported |
09:44 |
Megaf |
it just happens |
09:45 |
sapier |
ugly :-( |
09:46 |
Megaf |
yes it is |
09:46 |
Megaf |
and theres another bug caused by the cirular saw |
09:47 |
Megaf |
Im sure mods should be able to put the server down |
09:47 |
Megaf |
shouldnt* |
09:47 |
sapier |
how are we supposed to prevent this? mods are part of core |
09:48 |
sapier |
that's the difference between mods and plugins ;-) |
09:48 |
Megaf |
sapier: anyway, tried to run on my x86 machine just to run out ARCH issues, same thing |
09:48 |
Megaf |
soon afeter another try with the flags you told me I will try a fresh build |
09:48 |
sapier |
can you enter break __raise_exception on gdb prompt? |
09:49 |
Megaf |
yes I can, after or before the run? |
09:49 |
sapier |
before crash ;-) |
09:50 |
sapier |
I'd buess this is a mod error, yet we need to improve this as the exception is quite useless |
09:51 |
Megaf |
terminate called after throwing an instance of 'InvalidPositionException' |
09:51 |
Megaf |
thats the error |
09:51 |
sapier |
can you do bt and give full info? |
09:52 |
Megaf |
sapier: that looks like corruped map... |
09:53 |
Megaf |
I think my map got corruped on the last crash |
09:56 |
sapier |
hmm very bad error message |
09:56 |
sapier |
can you still post the backtrace for me to see where to add a better one? |
09:58 |
Megaf |
http://paste.debian.net/117067/ |
10:01 |
Megaf |
celeron55: congrats, you got the worst piece of shit in the planet, thats the third map I get corruped by a fucking bug |
10:01 |
Megaf |
how am I supposed to explain that to all players? |
10:02 |
iqualfragile |
Megaf: do backups? |
10:03 |
sapier |
calm down and help us finding what's causing it ... and stop complaining about bugs in a development version ;-) |
10:05 |
Megaf |
I will try a fresh build and fres game with no mods |
10:09 |
Megaf |
sapier: good news, map is not corruped |
10:09 |
|
twoelk joined #minetest-dev |
10:09 |
Megaf |
fresh git clone of minetest core and game works |
10:10 |
sapier |
still you should do a regular backup and one prior updating to a new experimental version ;-) |
10:10 |
|
kahrl joined #minetest-dev |
10:12 |
twoelk |
Megaf: just out of interest, how large is your map by now? |
10:12 |
PenguinDad |
Megaf: which backend do you use? |
10:12 |
Megaf |
twoelk: 1.6G ../worlds/world/map.sqlite |
10:13 |
Megaf |
^ PenguinDad |
10:13 |
Megaf |
the last map I lost was more than 4 GB big |
10:13 |
Megaf |
but I lost it more due to a backup software error |
10:13 |
* Krock |
's map is 700 MB and zero corruptions happened since he configured dis antivirus program well |
10:16 |
kahrl |
Zeno`: uh, Megaf's crash had nothing to do with httpfetch |
10:18 |
twoelk |
maybe you should burn a backup to dvd once in a while so you have a save version when the backup process corrupts a valid backup. (happened at my office, destroyed 2 years worth of backups) |
10:20 |
Zeno` |
kahrl, I realised that about 5 minutes ago heh |
10:21 |
Zeno` |
but I still maintain that ruling it out was a good idea |
10:21 |
Zeno` |
*shrug* |
10:22 |
Megaf |
twoelk: indeed, my last server was lost on the backup process and I noticed that only when rstoring a backup |
10:31 |
sapier |
megaf for your bug I'd guess some mod tried to do things outside of map boundries |
10:31 |
Megaf |
sapier: we suspect of travelnet |
10:31 |
Megaf |
Im recompiling it in relese mode again and will run it without travelnet |
10:32 |
iqualfragile |
how the f do you destroy your backups? |
10:32 |
sapier |
still we need to find a way ShadowsNinjas lua exception handler not hiding all the relevant information ;) |
10:32 |
iqualfragile |
just copy that shit on a btrf-formated partition on another hdd and take a snapshot afterwards |
10:46 |
twoelk |
iqualfragile: destroying backups is really easy if you let it happen by an automated process and it becomes more fun if you are stupid enough to have all backups on the same physicall machine. Shit just tends to happen |
10:51 |
Megaf |
sapier: now I have dozens of mods and ai need to try one by one to see whats causing the crash because minetest will just hide all info |
10:52 |
nore |
Megaf, you make a dichotomy search for that :) |
10:54 |
sapier |
Megaf: I'm bugging Shadowninja for months to fix this so don't tell me ;-P |
10:54 |
Megaf |
ShadowNinja: common |
10:56 |
sapier |
to be honest it's not easy to fix, yet we need a solution |
11:01 |
Megaf |
well, it wanst like that before |
11:01 |
Megaf |
someone changed something |
11:01 |
Megaf |
so, just revert |
11:03 |
sapier |
lol |
11:03 |
sapier |
those changes aren't a single commit and have a lot of things on top of it |
11:04 |
sapier |
btw without them it's not guaranteed you'd have seen an error too because error handling is broken for a long time |
11:14 |
Megaf |
sapier: Zeno` kahrl twoelk VanessaE pipeworks is the mod whos causing the crash |
11:15 |
Zeno` |
good find |
11:16 |
Zeno` |
Megaf, also plantlife is being actively updated |
11:16 |
Zeno` |
in the last few days I mean |
11:19 |
nore |
Megaf: did you try updating it? |
11:19 |
nore |
pipeworks had a bugfix recently |
11:19 |
RealBadAngel |
Megaf, and you hanged c55 for that... |
11:19 |
Megaf |
yep |
11:19 |
Megaf |
someone must do something |
11:20 |
Megaf |
minetest used to show more reveling error messages not long ago |
11:20 |
Megaf |
if you didnt notice, its being a while since I last bothered you here |
11:23 |
Megaf |
nore: yep, there when all this begun to happen |
11:24 |
twoelk |
as this is software in development maybe we should have some more backup and recovery tools especially for server admins |
11:25 |
sapier |
https://github.com/minetest/minetest/pull/1579 ShadowNinja this might help you finding and fixing the issue |
11:26 |
sapier |
It's always a good thing to have a api fct to cause an error :-) |
11:29 |
Megaf |
nore: I did a fresh git clone from pipeworks, same issue |
11:30 |
|
ImQ009 joined #minetest-dev |
11:30 |
Megaf |
I just find the following quite funny |
11:30 |
Megaf |
DEBUG STACK FOR THREAD b28ff440: |
11:30 |
Megaf |
#0 virtual void* CurlFetchThread::Thread() |
11:30 |
Megaf |
what does curl have to do with pipeworks? |
11:34 |
sapier |
nothing that's just a list of threads |
11:40 |
RealBadAngel |
https://github.com/minetest/minetest/pull/1519/ |
11:40 |
RealBadAngel |
ive updated it with new version for serialize and make it compatible with older servers |
11:41 |
RealBadAngel |
so its good to go imho |
11:41 |
sapier |
what happens if a old client connects to this setver? |
11:42 |
kahrl |
Megaf: "minetest used to show more reveling error messages not long ago" <-- I suppose before you installed luajit |
11:43 |
Megaf |
I always used LuaJIT |
11:43 |
Megaf |
on this server at least |
11:44 |
RealBadAngel |
throw SerializationError("unsupported CF_SPECIAL_COUNT"); |
11:44 |
RealBadAngel |
this happens |
11:44 |
RealBadAngel |
and go back to main menu |
11:45 |
sapier |
on old client? really? |
11:45 |
RealBadAngel |
yes |
11:45 |
RealBadAngel |
this code been there before |
11:46 |
sapier |
ok .. do you always send the long count or only when it's used? |
11:46 |
RealBadAngel |
empty tile is also "used" |
11:46 |
RealBadAngel |
so always max defined is being send |
11:47 |
|
deltib joined #minetest-dev |
11:47 |
RealBadAngel |
currently its 2, with change it will be 6 |
11:47 |
sapier |
then I suggest increasing min protocol version, no need to make a client download things if it's gonna bail out immediatly |
11:48 |
sapier |
or, the better way of doing it, check client protocol version prior sending and send only two |
11:48 |
sapier |
this might cause some broken faces yes but most things will most likely work |
11:49 |
|
GhostDoge joined #minetest-dev |
11:49 |
kahrl |
Megaf: btw, did you apply the patch that I suggested? |
11:49 |
kahrl |
https://gist.github.com/kahrl/c81254227e11f09fd31f |
11:51 |
Megaf |
im actually afraid of things like that |
11:51 |
Zeno` |
ok, https://github.com/VanessaE/plantlife_modpack/pull/21 |
11:51 |
Megaf |
afraid of messing my git thing up again |
11:51 |
Zeno` |
ugh, sorry wrong @&$*@ window |
11:52 |
Zeno` |
I think I need to sleep |
11:52 |
kahrl |
you can always remove the patch before you do a git pull |
11:52 |
kahrl |
just do git checkout src/script/common/c_internal.cpp |
11:53 |
RealBadAngel |
sapier, how to check client version? an example somwhere? |
11:55 |
Zeno` |
RBA, does ClientInterface::getProtocolVersion() do what you want? |
11:56 |
Zeno` |
that's not really the client version though, so I guess not |
11:57 |
GhostDoge |
Megaf: If minetest would use svn it would be even easier to mess up your local copy ;) |
11:57 |
Megaf |
heh, I dont like SVN |
11:57 |
RealBadAngel |
if i add compability for older clients i wonder if protocol version bump is needed at all |
11:57 |
RealBadAngel |
version of serialization yes, its bumped but protocol? |
11:58 |
Zeno` |
RemoteClient: |
11:58 |
Zeno` |
u8 getMajor() { return m_version_major; } |
11:58 |
Zeno` |
u8 getMinor() { return m_version_minor; } |
11:58 |
Zeno` |
u8 getPatch() { return m_version_patch; } |
11:58 |
Zeno` |
std::string getVersion() { return m_full_version; } |
11:59 |
RealBadAngel |
isnt that engine version? |
11:59 |
Zeno` |
don't hink so (from a glance) |
12:00 |
Zeno` |
it's part of the RemoteClient class so if it is engine version I think it'd be in the wrong place |
12:00 |
Zeno` |
better check though |
12:02 |
RealBadAngel |
anyway such thing wasnt used before |
12:03 |
RealBadAngel |
server doesnt care bout client's version at all |
12:05 |
|
Krock joined #minetest-dev |
12:09 |
RealBadAngel |
no, i was wrong it does care |
12:10 |
RealBadAngel |
u16 protocol_version = m_clients.getProtocolVersion(peer_id); |
12:10 |
RealBadAngel |
and that is passed to serialize |
12:13 |
sapier |
net_proto_version or serialization_version are public you have direct access ... you have to at least bump serialization version, not sure about nev version too |
12:14 |
sapier |
net version |
12:15 |
RealBadAngel |
i think now it is ok |
12:15 |
RealBadAngel |
when i get client's one i can send just 2 tiles then |
12:16 |
|
sapier left #minetest-dev |
12:17 |
Zeno` |
wonder what you said |
12:23 |
RealBadAngel |
if (protocol_version < 24) |
12:23 |
RealBadAngel |
special_count = 2; |
12:23 |
RealBadAngel |
else special_count = CF_SPECIAL_COUNT; |
12:24 |
RealBadAngel |
this way older client can still connect to new servers |
12:25 |
|
Hunterz joined #minetest-dev |
12:33 |
RealBadAngel |
ok, its updated with compability for older clients |
13:07 |
|
deltib joined #minetest-dev |
13:18 |
|
Jordach joined #minetest-dev |
13:24 |
|
EvergreenTree joined #minetest-dev |
13:30 |
|
casimir joined #minetest-dev |
13:46 |
|
exio4 joined #minetest-dev |
13:49 |
|
NakedFury joined #minetest-dev |
13:53 |
RealBadAngel |
so, any more comments on https://github.com/minetest/minetest/pull/1519 ? |
13:58 |
|
hmmmm joined #minetest-dev |
14:11 |
Krock |
RealBadAngel, tested? |
14:34 |
RealBadAngel |
yup, i can connect with new client to old servers |
14:36 |
RealBadAngel |
hmmmm, https://github.com/minetest/minetest/pull/1519 |
14:39 |
|
Weedy joined #minetest-dev |
14:46 |
VanessaE |
RealBadAngel: did you try it with e.g. Redcrab's old server? |
14:46 |
VanessaE |
and try it multiple times |
14:46 |
VanessaE |
(that server is sort of the acid test of old-new connecting ability ;) ) |
14:47 |
exio4 |
how is it still running? |
14:47 |
VanessaE |
idk but somehow, it still is |
14:48 |
|
kaeza joined #minetest-dev |
15:13 |
|
eugd joined #minetest-dev |
15:26 |
|
Hunterz joined #minetest-dev |
15:34 |
|
Calinou joined #minetest-dev |
15:35 |
|
sapier joined #minetest-dev |
15:37 |
sapier |
for redcrabs server clear your media cache prior connecting ;-) |
15:42 |
Calinou |
and after |
15:42 |
sapier |
well if you care about those few kb yes |
15:59 |
VanessaE |
seems like a "connect to redcrab" script would be easy to make :) |
15:59 |
VanessaE |
mv cache cache.tmp ; minetest --go (redcrab's server address) ; rm -rf cache ; mv cache.tmp cache |
15:59 |
VanessaE |
:) |
16:00 |
VanessaE |
or something similar but idk if you can pass a username/pw on the command line |
16:02 |
|
twoelk joined #minetest-dev |
16:12 |
hmmmm |
RealBadAngel: lgtm but I'd rather wait for celeron to comment on the update |
16:27 |
RealBadAngel |
hmmmm, i did basically what he wanted me to do |
16:31 |
sapier |
RealBadAngel: Actually you did what you understood what he wanted you to do ... ;-) ... yes I'm picky now ... and I'd have understood same thing you did understand |
16:33 |
Calinou |
https://github.com/celeron55/minetest/issues/373 → why does this 404? |
16:33 |
Calinou |
it was about copy-paste |
16:33 |
Calinou |
oh, old link |
16:33 |
Calinou |
to celeron55/minetest |
16:39 |
|
Tesseract joined #minetest-dev |
16:43 |
|
zat joined #minetest-dev |
17:13 |
|
domtron joined #minetest-dev |
17:15 |
RealBadAngel |
celeron55, moving ver 6 to serialize/deserialize old would mean copying whole current code to "old" like version 5 is done, yes? |
17:16 |
celeron55 |
maybe |
17:17 |
celeron55 |
you don't have to do it, but try to be careful not to make serialization any less maintainable |
17:18 |
RealBadAngel |
i made it that way so 6 and 7 can connect both ways |
17:20 |
RealBadAngel |
but we already have one thing that was waiting to move oustide try catch |
17:21 |
RealBadAngel |
waving property it is |
17:22 |
RealBadAngel |
also i would like to add another one, light_source_alternative |
17:22 |
RealBadAngel |
so maybe moving 6 to old would be the best solution |
18:02 |
|
Megaf joined #minetest-dev |
18:02 |
Megaf |
Hi all |
18:02 |
Megaf |
I got a new bug for you |
18:02 |
Megaf |
or at least a crash |
18:02 |
kahrl |
yay :D |
18:02 |
Megaf |
http://paste.debian.net/117138/ |
18:03 |
sapier |
hmm I'd say you can keep it but I don't think that's gonna help ;-) |
18:03 |
kahrl |
"Killed"? That means something sent a SIGKILL to the minetest server |
18:03 |
sapier |
why do you kill it? |
18:03 |
Megaf |
not me |
18:03 |
sapier |
oom? |
18:03 |
Zefram_Fysh |
oom killer? |
18:03 |
Megaf |
my theory is, there was a memory leak |
18:04 |
sapier |
do you have valgrind? |
18:04 |
VanessaE |
tried to access -- from too far means the server doesn's know where the player really is |
18:04 |
Zefram_Fysh |
dmesg will tell you if it was an oom |
18:04 |
VanessaE |
the server and client disagree on where the player's coords are |
18:04 |
sapier |
server is right. |
18:04 |
Megaf |
[3079307.408879] Out of memory: Kill process 29019 (minetestserver) score 949 or sacrifice child |
18:05 |
sapier |
yes looks like a leak |
18:05 |
Megaf |
see? It had to kill minetestserver, to save its child |
18:05 |
zat |
Megaf: that is super dramatic |
18:06 |
sapier |
oom has some heuristics what to kill usually some high memory process is killed ... but it's more complex |
18:06 |
Megaf |
http://paste.debian.net/117139/ |
18:06 |
Megaf |
dmesg |
18:08 |
sapier |
hmm if I read correct it's "only" about 510 mb |
18:11 |
Megaf |
after a fresh boot of minetest server sapier |
18:11 |
Megaf |
http://paste.debian.net/117140/ |
18:12 |
Megaf |
sapier: I got plenty of mem to handle something using “only†510 MB |
18:12 |
Megaf |
anyway, 510 MB it’s already a lot for something like minetest server |
18:12 |
sapier |
true ... running valgrind to have a look wont harm |
18:13 |
celeron55 |
are those numbers pages? |
18:13 |
celeron55 |
509662 4kB pages would be 2GB |
18:14 |
sapier |
hmm 4k? ok then I didn't read correct |
18:15 |
celeron55 |
it would make sense if Megaf has 2GB of RAM |
18:15 |
celeron55 |
otherwise that doesn't make much sense |
18:15 |
Megaf |
yep, almost 2 GB of RAM there |
18:15 |
VanessaE |
maybe he's still trying to use that arduino or bananapi or whatever it was :) |
18:16 |
Megaf |
and that server runs only minetest server and lighttpd+php gci, and ssh-server |
18:17 |
VanessaE |
did you update some mod(s) recently? |
18:17 |
celeron55 |
it |
18:18 |
celeron55 |
*it's probably a mod because the MT server has very hard time reaching 2GB in any kind of light use |
18:19 |
celeron55 |
hmm wait, it's saying "1048064 pages of RAM" in there |
18:19 |
celeron55 |
that means they are 2kB pages |
18:19 |
Megaf |
VanessaE: all mods |
18:20 |
Megaf |
VanessaE: and pipeworks will not allow my server to start |
18:20 |
VanessaE |
wfm. |
18:20 |
Megaf |
I called you a couple of hours ago I think |
18:21 |
VanessaE |
called me? |
18:21 |
Megaf |
nevermind |
18:21 |
VanessaE |
O_o |
18:22 |
sapier |
VanessaE: looks like somehow generation of a out of bounds block is triggered by a mod. Seems like pipeworks causes it |
18:22 |
VanessaE |
sapier: how is that even possible? |
18:22 |
VanessaE |
pipeworks has no lvm's or any other such code |
18:22 |
VanessaE |
techic can do that though |
18:22 |
sapier |
getnode? |
18:22 |
VanessaE |
get_node() doesn't cause generation events. |
18:23 |
Megaf |
VanessaE: I get this when I try to start my server with pipeworks enabled, http://paste.debian.net/117060/ |
18:23 |
VanessaE |
it'll return nil or ignore (depending on which call you use) if the block is not loaded. |
18:23 |
VanessaE |
Megaf: no clue why that is without a backtrace from the engine. |
18:24 |
Megaf |
the backtrace doesnt help at all |
18:24 |
Megaf |
I compiled the server with debug flag and backtraced it |
18:24 |
VanessaE |
Megaf: I don't mean a gdp backtrace, I mean a Lua crash backtrace |
18:24 |
Megaf |
minetest will hide all info |
18:24 |
VanessaE |
gdb* |
18:25 |
sapier |
VanessaE: you won't get a backtrace as an exception is thrown within c++ code resulting in ShadowNinja's lua exceptionhandler catching it effectively resulting in "C++ exception occured" ;-) |
18:25 |
VanessaE |
minetest does not "hide" the crashdump, it's just failing to show it due to a bug in whatever routine is handling the actual crash. there's a difference. |
18:25 |
VanessaE |
sapier: "In addition, we got a 404 while trying to show you the custom 404 page." |
18:25 |
VanessaE |
:) |
18:25 |
PenguinDad |
Megaf: did you try https://github.com/minetest/minetest/pull/1580 |
18:26 |
Megaf |
PenguinDad: I will as soon as it goes to the master branch |
18:26 |
VanessaE |
Megaf: it won't go to master unless someone tests it. |
18:27 |
kahrl |
Megaf: please don't complain about minetest's error message if you refuse to apply patches that fix said messages |
18:27 |
kahrl |
messages* |
18:27 |
sapier |
kahrl nice teamwork ;-) |
18:27 |
Megaf |
ok sir, can you please help me to apply that patch? |
18:28 |
VanessaE |
sapier: be that as it may, until he can provide a Lua bt, I and nore can't help him fix the crash :) |
18:28 |
kahrl |
Megaf: wget https://github.com/minetest/minetest/pull/1580.patch |
18:28 |
kahrl |
Megaf: git apply 1580.patch |
18:28 |
VanessaE |
he can blame pipeworks all he wants but for all I know it could be mesecons (the two mods intermesh together nicely) |
18:28 |
sapier |
VanessaE: I was talking about 1580, based uppon 1579 ;-) |
18:28 |
VanessaE |
sapier: as was I |
18:29 |
sapier |
I just fixed that dummy commit message, no idea why I failed to squash it prior pushing |
18:32 |
sapier |
kahrl are you sure there never will be thrown a LuaError exception? |
18:32 |
kahrl |
LuaError is derived from std::exception, so it will be caught as well |
18:33 |
sapier |
ahh ... ok guess that will do too |
18:35 |
kahrl |
anyway, good work on 1579 :) |
18:35 |
Megaf |
kahrl: ok, patch applied and server recompiled, so now I just have to wait for it to crash, right? |
18:35 |
kahrl |
Megaf: yep |
18:35 |
Megaf |
so, should I try to enable pipeworks and make it crash on start up? |
18:36 |
kahrl |
yeah, you could try that |
18:37 |
sapier |
kahrl: I've been annoyed about those missing lua backtraces. Everytime I wanted to reproduce I stopped because of "nahh .. to much work" ;-) |
18:37 |
Megaf |
Off Topic: BTW, VanessaE, homedecor is fantastic now a days, fantastic aditions to it. Thanks a million! |
18:37 |
Megaf |
whoa!, it works! we got our old error messages! |
18:37 |
kahrl |
yay :D |
18:38 |
sapier |
case we merge this noone can tell "I don't know how to reproduce" ;-) |
18:38 |
PenguinDad |
Megaf: throw it at us ;) |
18:38 |
Megaf |
http://paste.debian.net/117142/ |
18:39 |
sapier |
kahrl as it is confirmed to work can you merge 1580? |
18:39 |
kahrl |
sapier: sure |
18:39 |
Megaf |
VanessaE: ^ |
18:39 |
sapier |
I don't wanna loose it like the chat overlay fix you did years ago ;-) |
18:41 |
kahrl |
yeah, would be a shame :) |
18:42 |
kahrl |
ok, it's in |
18:43 |
sapier |
comments about 1579? |
18:43 |
kahrl |
Megaf: before you do the next git pull, do a "git checkout src/script/common/c_internal.cpp" first |
18:43 |
kahrl |
Megaf: in order to avoid any conflicts |
18:44 |
Megaf |
Ok, doing that right now kahrl. Thanks |
18:44 |
kahrl |
sapier: I would make the chat command require the "server" privilege |
18:44 |
zat |
http://uppix.com/f-screenshot_6971953f8e0dd001756f3.jpg |
18:44 |
zat |
http://uppix.com/f-screenshot_6982853f8e0e3001756f5.jpg |
18:44 |
sapier |
hmm do you suggest anyone sane running debug build in production env AND having that mod installed? |
18:45 |
sapier |
well it won't harm too I'm gonna add it |
18:45 |
kahrl |
well, the mod will be running if you run the minimal game, even in release builds |
18:45 |
kahrl |
of course you shouldn't use minimal but I'm not sure everyone knows that |
18:45 |
sapier |
yes ... there a crash will happen |
18:46 |
zat |
one more: http://uppix.com/f-screenshot_7000253f8e15f001756f8.jpg |
18:46 |
sapier |
guess I should catch this |
18:47 |
VanessaE |
Megaf: looking....don't leave. |
18:47 |
Megaf |
VanessaE: I’m all yours for the next 60 minutes |
18:49 |
sapier |
the only lost blocks valgrind tells me about are shaders |
18:49 |
VanessaE |
ok, this is the result of nore's rewrite of the item transport logic in pipeworks. |
18:50 |
* Megaf |
looks at nore |
18:50 |
sapier |
kahrl: better that way? |
18:50 |
Megaf |
VanessaE: we better talk on the other channel now, right? |
18:51 |
VanessaE |
yes |
18:51 |
kahrl |
sapier: yes |
18:51 |
kahrl |
I think it can be merged now |
18:52 |
kahrl |
typo in line 22: modile |
18:52 |
kahrl |
er, line 28 now |
18:53 |
sapier |
fixed |
18:54 |
sapier |
hopefully we'll never need it again ;-) |
18:54 |
|
igor_ joined #minetest-dev |
18:55 |
|
igor_ left #minetest-dev |
19:01 |
Megaf |
just for notes sake, thats my git pull by the way |
19:01 |
Megaf |
http://paste.debian.net/117143/ |
19:14 |
kahrl |
Megaf: can you paste the output of git status |
19:15 |
kahrl |
(I'm confused why it would do a recursive merge and no fast forward) |
19:15 |
Megaf |
kahrl: # Your branch is ahead of 'origin/master' by 24 commits. |
19:15 |
kahrl |
hmm |
19:16 |
kahrl |
did you apply other patches or merge other branches before? |
19:16 |
Megaf |
well, there are two files that I added myself to that folder |
19:16 |
Megaf |
kahrl: it says it is merging very often |
19:16 |
Megaf |
when I git pull |
19:20 |
kahrl |
I'm a bit surprised you haven't run into more trouble due to the same changes appearing in both minetest master and your master |
19:20 |
kahrl |
but as long as it's working |
19:21 |
kahrl |
I could tell you how to revert to minetest master, but then you'd lose those other changes |
19:35 |
|
cg72 joined #minetest-dev |
19:36 |
|
sfan5 joined #minetest-dev |
19:48 |
|
domtron joined #minetest-dev |
20:11 |
kahrl |
so, about weblate again |
20:11 |
kahrl |
what should we do? |
20:12 |
kahrl |
it appears we have the following options right now: |
20:12 |
kahrl |
1. figure out how to install it (seems somewhat involved); sfan5 said he would do the hosting |
20:12 |
kahrl |
2. request hosting from weblate |
20:13 |
kahrl |
also the question is if we need to migrate some data from the old weblate server |
20:14 |
cg72 |
treegen.cpp is full of crap!!!! to many for loops! is anyone aginst me cleaning it up?? |
20:14 |
sapier |
cleaning is fine breaking it not ;-) |
20:15 |
cg72 |
sapier i wont break it on accident lol |
20:17 |
cg72 |
im testing it now, i removed 7 for loops , it only needs 4 |
20:23 |
PenguinDad |
cg72: I do see ~27 for loops in treegen.cpp |
20:23 |
cg72 |
lol well for each tree i can do only 4 so 8 total lol |
20:24 |
cg72 |
im not touching the l-system stuff |
20:25 |
cg72 |
well 9 as i forgot the roots of the jungle tree lol |
20:28 |
|
^v joined #minetest-dev |
20:32 |
pitriss |
Hi, please is possible to limit chat messages lenght in engine to some reasonable value? |
20:33 |
VanessaE |
they already are. |
20:33 |
VanessaE |
512 chars or some such |
20:33 |
pitriss |
Liberly land server was spammed by 9k+ message |
20:33 |
VanessaE |
update your server then? |
20:34 |
sapier |
amount of messages isn't limited |
20:34 |
pitriss |
when it was introduced? |
20:34 |
VanessaE |
sapier: you sure? I could swear such a filter was added ages ago |
20:34 |
pitriss |
wait i will bring here server owner |
20:34 |
sapier |
no not sure but I think only length of message is limited |
20:35 |
sapier |
but a mod kicking abusive users wouldn't be a big deal |
20:35 |
sapier |
so I don't see this to be something to be fixed in core |
20:35 |
|
sol_invictus joined #minetest-dev |
20:36 |
pitriss |
VanessaE: sol_invictus is liberty land owner,.. he have more informations |
20:37 |
VanessaE |
pitriss: ok. |
20:39 |
VanessaE |
ShadowNinja: ^^^^^^ ? |
20:39 |
VanessaE |
sol_invictus reports the server to be only a few days old. |
20:40 |
VanessaE |
so either that cutoff was not added or it's broken |
20:43 |
sapier |
well I can't remember about limiting number of messages |
20:47 |
sapier |
and there ain't a limitation in code |
20:48 |
sapier |
yet a mod doing this would be quite simple |
20:50 |
pitriss |
http://pastebin.com/7ZWehiHZ |
20:50 |
VanessaE |
there was such a proposal at one time (hence my pinging SN. he was working on such) |
20:51 |
|
Miner_48er joined #minetest-dev |
20:51 |
sapier |
working? even a full featured mod doing this was hardly more then an hour of work |
20:52 |
exio4 |
limit in the engine, iirc |
20:52 |
VanessaE |
well it went along with some other patches he had in mind |
20:52 |
sapier |
so if he did start he most likely would've completet it by now |
20:52 |
sapier |
well we don't need this to be "in core" |
20:53 |
VanessaE |
it belongs in core. |
20:53 |
sapier |
why? |
20:53 |
VanessaE |
every last server owner will need it. |
20:53 |
VanessaE |
that's why. |
20:53 |
sapier |
oh so a server owner running a private server for his two friends and himself will need it? |
20:53 |
VanessaE |
yep ;0 |
20:53 |
VanessaE |
:) |
20:53 |
sapier |
for sure ;-P |
20:53 |
VanessaE |
but you know what I meant :P |
20:54 |
sapier |
well if he does implement it fine but it's quite ugly to do this in core while it's almost no code to be done in lua |
20:55 |
VanessaE |
http://ix.io/atr |
20:55 |
VanessaE |
there it is. |
20:55 |
VanessaE |
and some of the discussion that surrounded it: http://irc.minetest.ru/minetest-dev/2014-02-20 |
20:55 |
sapier |
that doesn't limit the amount of messages vanessae |
20:56 |
VanessaE |
sapier: it's not the amount that needed limited. |
20:56 |
VanessaE |
it's the length. |
20:56 |
VanessaE |
one message, 9K in length. |
20:56 |
sapier |
he didn't write that |
20:56 |
VanessaE |
[08-23 16:36] <pitriss> Hi, please is possible to limit chat messages lenght in engine to some reasonable value? |
20:57 |
VanessaE |
"chat messages length" |
20:57 |
VanessaE |
I read that as "length of a chat message" |
20:57 |
VanessaE |
not the count of messages |
20:57 |
VanessaE |
pitriss: clarify please? |
20:58 |
sapier |
wasn't therere already some limitation? ... ok u16 ... 65k |
20:58 |
VanessaE |
yeah |
20:58 |
VanessaE |
65k.... is ridiculous. |
20:58 |
VanessaE |
no one's screen can hold that much |
20:59 |
pitriss |
I really think there should be some limit in lenght.. and it should be handled by engine itself.. this is basic even in webcoding to limit user inputs to some reasonable value. |
20:59 |
VanessaE |
even my big screens could only hold about 4k or so I guess (at a readable font size) |
20:59 |
VanessaE |
pitriss: so limit the length of a single chat message? |
20:59 |
sapier |
ok you guys discuss about a reasonable length first ;-) don't make it to short |
20:59 |
pitriss |
yep thats good because burst of messages is not so easy to do.. |
21:00 |
sapier |
and don't forget clients can still send oversized messages so this will reduce load but not fix all issues |
21:00 |
sapier |
burst messages are quite easy to do |
21:01 |
sapier |
if someone can send a 9k message he can send 90 100byte messsages too |
21:02 |
sapier |
but as I said fixing both of this issues in lua is possible by now too |
21:04 |
pitriss |
eh this guy did that by typing IMO.. there are two typos in that... |
21:04 |
sapier |
typing? |
21:04 |
VanessaE |
well anyways, that ix.io link is the patch I was referring to. dunno if it's still any good. |
21:06 |
sapier |
discard huge messages without any action? strange behaviour who's supposed to ever find the bug why messages above 1024 don't work? |
21:06 |
VanessaE |
sapier: see the chat log. that's the same argument that was made at the time. Why didn't anyone just take the code, make it right, and push it? |
21:06 |
VanessaE |
doing this in a mod is stupid and hacky. |
21:07 |
sapier |
because sometime ppl refuse to clean up the mess others do ;-) .. well shadowninja does usually complete at least those parts of his work he's interested in |
21:07 |
sapier |
but looking at current pull list he's got a lot of 90% compelte things there |
21:08 |
pitriss |
ok i will tell sol to try that patch.. i hope it will be still valid |
21:08 |
VanessaE |
cg72: still wanna rework the tree code? :P |
21:08 |
VanessaE |
pitriss: I already suggested via /msg that he throw together a mod to do the job for now |
21:09 |
pitriss |
ok thank you:) |
21:09 |
cg72 |
VanessaE yup its in progress why? |
21:10 |
VanessaE |
cg72: see above. you may run into .... friction.... when you are ready to get it merged :P |
21:10 |
sapier |
pitriss: that patch will solve the one 9k message thing but if someone really wants to spam your server it wont really help |
21:11 |
pitriss |
sapier: yeah i see.. |
21:11 |
pitriss |
but atleast something than such spam.. |
21:12 |
pitriss |
thanks for discussing it, I hope it will be fixed soon in some more system way:) |
21:13 |
VanessaE |
so have the code auto-kick the user on receipt of a string that's super long? |
21:13 |
cg72 |
VanessaE please clarify for me im stupid lol i dont understand what your trying to get across |
21:13 |
VanessaE |
cut off and warn if it's like 256 or 512 bytes, kick the user off cold if it's say 2K or more. |
21:13 |
pitriss |
yep sounds good for me |
21:13 |
VanessaE |
cg72: getting patches merged into mainline is sometimes a difficult thing to do. |
21:14 |
sapier |
give me about an hour and you'll have your mod |
21:15 |
cg72 |
VanessaE if i can do it better it should be a no brainer for the devs, the tree code is all first commit ans shit!! ( minus the l-sys trees) its slow and inefficient |
21:15 |
cg72 |
shame on someone for wirting that code :) |
21:29 |
Sokomine |
vanessae: isn't that implemented yet? clients tended to crash a lot when sending long messages in chat. which is sometimes annoying. of course not as often as it used to happen...but from time to time, i still encounter that bug |
21:30 |
Sokomine |
cg72: perhaps it was coded as a temporal soulution at the time |
21:31 |
cg72 |
:) Sokomine it probly was a cheap n quick code but its time to im prove it, as it seems noone ever looked at it before, hell it declares the same thing like 3 times in a row lol |
21:31 |
Sokomine |
cg72: good luck improving it! |
21:32 |
cg72 |
Sokomine im all dont with the same code in lua for the game so i just need to write it in c now |
21:49 |
sapier |
https://gist.github.com/anonymous/e8d42545c4772ba9486f anyone to test ChatGuard? |
22:01 |
|
iqualfragile_ joined #minetest-dev |
22:09 |
|
casimir joined #minetest-dev |
22:12 |
cg72 |
https://github.com/minetest/minetest_game/pull/308 |
22:12 |
cg72 |
all tested and works great |
22:12 |
cg72 |
now for the c version of that lol |
22:13 |
VanessaE |
don't bother. |
22:13 |
VanessaE |
the C version is deprecated |
22:13 |
VanessaE |
tree gen is supposed to be out-of-engine anyways, either done by Lua, or by a schematic, or by L-Systems |
22:14 |
cg72 |
supose to be but when will it really go away? |
22:14 |
VanessaE |
idk |
22:14 |
VanessaE |
now is as good a time as any |
22:14 |
cg72 |
lol so its still in need of a goor rewrite rotf |
22:15 |
cg72 |
well look at my cade VanessaE and see if you like it better |
22:15 |
cg72 |
https://github.com/minetest/minetest_game/pull/308 << BTW |
22:17 |
VanessaE |
the code looks okay to me from a quick skim; did you by chance benchmark it? |
22:19 |
cg72 |
like i know how to do that with pc stuf, if its not embedded i m lost for a benchmark |
22:19 |
VanessaE |
oh I just mean like run the code for a thousand passes or something, generating trees, and do the same with the old code |
22:19 |
VanessaE |
time it with os.time() or some such |
22:19 |
* cg72 |
is lost again |
22:20 |
VanessaE |
or excuse me, os.clock() |
22:20 |
VanessaE |
not os.time |
22:21 |
* cg72 |
has no bloody idea what your telling her to do |
22:21 |
VanessaE |
you do something like local t1 = os.clock() ; run your tree gen a thousand times ; print(os.clock() - t1) |
22:21 |
VanessaE |
do that with your new code and do it again with the old code |
22:21 |
cg72 |
ok i think |
22:22 |
VanessaE |
I use the same basic idea when I benchmark a routine in e.g. plants_lib |
22:22 |
|
sapier joined #minetest-dev |
22:23 |
VanessaE |
record the current clock value, run the code for some heavy amount guaranteed to take forever, subtract the now-current clock value from the recording to get the elapsed time |
22:23 |
VanessaE |
as long as you do the exact same "heavy amount guaranteed to take forever", e.g. generate 1000 trees, you will get a reasonably consistent report that you can say yes, my new code is faster, etc. |
22:23 |
sapier |
use core.get_us_time() to do benchmarking |
22:23 |
VanessaE |
sapier: ok, or use that |
22:24 |
sapier |
it's way more precise |
22:24 |
VanessaE |
but anything that can show that the new code is faster than the old code is good enough for this |
22:24 |
sapier |
did anyone check the chatguard mod by now? |
22:24 |
VanessaE |
(e.g. even if it's only precise to a tenth of a second) |
22:24 |
sapier |
well I've seen time run backwards with os.clock() ;-) |
22:30 |
VanessaE |
haha |
22:31 |
VanessaE |
sapier: the other devs were right (whoever it was who said it, I forget). it DOES look like it specifies time in the US. :) |
22:31 |
VanessaE |
that should be renamed before it becomes too entrenched. |
22:32 |
VanessaE |
core.get_clock_microseconds() or something |
22:35 |
celeron55 |
get_µs_time of course! we can use unicode in 2014, right?! |
22:36 |
cg72 |
celeron55 nope whats unicode? |
22:37 |
cg72 |
lol |
22:38 |
celeron55 |
"i just upgraded from baudot to ascii, what is this futuristic shit" |
22:40 |
PenguinDad |
lol |
22:41 |
Kray |
>unicode identifiers |
22:41 |
cg72 |
sorry i cant get that upgrade to fit on my 5.25 floppy |
22:44 |
cg72 |
sapier >>> attempt to call field 'get_us_time' (a nil value) |
22:45 |
VanessaE |
what? your build is more than 5 minutes old?! dinosaur! :D |
22:46 |
cg72 |
its 6 days old |
22:46 |
VanessaE |
that's about 4 days too old for that particular call |
22:46 |
cg72 |
now you tell me |
23:05 |
Sokomine |
rapid progress :-) |
23:06 |
Sokomine |
celeron55: any further ideas how to solve that inventory-switch-problem? |
23:14 |
Sokomine |
celeron55: people continue to loose items through that bug. there just isn't any reliable way for my mod to catch it. perhaps all these...switches...where items are attached to the mouse pointer (and hidden in the slot something was taken out) could be _disallowed_ only if there's a allow_metadata_inventory_put function - and allowed elsewhere |
23:14 |
Sokomine |
though that might still cause trouble with locked chests |
23:16 |
sapier |
Sokomine imho we schouldn't add a workaround we have to be compatible later instead of doing a real fix. Problem is a real fix will be some work |
23:16 |
VanessaE |
sapier: #minetest--> |
23:16 |
VanessaE |
a question for you there. |
23:26 |
cg72 |
vanessa you dont want to know the speed i get now lol |
23:26 |
Sokomine |
hm. i really hope there'll be a fix |
23:28 |
PenguinDad |
cg72: but I want to know that ;P |
23:30 |
cg72 |
10,000 times old tree 3-3.5 sec, mine .18-.21 sec jungletrees old 7.5, mine .30-.36 |
23:31 |
sapier |
nice |
23:32 |
cg72 |
anyone remember how to sqush in terminal lol |
23:32 |
cg72 |
squash** |
23:33 |
PenguinDad |
you got calibre times now :D |
23:33 |
sapier |
git rebase -i HEAD~<number> |
23:33 |
cg72 |
i keep forgetting the -i lol |
23:40 |
cg72 |
ok so now on th the c++ side of it |
23:46 |
cg72 |
there now test and merge my code guys as its the best |