maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #05751
Re: Build and/or support of MariaDB on AIX
> -----Original Message-----
> From: Maria-developers [mailto:maria-developers-
> bounces+wlad=montyprogram.com@xxxxxxxxxxxxxxxxxxx] On Behalf Of Frank
> Fegert
> Sent: Sonntag, 23. Juni 2013 12:13
> To: maria-developers@xxxxxxxxxxxxxxxxxxx
> Subject: [Maria-developers] Build and/or support of MariaDB on AIX
>
> Hello all,
>
> i'm currently running MySQL 5.1.62 on IBM Power LPARs with AIX 6.1. I'll
> spare you the discussion of why AIX and not Linux and will just say "it
> is what it is ATM" ;-) Anyhow, with things proceeding as they are, i guess
> chances are that Oracle and IBM are not going to get any more friendly
> with each other, so i'm looking for an alternative way to move forward.
> That being said, i'd like to get an idea of the general feeling around
> the MariaDB development team on the support of non-(Linux|*BSD|Windows)
> platforms. Are there currently any plans? Would you be willing to invest
> some time in helping to get MariaDB running on AIX?
I think that the realistic options you have are :
1. Either you have an AIX enthusiast, a knowledgeable guy who regularly
supplies team with AIX related patches (that do not break any other
platforms;)).
Or
2. You provide a machine for the Buildbot, and sponsor the project (the
popularity of AIX is IMO too low, to support it for free).
It is my personal opinion, not an official position.
> Right now, i can successfully build stock MySQL 5.1.70 with some minor
> patches and stock MySQL 5.5.32 with some minor patches and the option
> "DWITHOUT_PERFSCHEMA_STORAGE_ENGINE=ON". With performance
> schema enabled
> the build fails at linking the unittests in
"storage/perfschema/unittest/",
> see below for a full error output. The MariaDB 5.5.31 build does currently
> not even go that far, if fails earlier on the threadpool code, see below.
> Unfortunately my C/C++-fu is not strong enough to determine what might
> be considered a sound alternative to the epoll/kevent/port_event calls
> on AIX to do an alteration like the one in MDEV-4174. Can someone please
> help me out here?
To me , it looks like a sound alternative for AIX environment would be
using IO completion ports, the AIX port of Windows API's.
Native_event would be OVERLAPPED *
Io_port_create, io_port_associate_fd map to CreateIoCompletionPort ()
io_poll_start_read is ReadFile(), with OVERLAPPED*, 0 bytes length read
io_poll_wait is GetQueuedCompletionStatus()
io_port_disassociate() cannot be implemented, but it is only used in rare
case where thread_pool_size is being changed at runtime.
If you do not want to mess with it (you said your C-fu is weak), I attached
a patch with dummy implementation of threadpool required methods, it should
just make this thing compile, threadpool won't be usable. I did not test it.
Wlad
PS. Performance schema unit tests should either be disabled or link with sql
library (TARGET_LINK_LIBRARIES sql), I gather this from the error output you
sent.
Attachment:
aix.diff
Description: Binary data
Follow ups
References