Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MineClone2 servercrash by travelnet #40

Open
RonnyBarthmann opened this issue Mar 31, 2019 · 7 comments
Open

MineClone2 servercrash by travelnet #40

RonnyBarthmann opened this issue Mar 31, 2019 · 7 comments

Comments

@RonnyBarthmann
Copy link

2019-03-31 07:45:12: ERROR[Main]: ServerError: AsyncErr: ServerThread::run Lua: Runtime error from mod 'travelnet' in callback on_playerReceiveFields(): Invalid position (expected table got nil).
2019-03-31 07:45:12: ERROR[Main]: stack traceback:
2019-03-31 07:45:12: ERROR[Main]: [C]: in function 'get_meta'
2019-03-31 07:45:12: ERROR[Main]: .../sda3/Minetest/server1/.minetest/mods/travelnet/init.lua:197: in function <.../sda3/Minetest/server1/.minetest/mods/travelnet/init.lua:191>
2019-03-31 07:45:12: ERROR[Main]: ...minetest/bin/../share/minetest/builtin/game/register.lua:419: in function <...minetest/bin/../share/minetest/builtin/game/register.lua:399>
2019-03-31 07:45:12: ERROR[Main]: stack traceback:
2019-03-31 07:45:12: ERROR[Main]: [C]: in function 'get_meta'
2019-03-31 07:45:12: ERROR[Main]: .../sda3/Minetest/server1/.minetest/mods/travelnet/init.lua:197: in function <.../sda3/Minetest/server1/.minetest/mods/travelnet/init.lua:191>
2019-03-31 07:45:12: ERROR[Main]: ...minetest/bin/../share/minetest/builtin/game/register.lua:419: in function <...minetest/bin/../share/minetest/builtin/game/register.lua:399>

@RonnyBarthmann RonnyBarthmann changed the title servercrash at travelnet MineClone2 servercrash by travelnet Mar 31, 2019
@ghost
Copy link

ghost commented Apr 19, 2019

same: Invalid position (expected table got nil).
may be at change row, listup or down ?

2019-04-19 14:14:13: ERROR[Main]: ServerError: AsyncErr: ServerThread::run Lua: Runtime error from mod 'travelnet' in callback on_playerReceiveFields(): Invalid position (expected table got nil). 2019-04-19 14:14:13: ERROR[Main]: stack traceback: 2019-04-19 14:14:13: ERROR[Main]: [C]: in function 'get_meta' 2019-04-19 14:14:13: ERROR[Main]: /home/thomas/.minetest/mods/travelnet/init.lua:214: in function 'func' 2019-04-19 14:14:13: ERROR[Main]: ...ocal/share/minetest/builtin/profiler/instrumentation.lua:106: in function <...ocal/share/minetest/builtin/profiler/instrumentation.lua:100> 2019-04-19 14:14:13: ERROR[Main]: /usr/local/share/minetest/builtin/game/register.lua:419: in function </usr/local/share/minetest/builtin/game/register.lua:399> 2019-04-19 14:14:13: ERROR[Main]: stack traceback: 2019-04-19 14:14:13: ERROR[Main]: [C]: in function 'get_meta' 2019-04-19 14:14:13: ERROR[Main]: /home/thomas/.minetest/mods/travelnet/init.lua:214: in function 'func' 2019-04-19 14:14:13: ERROR[Main]: ...ocal/share/minetest/builtin/profiler/instrumentation.lua:106: in function <...ocal/share/minetest/builtin/profiler/instrumentation.lua:100> 2019-04-19 14:14:13: ERROR[Main]: /usr/local/share/minetest/builtin/game/register.lua:419: in function </usr/local/share/minetest/builtin/game/register.lua:399>

@VanessaE
Copy link
Contributor

VanessaE commented May 8, 2020

This also affects Minetest 5.3.0-dev with minetest_game:

