Time |
Nick |
Message |
00:27 |
|
shadowzone joined #minetest-dev |
01:15 |
|
Ardonel joined #minetest-dev |
01:17 |
|
sloantothebone joined #minetest-dev |
01:45 |
|
Siva joined #minetest-dev |
02:40 |
|
cimbakahn joined #minetest-dev |
03:21 |
|
sloantothebone joined #minetest-dev |
03:31 |
|
Siva_AndroIRC joined #minetest-dev |
04:07 |
|
Siva_AndroIRC joined #minetest-dev |
05:34 |
|
Hunterz joined #minetest-dev |
05:40 |
|
johnwayne1986 joined #minetest-dev |
05:56 |
|
sloantothebone joined #minetest-dev |
06:48 |
|
Krock joined #minetest-dev |
06:54 |
|
chchjesus__ joined #minetest-dev |
07:33 |
|
CraigyDavi joined #minetest-dev |
08:01 |
|
nrzkt joined #minetest-dev |
08:05 |
|
Yepoleb joined #minetest-dev |
08:06 |
|
chchjesus__ joined #minetest-dev |
08:33 |
|
Siva_AndroIRC joined #minetest-dev |
08:41 |
|
sloantothebone joined #minetest-dev |
08:45 |
|
rubenwardy joined #minetest-dev |
09:06 |
|
Gael-de-Sailly joined #minetest-dev |
09:20 |
|
TBC_x joined #minetest-dev |
09:30 |
|
blaze joined #minetest-dev |
09:48 |
|
Calinou joined #minetest-dev |
10:08 |
|
blaze joined #minetest-dev |
10:11 |
|
leat joined #minetest-dev |
10:23 |
|
CraigyDavi joined #minetest-dev |
10:23 |
|
johnwayne1986 joined #minetest-dev |
10:24 |
|
leat joined #minetest-dev |
10:51 |
|
Krock joined #minetest-dev |
11:22 |
|
Zeitgeist_ joined #minetest-dev |
11:25 |
|
Fritigern joined #minetest-dev |
11:50 |
|
Gael-de-Sailly joined #minetest-dev |
12:04 |
|
ElectronLibre joined #minetest-dev |
12:08 |
|
leat joined #minetest-dev |
12:16 |
|
Amaz joined #minetest-dev |
12:17 |
|
leat joined #minetest-dev |
12:23 |
|
zupoman joined #minetest-dev |
12:23 |
|
zupoman joined #minetest-dev |
12:27 |
|
leat joined #minetest-dev |
12:35 |
|
T4im joined #minetest-dev |
12:37 |
|
CraigyDavi joined #minetest-dev |
12:46 |
|
MinetestForFun joined #minetest-dev |
13:18 |
|
ElectronLibre left #minetest-dev |
13:49 |
|
H-H-H joined #minetest-dev |
13:52 |
|
leat joined #minetest-dev |
14:19 |
|
nore joined #minetest-dev |
14:20 |
|
deltib_ joined #minetest-dev |
14:44 |
|
Siva joined #minetest-dev |
14:49 |
|
johnwayne1986 joined #minetest-dev |
15:12 |
|
johnwayne1986 joined #minetest-dev |
15:32 |
|
rater193__ joined #minetest-dev |
15:33 |
|
ElectronLibre joined #minetest-dev |
15:39 |
|
johnwayne1986 joined #minetest-dev |
15:41 |
|
Gael-de-Sailly joined #minetest-dev |
16:07 |
|
johnwayne1986 joined #minetest-dev |
16:15 |
|
hmmmm joined #minetest-dev |
16:32 |
|
MinetestForFun joined #minetest-dev |
16:32 |
|
Hunterz joined #minetest-dev |
16:38 |
|
nrzkt joined #minetest-dev |
16:55 |
|
MinetestForFun joined #minetest-dev |
17:28 |
|
Player_2 joined #minetest-dev |
17:33 |
|
Krock2 joined #minetest-dev |
18:05 |
hmmmm |
hrmm |
18:06 |
hmmmm |
never really noticed it, but Client and Server are so un-orthogonal |
18:06 |
hmmmm |
why does the Server manage its own gamedef components while Client does not? |
18:15 |
|
tuy joined #minetest-dev |
18:18 |
celeron55 |
probably because random |
18:18 |
celeron55 |
this is one of those questions |
18:19 |
celeron55 |
i mean, there might have been a reason some years ago, but i'm sure that reason does not exist anymore |
18:27 |
|
Gael-de-Sailly joined #minetest-dev |
19:21 |
hmmmm |
I think it's mostly because Game is messy |
19:21 |
hmmmm |
sure - the file may have been broken up into lots of simple functions, but that doesn't do anything about the actual interface design |
19:23 |
kahrl |
speaking of Zeno_, what was the last news about the ogre3d branch? |
19:24 |
hmmmm |
last time he was here, it works but it's buggy |
19:24 |
hmmmm |
:-) |
19:24 |
kahrl |
well that's to be expected |
19:24 |
kahrl |
like any huge rewrite |
19:24 |
hmmmm |
i hope it doesn't cause too many conflicts with client side modding |
19:44 |
|
paramat joined #minetest-dev |
19:49 |
paramat |
yesterday kilbith posted http://irc.minetest.ru/minetest-dev/2015-08-22#i_4374313 i'm noticing very short rendering freezes in random bursts of 1 or 2, every second or so. more noticeable when flying. i don't seem to remember this happening before |
20:01 |
OldCoder |
I've been asked if this is significant: serialize.cpp:161:21: warning: comparison between signed and unsigned [-Wsign-compare]: if (is.gcount() != s_size) |
20:02 |
paramat |
not a big problem, that's why it's only a 'warning' |
20:02 |
OldCoder |
The person in question states that compiles fail but I don't see how... |
20:02 |
OldCoder |
unless he has turned on fatal warnings. One more datum... |
20:02 |
OldCoder |
He states that he has regular serialization errors at runtime and feels this line may be related |
20:03 |
OldCoder |
Does the speculation seem unwarranted? |
20:03 |
OldCoder |
Thank you |
20:04 |
paramat |
actually i notice these brief rendering freezes in 0.4.12 too, perhaps not as often though |
20:05 |
OldCoder |
Ah. He adds that the runtime message is: Client::handleCommand_ActiveObjectMessages: caught SerializationError: deSerializeString: couldn't read all chars |
20:05 |
OldCoder |
If anybody is able to comment, I will work on debugging this with him |
20:05 |
OldCoder |
This seems to be a power user in Romania BTW |
20:09 |
OldCoder |
Looking at the code, I'd need to speculate myself it's an internationalization issue |
20:09 |
|
johnwayne1986 joined #minetest-dev |
20:24 |
|
paramat left #minetest-dev |
20:33 |
|
emptty joined #minetest-dev |
20:54 |
|
Siva_Machina joined #minetest-dev |
20:56 |
|
OldCoder joined #minetest-dev |
21:00 |
|
EvergreenTree joined #minetest-dev |
21:03 |
|
Siva joined #minetest-dev |
21:19 |
|
est31 joined #minetest-dev |
21:19 |
est31 |
OldCoder, doesn't that error output more? |
21:19 |
est31 |
I've thought it actually outputs an actual size |
21:19 |
est31 |
either way, the issue is that he might have too much blocks |
21:19 |
est31 |
or mods |
21:20 |
est31 |
or too large media files |
21:20 |
est31 |
but we are still tweaking the size, so it would be interesting to have it |
21:20 |
OldCoder |
est1, that is all, it appears; I have a screenshot. What I will do is debug it with him. |
21:21 |
OldCoder |
I suspect internationalization |
21:21 |
est31 |
np |
21:21 |
est31 |
no |
21:21 |
est31 |
that isnt the problem |
21:21 |
OldCoder |
No? Not into a JSON file? |
21:21 |
OldCoder |
There is a Serialize Wide routine |
21:21 |
est31 |
what does this have to do with json |
21:21 |
est31 |
this is about ActiveObjectMessages |
21:22 |
est31 |
there is no json for those |
21:22 |
OldCoder |
Ah |
21:22 |
OldCoder |
Moment, getting PNG |
21:22 |
est31 |
seems to be too many mobs |
21:22 |
OldCoder |
http://minetest.org/serialize.png |
21:23 |
OldCoder |
Too many mobs might produce that context est1? ^ |
21:23 |
OldCoder |
See screenshot |
21:23 |
OldCoder |
I have a user who is willing to help debug; what would you like us to try? |
21:24 |
est31 |
its not precisely a bug |
21:24 |
est31 |
but I think hmmmm added actual limit printing to the error msg |
21:24 |
est31 |
seems I'm mistaken |
21:26 |
est31 |
OldCoder, what version is the server? |
21:26 |
OldCoder |
Latest git |
21:26 |
OldCoder |
Moment |
21:26 |
OldCoder |
Well, recent. Looks like I built it fresh on August 9. |
21:27 |
OldCoder |
What's the GUI key to report the exact server string? |
21:27 |
OldCoder |
It just says 0.4.13-dev |
21:28 |
OldCoder |
est31, ^ |
21:28 |
est31 |
HybridDog gets the error as well... |
21:28 |
est31 |
OldCoder, type /status |
21:28 |
OldCoder |
Says 0.4.13-dev |
21:28 |
OldCoder |
Git date was about 150809 |
21:29 |
est31 |
0.4.13-dev is after the 0.4.13 release |
21:29 |
est31 |
that cant be |
21:29 |
est31 |
before we had 0.4.12-dev |
21:29 |
OldCoder |
Checking sources |
21:29 |
est31 |
we have 0.4.13 dev since this week |
21:30 |
OldCoder |
Checking sources |
21:30 |
OldCoder |
And yet this is what it says :-) |
21:30 |
OldCoder |
Moment |
21:31 |
OldCoder |
In fact you made the latest commit... |
21:31 |
OldCoder |
Author: est31 <MTest31outlook.com> |
21:31 |
OldCoder |
Date: Sun Aug 9 23:49:39 2015 +0200 |
21:31 |
OldCoder |
Continue with 0.4.13-dev |
21:31 |
OldCoder |
Shall I update? |
21:31 |
est31 |
ouch |
21:32 |
est31 |
seems you pulled in those few hours where we had this release at HEAD |
21:32 |
OldCoder |
Heh |
21:32 |
OldCoder |
So this is the wrong release? |
21:32 |
est31 |
and then hmmmm reverted it |
21:32 |
OldCoder |
What is there now and should I rebuild? |
21:33 |
est31 |
yes you should |
21:33 |
OldCoder |
What will happen or should I do with the error message? |
21:33 |
est31 |
its more likely a server error than a client error |
21:33 |
est31 |
can you reproduce it? |
21:34 |
est31 |
perhaps open a bug for it, HybridDog seems to get it as well |
21:34 |
OldCoder |
Yes with the player's assistance. This is w_laenger in Germany. |
21:34 |
OldCoder |
So, the issue is observed but the cause is not known? It is not too many mobs? |
21:35 |
est31 |
no |
21:35 |
est31 |
something else |
21:37 |
OldCoder |
Recompiling. I will report back. Thank you. |
21:38 |
OldCoder |
It will not be rapid progress; I need to coordinate with a player in Germany but he is interested. |
21:43 |
|
H-H-H joined #minetest-dev |
21:43 |
|
ElectronLibre left #minetest-dev |
21:51 |
|
H-H-H joined #minetest-dev |
22:46 |
|
est31 joined #minetest-dev |
22:56 |
|
Siva_AndroIRC joined #minetest-dev |
23:20 |
hmmmm |
[05:24 PM] <est31> but I think hmmmm added actual limit printing to the error msg |
23:20 |
hmmmm |
I did, but only if the error is actually "the message is too big to (de)serialize" |
23:20 |
est31 |
yes, realized that later |
23:20 |
hmmmm |
that error in the screenshot clearly says "couldn't read all chars" |
23:20 |
hmmmm |
i.e. you've got an invalid pascal string |
23:21 |
est31 |
pascal? |
23:21 |
est31 |
dont know pascals memory layout |
23:21 |
hmmmm |
a string where the length is prefixed to the actual string data is a pascal string |
23:21 |
hmmmm |
as opposed to a C-string |
23:22 |
est31 |
arent c++ strings this, too? |
23:22 |
hmmmm |
C++ std::string? |
23:22 |
est31 |
I guess its called pascal strings because pascal is older |
23:22 |
hmmmm |
no, it's an opaque class |
23:22 |
est31 |
but C hasnt invented that way of strings either have they? |
23:22 |
hmmmm |
C invented C-strings |
23:23 |
hmmmm |
null terminator indicates the end of a string |
23:23 |
hmmmm |
this makes string manipulation functions very simple to write, at the cost of an O(n) length lookup, O(n) concatenation, buffer overrun horror stories, countless off-by-one errors, etc. |
23:23 |
|
CraigyDavi joined #minetest-dev |
23:24 |
est31 |
and you can have arbitrarily long strings |
23:25 |
est31 |
hmmmm, does pascal actually specify the memory layout? |
23:25 |
hmmmm |
yes |
23:25 |
est31 |
and c++ doesnt? |
23:25 |
hmmmm |
absolutely not.. |
23:25 |
est31 |
then it makes some sense to call them pascal strings |
23:26 |
est31 |
but it would be interesting to have an implementation of c++ that implements std::string as C-strings |
23:26 |
hmmmm |
why..? |
23:26 |
est31 |
because if it doesnt implement them as c-strings it has to store the length some way |
23:27 |
est31 |
so the only way the spec can be fulfilled is by doing it c-string way, or with similar costs |
23:27 |
hmmmm |
storing the length along with data doesn't make it a pascal string |
23:27 |
hmmmm |
pascal strings have definite memory layout |
23:28 |
hmmmm |
there is absolutely nothing stopping you from writing a class that stores a char array with a length field |
23:28 |
hmmmm |
if that's non-POD, which std::strings are not, that's not going to have a well-defined memory layout... |
23:29 |
hmmmm |
some std::string implementations have a built-in buffer for small strings |
23:29 |
hmmmm |
then above a certain length threshhold they use memory allocated with new[] |
23:29 |
est31 |
pascal doesnt store strings, it stores arrays |
23:29 |
hmmmm |
some std::string implementations also have COW |
23:29 |
hmmmm |
std::string says absolutely nothing about a memory layout |
23:30 |
hmmmm |
pascal does |
23:30 |
hmmmm |
it's built into the compiler |
23:31 |
est31 |
where is the pascal spec? |
23:31 |
hmmmm |
somewhere on google i suppose |
23:31 |
est31 |
there are tons of pascal flavours |
23:36 |
est31 |
ok lets stop this |
23:36 |
est31 |
perhaps include the actual counts that differed? |
23:36 |
est31 |
"read 5, but claimed to get 10" |
23:37 |
hmmmm |
lol no |
23:37 |
hmmmm |
it's more like "read 2, but claimed to get 0xD74C" |
23:37 |
hmmmm |
it's clearly memory corruption |
23:37 |
hmmmm |
because it mostly seems to work, i'm not too concerned with it |
23:37 |
est31 |
you have to be very sure until you give hardware the fault |
23:38 |
hmmmm |
?? |
23:38 |
hmmmm |
i never claimed the hardware was at fault.. |
23:38 |
est31 |
<hmmmm> it's clearly memory corruption |
23:38 |
hmmmm |
how does that sentence imply a hardware problem |
23:39 |
est31 |
ah |
23:39 |
est31 |
nvm |
23:39 |
est31 |
still, why are you that sure |
23:40 |
hmmmm |
there's no other actual explanation |
23:40 |
hmmmm |
somehow something overwrites that memory |
23:41 |
hmmmm |
it could be a use-after-free |
23:41 |
est31 |
from how I get it, memory corruption is this kind of thing that can happen if you use undefined behaviour |
23:42 |
est31 |
but there can be other parts that cause problems too |
23:42 |
est31 |
e.g. is the size written the right way? |
23:42 |
hmmmm |
it's useless to speculate on the exact cause |
23:42 |
est31 |
perhaps only one active object message type is affected? |
23:42 |
est31 |
and thats super seldomly used |
23:42 |
hmmmm |
it's not |
23:43 |
hmmmm |
this happens at the networking layer somehow |
23:43 |
hmmmm |
i had vanessae capture logs of raw AOMs before sending |
23:44 |
est31 |
it still would be interesting to have the actual count |
23:44 |
est31 |
if its a memory corruption as you claim, the number will likely be very high |
23:45 |
est31 |
if its another bug, it might perhaps be related to the number, e.g. always higher by two |
23:46 |
hmmmm |
it happens only on vanessae's server where the number of objects is very high |
23:46 |
hmmmm |
VERY high |
23:46 |
hmmmm |
my client gets DDoSed with active object messages from vanessaes server |
23:46 |
est31 |
I have found a fix for a related bug also by simply looking at the size, seeing that its as double as much than the actual payload, and then correctly speculating that the size gets +=ed twice |
23:47 |
hmmmm |
maybe |
23:48 |
hmmmm |
as that bug doesn't actually affect gameplay and it only happens rarely, it's on my backburner |
23:48 |
hmmmm |
you can chase it if you'd like |
23:48 |
est31 |
as long as you dont wait until 2 days before release until you give it the blocker labell |
23:49 |
est31 |
only to stall the date |
23:50 |
est31 |
either way, I'm right now doing non-core engine stuff, so wont help too much with the engine |
23:52 |
hmmmm |
it's not a blocker, but it would still be nice if non-blocking bugs got solved... |
23:57 |
|
wischi joined #minetest-dev |
23:59 |
|
swaaws joined #minetest-dev |