Page 1 of 1

server crashing while world save

Posted: Wed Feb 20, 2008 4:44 am
by thorin
Hi all, I am new to POL, so please be kind and respectful :)

I have problem with POL latest version - pol-linuxbin-097-2007-08-23-RC5-Coregina-gentoo everything running on Slackware (2.6.21.5).

Pol starting fine, runnig everything is working, users can login, but when trying to save world from game or waiting to auto save system crash with no errors, just "Illegal instruction"

giving me no errors just a note Illegal instruction, server down...

Does anyone have idea which folders should have access to write or sth?
or what might happen, or where to find errors.

I heard that in .ndt files I can find something...after this illegal instruction I can't run pol again, stops on:


---START PAKIETU Single Click 0x09... OK---
Reading data files:
data/accounts.txt: 12 elements in 4 ms.
Error!
'data/objects.ndt exists. This probably means the system
exited while writing its state. To avoid loss of data,
forcing human intervention.
Server Shutdown: reading data
Execution aborted due to: Human intervention required.

now i need to delete .ndt files and it's going to run again, after save it's going to be same...

Sorry for beeing noob :)

Posted: Wed Feb 20, 2008 6:53 am
by CWO
You won't find anything in .ndt files. What happens is during a worldsave, POL writes all of the data to .ndt files. Once done, POL deletes the .bak files, renames the .txt files to .bak, and then renames the .ndt files to .txt. So .ndt files are only your partially written .txt datafiles. Other than that, if theres nothing in your logs and no crash dumps being generated, I don't really know what to say. The core devs would have to give you an answer if they are able to on that.

Posted: Wed Feb 20, 2008 8:13 am
by thorin
Ahhh I see now, so data should have like wirte access...but why it's not starting when .ndt files are there, as long as I delete them pol starts straight away...

i tried to run ut with "2>" to give me some errors if so, but gave me two warnings about item names, I change it and warnings are not there anymore, but this didn't fix the problem.

Thing is same files working fine on my home system (fedora).

Is there any other software or libs that pol needs? I know that runuo needs MONO, how about POL?

In my case we have a scripted who do all things in POL, he know escript and I am just an admin on the server and I am soooo nice to run it for them :) but I am trying to understand how it works :)

same files are running just fine on my linux at home and windows of the guy there, so it's not a problem with scripts - i mean i don't think it is...

Posted: Wed Feb 20, 2008 12:27 pm
by CWO
I don't know Linux really at all but I would say definitely give POL all access to /data because POL creates, reads, writes, and deletes files in there.

POL doesn't start with .ndt files in the path because thats an incomplete worldsave which is exactly your problem. I guess its to alert you of that problem and possibly prevent old files from interfering with new worldsaves.

Posted: Thu Feb 21, 2008 5:09 am
by thorin
Thanks man :) I got this on a first time. :)

I gave permissions to data, and it creating files for sure, however i am not sure what can be wrong...

For config there is pol.cfg right? or any other important one where I can see world saves settings?

Posted: Thu Feb 21, 2008 5:20 pm
by OldnGrey
Worldsave has no options apart from when you save and that's controlled by the script that calls it.

It's obviously saved an ndt file so it has write permissions to the directory already.

What interests me is what else has happened? Studying the data directory may give an insight.

How many ndt files are there?
Are there any .txt or .bak files? Are they all there and all bak and txt files have the same timestamp? Does anything else look right or wrong? File sizes, permissions, timestamps?

At what point did the exception occur - saving 1 .ndt file or after saving them all? Are any .ndt files the wrong SIZE compared to the .txt files? That might give a clue. At this stage I'd be trying to figure out at what point in the save it crashed and look around there.

Is an .ndt file is the wrong size - the open it. What's the last entry look like? Did it crash on a particular item, if so, can you find that item in the .txt files and see if it's valid or the next entry looks valid?

What happens if you delete all the .bak files first - perhaps the core didn't have permission to delete them?