2020-05-08 05:45:35: ERROR[Main]: ServerError: AsyncErr: ServerThread::run Lua: Runtime error from mod 'travelnet' in callback on_playerReceiveFields(): Invalid position (expected table got nil).
2020-05-08 05:45:35: ERROR[Main]: stack traceback:
2020-05-08 05:45:35: ERROR[Main]:       [C]: in function 'get_meta'
2020-05-08 05:45:35: ERROR[Main]:       ..._World/worldmods/dreambuilder_modpack/travelnet/init.lua:214: in function <..._World/worldmods/dreambuilder_modpack/travelnet/init.lua:205>
2020-05-08 05:45:35: ERROR[Main]:       /usr/local/share/minetest/builtin/game/register.lua:429: in function </usr/local/share/minetest/builtin/game/register.lua:413>

@eliam
Copy link

eliam commented May 25, 2020

Hey, I got something similar in realtest using 5.3.0-dev. Switching to 5 stable seems to have cleared it up so I guess a bug was added somewhere. Too lazy to look further than 'works for me in 5 stable' right now.

@stormchaser3000
Copy link

stormchaser3000 commented Aug 5, 2020

any idea how to reproduce this? just wondering because I was thinking about trying to fix it

@eliam
Copy link

eliam commented Aug 5, 2020

i think i just used a local build of 5.3.0-dev with https://content.minetest.net/packages/Wuzzy/realtest_mt5/ and it died with the error. not sure if there is a newer dev version but i can try again if there is. using 5 stable didnt die. given i was setting up a game for my kid to play, that was as much as i could be bothered to do!

@WulftheNordicRanger
Copy link

It seems to trigger randomly when hitting the back button when you try to add a station without naming it. I poked around at the change log and it seems that there was a change relating to the meta function and i wonder if that could be a possible cause

@ymph
Copy link

ymph commented Oct 13, 2020

We had the same kind of errors on our server (5.3.0) :

2020-10-08 14:27:06: ERROR[Main]: ServerError: AsyncErr: ServerThread::run Lua: Runtime error from mod 'travelnet' in callback on_playerReceiveFields(): Invalid position (expected table got nil).
2020-10-08 14:27:06: ERROR[Main]: stack traceback:
2020-10-08 14:27:06: ERROR[Main]: 	[C]: in function 'get_meta'
2020-10-08 14:27:06: ERROR[Main]: 	.../local/share/minetest/games/unej/mods/travelnet/init.lua:214: in function <.../local/share/minetest/games/unej/mods/travelnet/init.lua:205>
2020-10-08 14:27:06: ERROR[Main]: 	/usr/local/share/minetest/builtin/game/register.lua:429: in function </usr/local/share/minetest/builtin/game/register.lua:413>

Our players were on a unstable wifi connection.

The PandoraBox Project, found also the same problem in this very mod and another one:

In both cases, the root cause of the crashes were not fully explained (at least in the issues) and the implemented correction was to validate the inputs in the register_on_player_receive_fields handler of the mod.

For information, for the time being, we will use on our server the following fork of travelnet that integrate a correction for this problem (and other ones also) : mt-mods/travelnet.

See also the following discussion on a Merge Request on the magic-compass mod in where we encountered exactly the same kind of problem.

I have absolutely no concrete explanation and proof of this, but if I had the resources to track down the real root of the problem, I would start by looking into the handling of the network stack in minetest and the use of udp.

In any case, the recommendation found in the minetest modding book and in the following article, is that formspec submissions can not be trusted and must be validated.

oversword added a commit to oversword/travelnet that referenced this issue Feb 1, 2022
…nput data (Sokomine#40)

* Check that a node is in fact a travelnet or elevator before parsing input data

* Update functions.lua

Check that node_def and node_def.groups exist before using them

Co-authored-by: SX <[email protected]>

Co-authored-by: SX <[email protected]>
Co-authored-by: Buckaroo Banzai <[email protected]>
oversword pushed a commit to oversword/travelnet that referenced this issue Feb 5, 2022
* cleanup Sokomine#40 changes

Co-authored-by: SX <[email protected]>

Co-authored-by: SX <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants