Bug #41309 Maria: can't build if sizeof(off_t)==4 (rare build failure)
Submitted: 8 Dec 2008 21:12 Modified: 26 May 2010 17:50
Reporter: Guilhem Bichot Email Updates:
Status: Unsupported Impact on me:
Category:MySQL Server: Maria storage engine Severity:S3 (Non-critical)
Version:5.1-maria OS:Linux
Assigned to: CPU Architecture:Any
Triage: Triaged: D3 (Medium)

[8 Dec 2008 21:12] Guilhem Bichot
Normally './configure' enables 8-byte-off_t, as can be seen in config.h on my 32-bit OpenSuse 10.2 from 2006:
/* Number of bits in a file offset, on hosts where this is settable. */
#define _FILE_OFFSET_BITS 64

But sometimes it fails to (Davi has one such system, he'll file a bug report) and then we have a 4-byte off_t. It's also possible to force that by using  --disable-largefile in "./configure". Then we get build failures in storage/maria.
One of them is related to conversion from my_off_t* to MARIA_RECORD_POS*.

Note for the bugfixer: as Monty confirmed, MARIA_RECORD_POS has to stay ulonglong, which can also be seen in code of ma_recordpos() (which relies on ulonglong).

This is not urgent, this has been reported today for the first time, and only because of a "configure" bug.

How to repeat:
build with --disable-largefile

Suggested fix:
just fix them one by one