mogilefsd cannot see mogstored's running

Brad Fitzpatrick brad at danga.com
Fri Jul 15 18:08:48 PDT 2005


I've done a lot of work on Danga::Socket and Perlbal in the past few days
to address:

   -- use IO::AIO (which is portable, unlike Linux::AIO).

   -- unit test for Perlbal's webserver mode (used by MogileFS)

   -- work correctly on 64-bit Linux

So I suggest everybody having problems go use the latest versions in cvs.

- Brad



On Fri, 15 Jul 2005, Jason Camp wrote:

> Not to further confuse the issue here, let me know if this info is
> totally incorrect.  Under Fedora Core 4 I had to make a change to one of
> the libs in the perlbal module because it wasnt creating files under the
> data directory. I found this in an earlier posting on the list:
>
> in ClientHTTP.pm around line 253, it says:
>
>     Linux::AIO::aio_open("$path/$file", O_CREAT | O_TRUNC | O_WRONLY,
> 0644, sub {
>         # get the fd
>         my $fd = shift;
>
>         # verify file was opened
>         $self->{put_in_progress} = 0;
>         if ($! == ENOENT) {
>
> I modified it to this:
>
>     Linux::AIO::aio_open("$path/$file", O_CREAT | O_TRUNC | O_WRONLY,
> 0644, sub {
>         # get the fd
>         my $fd = shift;
>         $! = ENOENT if $fd == -1;
>
>         # verify file was opened
>         $self->{put_in_progress} = 0;
>         if ($! == ENOENT) {
>
> I'm not sure if this would be the issue, this was needed for Fedora core
> 3 and 4, and since CentOS is a redhat clone like Fedora, it might be a
> similar thing. Again, sorry if this is totally not the case and I
> confused you even further :)
>
> Jason
>
>
>
> Mark Smith wrote:
>
> >Actually, just thought of something else... try this:
> >
> >Edit lib/Perlbal.pm and change this section:
> >
> >$Perlbal::AIO_MODE = "none";
> >$Perlbal::AIO_MODE = "ioaio" if $Perlbal::OPTMOD_IO_AIO;
> >$Perlbal::AIO_MODE = "linux"  if $Perlbal::OPTMOD_LINUX_AIO;
> >
> >And comment out the second two lines:
> >
> >$Perlbal::AIO_MODE = "none";
> >#$Perlbal::AIO_MODE = "ioaio" if $Perlbal::OPTMOD_IO_AIO;
> >#$Perlbal::AIO_MODE = "linux"  if $Perlbal::OPTMOD_LINUX_AIO;
> >
> >(ed note: should really be a way to force the AIO mode you want...)
> >
> >Anyway, that will force it to use 'none' mode.  Then try running mogstored
> >again and using the curl test.
> >
> >
> >--
> >Junior (aka Mark Smith)
> >junior at danga.com
> >
> >Software Engineer
> >Six Apart / Danga Interactive
> >
> >
>
>


More information about the mogilefs mailing list