Accounts e-mail HP

GT01 failure inspection

Can you help improve your favourite game? Hardcore C mages, talented artists, and players with any level of experience are welcome!

GT01 failure inspection

Postby Davide » Wed Feb 20, 2013 2:59 am

GT01 had failed for an unknown reason. While Greatturn can be made more robust by intensifying the backup management of the game savefiles, the fatal bug can still occur and ruin the game by requiring frequent fallbacks over old savefile backups.

GT01 is currently still affected by one major problem: in some circumstances it becomes unable to save the game to file.
I ran some hundreds of automatic tests of GT01 under different game configurations, and I measured the failure rates.

Analysis:
Each line of Table 1 is a set of 50 tests under the same game configurations. A test consists exclusively in generating a new game and /save it to file.
The two leftmost columns are the test conditions, the right columns are the related results.
For tests 6th and 7th the map size parameter is directly specified and mapsize is set to fullsize.
Table 2 lists only the settings which differ between GT00 and GT01. The complete sets of settings are on greatturn.org.
All tests are conducted with 11 AI players.

    Table 1 legend:
    Ruleset:full ruleset used
    Settings: full set of settings used
    /save failures: number of tests in the series which presented at least one /save failure
    segfaults: amount of tests in the series which presented at least one segmentation fault of freeciv-server
    def: vanilla Freeciv's default configuration, not related with Greatturn
    GT01: fully respecting GT01 customs
    [numbers in settings column]: setting numbers from Table 2 which are toggled to the value used by GT00.
    In this case all other settings reflect GT01.

Tests [table 1]
ruleset
settings
--> /save failures
segfaults
def
def
0
2
gt01
def

0
0
def
gt01
5
6
def
4679
0
0
def
6
0
1
def
gt01 size=50
0
6
def
gt01 size=14
1
0


Per-match settings [table 2]
gt00
gt01
specials
1 900 400
startunits 2
cccwwxx
cccwwxxx
dispersion 3 2
3
generator 4 island
fractal
landmass 5
35
29
tilesperplayer 6 100
400
alltemperate
7 enabled
disabled
startpos 8
all
separatepoles 9
disabled


Data interpretation:
The ruleset used has no effect on the stability of the server. The settings group GT01 crashes the server.
Toggling tilesperplayer from 400 to 100 (5th test of Table 1) sensibly improves stability; in particular, the 5th test generates maps of the same size of the one used by GT00.
The 6th test uses a map size of 50k tiles: it generates some apparently non-harmful segfaults and all the savefiles are correctly generated.
The 7th test reduces the map size from the previous test, generating no segfaults but 1 harmful failure to save.

The amount of segfaults produced for each series of tests seems to be proportional to the map size, and seems to be non-harmful to the consistency of the game and the savefiles.
The /save failures are observed with map sizes of about 400 tiles per player.

Conclusion:
It seems that to gain server stability the map size needs either to be increased or reduced around the value of 400 tiles per player.
I have no other clues.
User avatar
Davide
 
Posts: 864
Joined: Sat Mar 24, 2012 12:34 am

Re: GT01 failure inspection

Postby O01eg » Wed Feb 20, 2013 6:00 pm

May be freeciv killed by OOM killer? Did you analize dumps?
O01eg
 
Posts: 17
Joined: Mon Oct 15, 2012 7:24 pm

Re: GT01 failure inspection

Postby Davide » Wed Feb 20, 2013 7:11 pm

I haven't done GDB debugging, but freeciv-server was never killed: either it reported a segfault, or an error entry in logs when failed to save the game.
On server there were 3 GB of free spare paging file.
User avatar
Davide
 
Posts: 864
Joined: Sat Mar 24, 2012 12:34 am

Re: GT01 failure inspection

Postby monamipierrot » Thu Feb 21, 2013 3:42 pm

I would not mind to wait some more days for the start in order to have improved stability in GT01. On the other hand, I will not be online next weekend :P
monamipierrot
Co-Admin of GT01, GT10-Hex.
 
Posts: 444
Joined: Sat Nov 03, 2012 8:43 pm
Location: Barcelona, Spain


Return to Contribution

Who is online

Users browsing this forum: No registered users and 1 guest

cron