Pwrite() failed with errno 22 when loading data


#1

Hello everyone!
During my loading progress in SciDB12.03, when the sum of “size” and “offset” arguments of “pwrite( fd, src, size, offset )” was larger than 2^31 = 2147483648,
an I/O error happened:

SystemException in file: src/util/FileIO.cpp function: writeAll line: 76
Error id: scidb::SCIDB_SE_IO::SCIDB_LE_PWRITE_ERROR
Error description: I/O error. pwrite failed to write 12355196 byte(s) to the position 2156012364 with error 22.

I wonder if this problem is because the size of storage.data1 is too large ? Does anyone know about this problem?
And I remember that in SciDB11.06, when the size of storage.data1 is large enough, a storage.data2 will be created.
Is this function supported in SciDB12.03 and how to activate it ?

I hope someone could help me, Thanks!


#2

I think I see the problem …

SciDB is built with the assumption (in more than a few places) that we’re working with a 64 bit architecture. I suspect you might be building / working on a 32-bit system.

We’ve got no plans to support 32-bit, and for a number of reasons (not just data sizes, but also things like size bounds on very large arrays) it would be very hard to do.

Sorry. Not the answer you wanted to get …