Dungeon Crawl Stone Soup Tracker - DCSS
Viewing Issue Advanced Details
2536 Bug Report major N/A 2010-09-10 22:33 2015-02-14 22:36
hayenne Remote  
KiloByte CDO  
normal Console  
closed 0.8 ancient branch  
0.8.0-96b6ae9 done  
none    
none 0.13 ancient branch  
0002536: Saved game locked - unable to continue playing using the locked save
The issue happened 10.09.10 around 14:00 UTC+2

1. The game response suddenly drastically slowed so I had to reconnect a couple of times.
2. When I reconnected, I succeeded to intercept game session several times; but performance did not improve.
3. After two or three reconnects game stated it's unable to end game gracefully and asked whether I want to force reconnect (sorry, can't recall exact message). I forced reconnect which let me in the game. I also did it couple of times since performance still was sloppy.
=> Now when I try to play my trunk game I get message:
> Starting Dungeon Crawl Stone Soup 96b6ae9...
> Another game is already in progress using this save!
> Hit any key to exit...

I started this game on older build (transferred save today). See backup dump below.

Char "hayenne" in 96b6ae9. Backing up: successful.
- http://crawl.develz.org/saves/dumps/hayenne-96b6ae9-100910-2017.tar.bz2 [^]
Issue History
2010-09-10 22:33 hayenne New Issue
2010-09-10 23:01 KiloByte Note Added: 0008392
2010-09-11 20:58 rob Note Added: 0008425
2010-09-12 00:29 hayenne Note Added: 0008437
2010-09-12 16:11 KiloByte Note Added: 0008482
2011-09-06 15:59 gimbal Note Added: 0014543
2012-09-07 12:12 hayenne Status new => acknowledged
2013-06-16 01:04 KiloByte Note Added: 0023206
2013-06-16 01:04 KiloByte Status acknowledged => resolved
2013-06-16 01:04 KiloByte Fixed in Branch => 0.13 development branch
2013-06-16 01:04 KiloByte Resolution open => done
2013-06-16 01:04 KiloByte Assigned To => KiloByte
2015-02-14 22:36 hayenne Status resolved => closed

Notes
(0008392)
KiloByte   
2010-09-10 23:01   
This is an issue with CDO -- or perhaps Crawl's reaction to the way CDO tries to kill it.

Save file locking uses the operating system's locking (flock() on Unix), and if anything happens to the process, its locks all instantly go away. If your save remains locked, this means your old Crawl process is still alive.

By the way, if this can happen, it would explain some weird save corruptions we have seen.
(0008425)
rob   
2010-09-11 20:58   
A bug involved with this was fixed (an infinite loop by the mutation code trying to give robust when you had frail and triple mutation resistance). Also I believe the process was killed, so you should be able to continue playing, assuming the save is ok.
(0008437)
hayenne   
2010-09-12 00:29   
That's right, everything is okay now. Thanks!
(0008482)
KiloByte   
2010-09-12 16:11   
The remaining question is why Crawl wasn't killed after SIGHUP.

I've checked the core, it did receive SIGHUP (twice, even). The only code path that changes crawl_state.seen_hups does call alarm(10) immediately after, and we never catch SIGALRM so it should have killed Crawl.
(0014543)
gimbal   
2011-09-06 15:59   
I experienced something very similar to this yesterday on WebTiles. Deteriorating performance, I disconnected, then when i came back it was rejecting my game saying 'already in progress', the game is still active on https://tiles.crawl.develz.org/#lobby [^] under my name 'gimbal'.
(0023206)
KiloByte   
2013-06-16 01:04   
Not sure why SIGALRM would be non-fatal, but years later, it doesn't seem to happen anymore; closing.