Improve ioblock1 testcase
We were (unintentionally) trying to test with a 4TB sparse file, but
not all platforms support that. A file just over 4GB is enough to
test what we want, and if we trying to create one fails indicating
the file size is too large (with errno EFBIG) then we skip the rest of
the testcase.
Also catch Xapian::Error exceptions and rethrow a std::string from
get_description() as the utestsuite harness doesn't know about
Xapian::Error so confusingly reports it as "UNKNOWN EXCEPTION".