Boost logo

Boost Users :

Subject: [Boost-users] [iostream] Problems opening large mapped_file
From: Heiko Klein (Heiko.Klein_at_[hidden])
Date: 2012-08-06 12:43:08


Hi,

I wanted to test the mapped_file_source iostream device. My code is
working well with a normal file_source device and files >= 6GB. When I
change the constructor to a mapped_file_source, it works still well for
smaller files (e.g. 150MB), but for files > 2GB I get (tested with 2.5GB):

exception occured: failed getting file size: Value too large for defined
data type

And for files > 4GB (tested with 6GB) I get:

exception occured: failed opening file: Bad file descriptor

My constructor is as follows:

         using namespace boost::iostreams;
         typedef stream<mapped_file_source> mmStream;
         mmStream* mmistream = new mmStream();
         mmistream->open(mapped_file_source(fileName));

I've tested against boost 1.44 and a 32bit linux (Ubuntu 10.04).

Are these general mmap problems, or am I missing some flags for
mapped_file_source?

Best regards,

Heiko


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net