As segwit is active on testnet, blocks will only be downloaded from NODE_WITNESS peers. Though, exactly those peers are disconnected after `BLOCK_STALLING_TIMEOUT = 2` seconds. I am running master (6e6ab2c)

This behavior is consistent across restarts. Sample [debug.log](http://pastebin.ubuntu.com/23058327/) and [getchaintips](http://pastebin.ubuntu.com/23058325/).

It is possible that I shot my own foot at some point, but it seemed smelly enough to create an issue.

{
    LOCK(cs_LastBlockFile);
    unsigned int nFile = fKnown ? pos.nFile : nLastBlockFile;
    if (vinfoBlockFile.size() <= nFile) {
        vinfoBlockFile.resize(nFile + 1);
    }
    if (!fKnown) {
        while (vinfoBlockFile[nFile].nSize + nAddSize >= MAX_BLOCKFILE_SIZE) {
            nFile++;
            if (vinfoBlockFile.size() <= nFile) {
                vinfoBlockFile.resize(nFile + 1);
            }
        }
        pos.nFile = nFile;
        pos.nPos = vinfoBlockFile[nFile].nSize;
    }
    if ((int)nFile != nLastBlockFile) {
        if (!fKnown) {
            LogPrintf("Leaving block file %i: %s\n", nLastBlockFile, vinfoBlockFile[nLastBlockFile].ToString());
        }