File size checks fails and I haven't figured out why, but next I'd look into how `posix_fallocate` works on alpine linux.

Log:

```
$ cat /etc/alpine-release 
3.9.2

$ git log --oneline -1
e45b7f20e Merge #15618: refactor: Remove unused function

$ ./src/test/test_bitcoin -t flatfile_tests
Running 4 test cases...
Version using posix_fallocate
test/flatfile_tests.cpp(94): error: in "flatfile_tests/flatfile_allocate": check fs::file_size(seq.FileName(FlatFilePos(0, 0))) == 100 has failed [0 != 100]
test/flatfile_tests.cpp(98): error: in "flatfile_tests/flatfile_allocate": check fs::file_size(seq.FileName(FlatFilePos(0, 99))) == 100 has failed [0 != 100]
Version using posix_fallocate
test/flatfile_tests.cpp(102): error: in "flatfile_tests/flatfile_allocate": check fs::file_size(seq.FileName(FlatFilePos(0, 99))) == 200 has failed [0 != 200]
Version using posix_fallocate
test/flatfile_tests.cpp(116): error: in "flatfile_tests/flatfile_flush": check fs::file_size(seq.FileName(FlatFilePos(0, 1))) == 100 has failed [0 != 100]

*** 4 failures are detected in the test module "Bitcoin Core Test Suite"
```
{
    
    
    
    
#ifdef WIN32
    
    return GetSpecialFolderPath(CSIDL_APPDATA) / "Bitcoin";
#else
    fs::path pathRet;
    char* pszHome = getenv("HOME");
    if (pszHome == nullptr || strlen(pszHome) == 0)
        pathRet = fs::path("/");
    else
        pathRet = fs::path(pszHome);
#ifdef MAC_OSX
    
    return pathRet / "Library/Application Support/Bitcoin";
#else
    
    return pathRet / ".bitcoin";
#endif
#endif
}
static fs::path g_blocks_path_cache_net_specific;
static fs::path pathCached;
static fs::path pathCachedNetSpecific;
static CCriticalSection csPathCached;
const fs::path &GetBlocksDir()