[OPEN-ILS-DEV] problem logging in as admin

Dan Scott denials at gmail.com
Thu Oct 4 14:47:44 EDT 2007


On 04/10/2007, John Fink <john.fink at gmail.com> wrote:
> I did what is probably a Very Dumb Thing and just wholesale changed every
> instance of <language>perl</language> to Pg without checking the context in
> which those <language> tags were nested.  Worse yet, I did so brazenly and
> without regard to keeping a backup file.  So I'll go in and undo tomorrow
> morning, and I'm sure it will work swimmingly.
>
>
> jf
>
> On 10/4/07, Dan Scott <denials at gmail.com> wrote:
> > On 04/10/2007, John Fink <john.fink at gmail.com> wrote:
> > > Heh.  Okay, I did this (changing every instance of
> > > <language>perl</language>, and now really *nothing* works.  No cstore or
> > > storage in ps wax.  Starting Evergreen takes a lot longer, and on
> shutdown
> > > we get the following:
> > >
> > > Stopping OpenSRF C :
> > > opensrf-c: no process killed
> > >
> > > ugh.  Dan, are you super extra sure that every perl needs to be Pg? :)
> > >
> > > jf
> > >
> > >
> > > On 10/4/07, Dan Scott <denials at gmail.com> wrote:
> > > > On 04/10/2007, Dan Scott <denials at gmail.com > wrote:
> > > > > On 04/10/2007, John Fink <john.fink at gmail.com> wrote:
> > > > > > Okay, stopped, cleared logs, restarted with loglevel 5 in
> > > opensrf_core.xml.
> > > > > > This is *probably* the problem; if it isn't, let me know and I'll
> send
> > > on
> > > > > > the full logs.
> > > > > >
> > > > > > Probably something I messed up in the install...
> > > > > >
> > > > > >
> > > > > > from osrfsys.log:
> > > > > > [2007-10-4 6:41:22] open-ils.storage [DEBG:12469:Storage.pm:31:]
> > > Attempting
> > > > > > to load OpenILS::Appli
> > > > > > cation::Storage::Driver::pgsql ...[2007-10-4 6:41:22]
> open-ils.storage
> > > [ERR
> > > > > > :12469:Storage.pm:35 :] Can't load
> > > > > > OpenILS::Application::Storage::Driver::pgsql!  :
> > > Can't
> > > > > > locate
> OpenILS/Application/Storage/Driver/pgsql.pm in
> > > @INC
> > > > > > (@INC contains: /openils/lib/perl5 /etc/perl
> /usr/local/lib/perl/5.8.8
> > > > > > /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5
> > > > > > /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .)
> at
> > > > > > /openils/lib/perl5/OpenILS/Application/Storage.pm
> > > line
> > > > > > 33.[2007-10-4 6:41:22] open-ils.storage [ERR
> :12469:Storage.pm:36:]
> > > Can't
> > > > > > load OpenILS::Application::
> > > > > > Storage::Driver::pgsql!  :  Can't locate
> > > > > > OpenILS/Application/Storage/Driver/pgsql.pm in
> @INC
> > > (@INC
> > > > > > contains: /openils/lib/perl5 /etc/perl /usr/local/lib/perl/5.8.8
> > > > > > /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5
> > > > > > /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .)
> at
> > > > > > /openils/lib/perl5/OpenILS/Application/Storage.pm
> > > line 33.
> > > > > > [2007-10-4 6:41:22] open-ils.storage [ERR :12469:EX.pm :66:]   * !
> > > EXCEPTION
> > > > > > ! * TYPE: OpenSRF::EX::PANICMess: System PANIC Mess: Can't load
> > > > > > OpenILS::Application::Storage::Driver::pgsql!  :
> > > Can't
> > > > > > locate
> OpenILS/Application/Storage/Driver/pgsql.pm in
> > > @INC
> > > > > > (@INC contains: /openils/lib/perl5 /etc/perl
> /usr/local/lib/perl/5.8.8
> > > > > > /usr/local/share/perl/5.8.8 /usr/lib/perl5 /usr/share/perl5
> > > > > > /usr/lib/perl/5.8 /usr/share/perl/5.8 /usr/local/lib/site_perl .)
> at
> > > > > > /openils/lib/perl5/OpenILS/Application/Storage.pm
> > > line 33.
> > > > > >
> > > > > >
> > > > > > jf
> > > > > >
> > > > > >
> > > > > > On 10/3/07, Bill Erickson < erickson at esilibrary.com> wrote:
> > > > > > >
> > > > > > >
> > > > > > >
> > > > > > > On 10/2/07, Mike Rylander < mrylander at gmail.com> wrote:
> > > > > > > > On 10/2/07, John Fink < john.fink at gmail.com> wrote:
> > > > > > > > > Here's something tasty from gateway.log .  Let me know if
> you
> > > want a
> > > > > > look at
> > > > > > > > > any of the others.
> > > > > > > >
> > > > > > > > <snip the exception>
> > > > > > > >
> > > > > > > > That just means that storage is not starting properly.  The
> most
> > > > > > > > likely reason is mis-configured database settings for the
> storage
> > > app.
> > > > > > > > One thing to check is that for c-store the driver is called
> pgsql,
> > > > > > > > but for storage it's called Pg.
> > > > > > > >
> > > > > > > > UPDATE: as Dan suggests, sending the entire log will help
> diagnose
> > > the
> > > > > > > > exact reason for this.  /me steps outta Dan's way.
> > > > > > >
> > > > > > >
> > > > > > > For Perl processes, you'll sometimes get good information out of
> the
> > > > > > Net::Server logs as well.  The default location for the storage
> log is
> > > > > > >
> > > > > > > /openils/var/log/openils.storage_unix.log
> > > > > > >
> > > > > > > -bill
> > > > > > >
> > > > > > >
> > > > >
> > > > > Yeah! I think you've got it.
> > > > >
> > > > > Two possibilities come to mind:
> > > > >
> > > > > 1) You ran "make install" as root and forgot to "chown -R
> > > > > opensrf:opensrf /openils" after running the install. In this
> scenario,
> > > > >
> > >
> /openils/lib/perl5/OpenILS/Application/Storage/Driver/pgsql.pm
> > > exists,
> > > > > but does not have the permissions or ownership that allow the
> opensrf
> > > > > user to actually see the file.
> > > > >
> > > > > 2)
> > >
> /openils/lib/perl5/OpenILS/Application/Storage/Driver/pgsql.pm
> > > > > doesn't exist at all, which would be a more puzzling problem.
> > > > > Repeating the make install & chown steps for Evergreen would be my
> > > > > first stab at resolving the problem.
> > > > >
> > > > > Let's see / hope it's simply problem #1 instead.
> > > >
> > > > Oh, actually it's problem #3!
> > > >
> > > > opensrf.xml has an entry for <open-ils.storage>, with a databases
> > > > section. The driver for any application that has
> > > > <language>perl</language> should be <driver>Pg</driver>. You probably
> > > > have <driver>pgsql</driver>, which would cause Evergreen to try and
> > > > load pgsql.pm rather than Pg.pm.
> > > >
> > > > If you look in
> > > /openils/lib/perl5/OpenILS/Application/Storage/Driver/
> > > > you'll see it contains " Pg.pm".
> > > >
> > > > This should get you rolling!
> > > >
> > > > --
> > > > Dan Scott
> > > > Laurentian University
> >
> > Oh, John. Yes, I'm sure that every app with language "perl" that has a
> > <databases> section needs to use the <driver>Pg - that being said,
> > there is only one perl application in my opensrf.xml that contains a
> > databases section, that one app being <open-ils.storage> - so I'm not
> > sure how you could have changed any others. Doesn't sound too good,
> > though :)
> >
> > I'm going to throw this one out to a lifeline - am I crazy, and just
> > completely misleading John?
> >
> > --
> > Dan Scott
> > Laurentian University

Ah. I think I see the problem. I did a poor job of communicating the
problem and the solution.

Explaining it in pseudo-XPath, if that helps - in opensrf.xml:

The text node for
/opensrf/default/apps/open-ils.storage/app_settings/databases/driver
needs to be "Pg", not "pgsql".

A different way:

If an application defined in the <apps> element has a <language>
element with the value "perl" and a ./app_settings/databases/driver
element, the ./app_settings/databases/driver element value needs to be
"pgsql".

So -- change all of your <language>pgsql</language> elements back to
<language>perl</language>, then change that one instance of
<driver>pgsql</driver> to <driver>Pg</driver> inside the
<open-ils.storage> application element.

I hope that helps!

-- 
Dan Scott
Laurentian University


More information about the Open-ils-dev mailing list