[Catalyst] Error while going through tutorial using Oracle

Hartmaier Alexander Alexander.Hartmaier at t-systems.at
Fri Aug 18 13:09:10 CEST 2006


Hi Jason!

Thanks for the explanation!

So what do we need to do to make dbic support Oracle's quoted, case-sensitive tablenames?
Is it possible for you to join us at #dbix-class on irc.perl.org?

-Alex


> -----Original Message-----
> From: catalyst-bounces at lists.rawmode.org [mailto:catalyst-
> bounces at lists.rawmode.org] On Behalf Of Jason Crummack
> Sent: Friday, August 18, 2006 12:05 PM
> To: The elegant MVC web framework
> Subject: [***SPAM*** Score/Req: 11.00/6.0] Re: [Catalyst] [***SPAM***
> Score/Req: 11.00/6.0] Re: [***SPAM*** Score/Req: 11.00/6.0] Re: Error
> while going through tutorial using Oracle
> 
> Alex,
> 
> If I could predict what new reserved words may appear in future Oracle /
> SQL versions I would, that's the reason they give you a quote character
> to allow future changes to reserved words.
> 
> I agree that if I was creating new tables, I wouldn't at this point in
> time use a currently known reserved word but when accessing existing
> tables I have no choice.
> 
> I've been involved writing ODBC/JDBC drivers (and the unixODBC project)
> for the last 10 years +, trust me new reserved words happen every few
> years, and different database backends have different reserved word
> lists. Some of the legacy systems i have to attach to can't have the
> table names changed.
> 
> When approaching database related issues I afraid I can't take the
> approach of it works alright for me, the specifications are there for
> good reason, many knowledgeable people have initially contributed to
> produce such specifications, I think it's important for
> Storage::DBI::Oracle module to follow that specification.
> 
> I don't necessarily agree with reversing out your patch, I'd like to
> discuss it with one of my colleagues who's a DBD::Oracle maintainer as
> to the best approach.
> 
> Jason
> 
> P.S. Sorry I hit send plain text by mistake (matter of habit) I was
> trying to draw you're attentions to the following paragraph
> 
> An identifier is passed /as is/, i.e. as the user provides or Oracle
> returns it. |table_info()| performs a case-sensitive search. So, a
> selection criterion should respect upper and lower case. Normally, an
> identifier is case-insensitive. Oracle stores and returns it in upper
> case. *Sometimes, database objects are created with quoted identifiers
> (for reserved words, mixed case, special characters, ...). Such an
> identifier is case-sensitive (if not all upper case). Oracle stores and
> returns it as given. |table_info()| has no special quote handling,
> neither adds nor removes quotes.*
> 
> 
> 
> 
> Hartmaier Alexander wrote:
> > Hi Jason!
> >
> > I haven't quoted my tablenames on creation (whatfor?) so all my tables
> are case insensitive and I didn't bother with quotes.
> > Reserved words are reserved for a good reason, I don't see the point
> of using a reserved word as table name.
> >
> > Fell free to send a patch for Storage::DBI::Oracle to the list which
> fixes those cases.
> >
> > Bold in a plaintext mail is a good joke, which one do you mean?
> >
> > -Alex
> >
> >
> >
> >> -----Original Message-----
> >> From: catalyst-bounces at lists.rawmode.org [mailto:catalyst-
> >> bounces at lists.rawmode.org] On Behalf Of Jason Crummack
> >> Sent: Friday, August 18, 2006 11:16 AM
> >> To: The elegant MVC web framework
> >> Subject: [***SPAM*** Score/Req: 11.00/6.0] Re: [Catalyst] [***SPAM***
> >> Score/Req: 11.00/6.0] Re: Error while going through tutorial using
> >> Oracle
> >>
> >>
> >> I beg to differ, have you actually read the DBD::Oracle page link I
> sent
> >> you?
> >>
> >> try the following
> >>
> >> create table fred (p1 integer primary key);
> >> insert into fred values (1);
> >> select p1 from fred;
> >>
> >> returns 1
> >>
> >> create table "fred" (p1 integer primary key);
> >> insert into "fred" values (2);
> >> select * from "fred";
> >> returns 2
> >>
> >> Two tables exist one case-insensitive the other case-sensitive, I can
> >> also create table "Fred" etc.... Based on uppercasing the table name
> in
> >> the column_info call I would never be able to access table "fred".
> >>
> >> It's all down to how the table is initially created, if the table was
> >> created quoted and the table name is not all uppercase then the table
> >> name is case sensitive.
> >>
> >> Please see the bold section below.
> >>
> >>
> >> Jason Crummack
> >> Easysoft Limited
> >>
> >>
> >>
> >>     |table_info()|
> >>     <http://search.cpan.org/%7Epythian/DBD-Oracle-
> >> 1.18a/Oracle.pm#___top>
> >>
> >> DBD::Oracle supports attributes for |table_info()|.
> >>
> >> In Oracle, the concept of /user/ and /schema/ is (currently) the
> same.
> >> Because database objects are owned by an user, the owner names in the
> >> data dictionary views correspond to schema names. Oracle does not
> >> support catalogs so TABLE_CAT is ignored as selection criterion.
> >>
> >> Search patterns are supported for TABLE_SCHEM and TABLE_NAME.
> >>
> >> TABLE_TYPE may contain a comma-separated list of table types. The
> >> following table types are supported:
> >>
> >>   TABLE
> >>   VIEW
> >>   SYNONYM
> >>   SEQUENCE
> >>
> >> The result set is ordered by TABLE_TYPE, TABLE_SCHEM, TABLE_NAME.
> >>
> >> The special enumerations of catalogs, schemas and table types are
> >> supported. However, TABLE_CAT is always NULL.
> >>
> >> An identifier is passed /as is/, i.e. as the user provides or Oracle
> >> returns it. |table_info()| performs a case-sensitive search. So, a
> >> selection criterion should respect upper and lower case. Normally, an
> >> identifier is case-insensitive. Oracle stores and returns it in upper
> >> case. *Sometimes, database objects are created with quoted
> identifiers
> >> (for reserved words, mixed case, special characters, ...). Such an
> >> identifier is case-sensitive (if not all upper case). Oracle stores
> and
> >> returns it as given. |table_info()| has no special quote handling,
> >> neither adds nor removes quotes.*
> >>
> >>
> >>
> >>
> >>
> >> Hartmaier Alexander wrote:
> >>
> >>> 1. Oracle isn't case sensitive for table names
> >>> 2. column_info on Oracle only works if the table name passed is
> >>>
> >> uppercase.
> >>
> >>> -Alex
> >>>
> >>>
> >>>
> >>>
> >>>> -----Original Message-----
> >>>> From: catalyst-bounces at lists.rawmode.org [mailto:catalyst-
> >>>> bounces at lists.rawmode.org] On Behalf Of Jason Crummack
> >>>> Sent: Friday, August 18, 2006 10:52 AM
> >>>> To: The elegant MVC web framework
> >>>> Subject: [***SPAM*** Score/Req: 11.00/6.0] Re: [Catalyst] Error
> while
> >>>> going through tutorial using Oracle
> >>>>
> >>>> That's my point for the column_info call in DBD::Oracle to work the
> >>>>
> >> case
> >>
> >>>> has to matched the stored case
> >>>>
> >>>> http://search.cpan.org/~pythian/DBD-Oracle-
> >>>>
> >> 1.18a/Oracle.pm#column_info()
> >>
> >>>> i.e.
> >>>>
> >>>> create table "user" (p1 integer ....)
> >>>>
> >>>> To retrieve column_info for that table the table name must be
> >>>>
> >> lowercase
> >>
> >>>> in the column_info call.
> >>>>
> >>>> Jason
> >>>>
> >>>>
> >>>>
> >>>> Hartmaier Alexander wrote:
> >>>>
> >>>>
> >>>>> The table names aren't uppercased when defining the table class
> but
> >>>>>
> >>>>>
> >>>> just for the column_info DBI call.
> >>>>
> >>>>
> >>>>> -Alex
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>> -----Original Message-----
> >>>>>> From: catalyst-bounces at lists.rawmode.org [mailto:catalyst-
> >>>>>> bounces at lists.rawmode.org] On Behalf Of Jason Crummack
> >>>>>> Sent: Friday, August 18, 2006 10:15 AM
> >>>>>> To: The elegant MVC web framework
> >>>>>> Subject: [***SPAM*** Score/Req: 11.00/6.0] Re: [Catalyst] Error
> >>>>>>
> >> while
> >>
> >>>>>> going through tutorial using Oracle
> >>>>>>
> >>>>>> Hi Hartmaier
> >>>>>>
> >>>>>> Thats going to cause me problems when the next release hits the
> >>>>>>
> >>>>>>
> >>>> streets,
> >>>>
> >>>>
> >>>>>> if you're automatically uppercasing table names how will it then
> >>>>>>
> >>>>>>
> >>>> handle
> >>>>
> >>>>
> >>>>>> reserved word table names where case is important? (e.g "user").
> >>>>>>
> >>>>>> Jason
> >>>>>>
> >>>>>> Hartmaier Alexander wrote:
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> Hi!
> >>>>>>>
> >>>>>>> Use the current svn version which will become 0.07001 soon, it
> has
> >>>>>>>
> >>>>>>>
> >>>> my
> >>>>
> >>>>
> >>>>>> Storage::Oracle patch for uppercasing the table names which
> wasn't
> >>>>>> included in 0.07.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> It's best you specify the sequence names for each auto-inc pk
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>> yourself, so you avoid the magic on startup which saves you some
> >>>>>>
> >>>>>>
> >>>> time.
> >>>>
> >>>>
> >>>>>>> -Alex
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>> -----Original Message-----
> >>>>>>>> From: catalyst-bounces at lists.rawmode.org [mailto:catalyst-
> >>>>>>>> bounces at lists.rawmode.org] On Behalf Of Jason Crummack
> >>>>>>>> Sent: Friday, August 18, 2006 1:38 AM
> >>>>>>>> To: The elegant MVC web framework
> >>>>>>>> Subject: Re: [Catalyst] Error while going through tutorial
> using
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>> Oracle
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> Jason Crummack wrote:
> >>>>>>>>
> >>>>>>>> Sorry Alex I also forgot to mention that the underlying
> >>>>>>>>
> >> column_info
> >>
> >>>>>>>>
> >>>>>> call
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> that happens (assuming your using DBD::Oracle) is case
> sensitive,
> >>>>>>>>
> >>>>>>>>
> >>>> so
> >>>>
> >>>>
> >>>>>>>> you'll probably also need to upper case the table name (don't
> >>>>>>>>
> >> think
> >>
> >>>>>>>>
> >>>>>> its
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> necessary with the actual column names).
> >>>>>>>>
> >>>>>>>> e.g. __PACKAGE__->table('BOOKS');
> >>>>>>>>
> >>>>>>>> If you created the table unquoted in oracle it will have
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>> automatically
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> uppercased the table and column names, this caused me a few
> >>>>>>>>
> >>>>>>>>
> >>>> problems
> >>>>
> >>>>
> >>>>>>>> with a reserved word table name i've been dealing with where
> i've
> >>>>>>>>
> >>>>>>>>
> >>>> had
> >>>>
> >>>>
> >>>>>> to
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> define the quote and seperator characters on connect and use
> >>>>>>>>
> >> exact
> >>
> >>>>>>>>
> >>>>>> case
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> for table and column names.
> >>>>>>>>
> >>>>>>>> Jason
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>> Alex Boster wrote:
> >>>>>>>>>
> >>>>>>>>> Hi Alex,
> >>>>>>>>>
> >>>>>>>>> For oracle I think you need to set the sequence name for auto-
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>> increments
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>> e.g.
> >>>>>>>>>
> >>>>>>>>> __PACKAGE__->load_components (qw/PK::Auto Core/);
> >>>>>>>>> __PACKAGE__->sequence ('{NAME OF YOUR SEQUENCE HERE}');
> >>>>>>>>>
> >>>>>>>>> I think that's right
> >>>>>>>>>
> >>>>>>>>> Jason
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>> I am part way through the tutorial using Oracle and have
> gotten
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> stuck.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> I have create sequences and before insert triggers to replace
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> mySQL's
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>>> autoincrements.  However, I now get:
> >>>>>>>>>>
> >>>>>>>>>> |Caught exception in MyApp::Controller::Books->url_create
> >>>>>>>>>>
> >> "Can't
> >>
> >>>>>>>>>>
> >>>>>> use
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> an undefined value as a HASH reference at
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>
> /u01/glue/share/perl5/lib/site_perl/5.8.8/DBIx/Class/ResultSource.pm
> >>>>
> >>>>
> >>>>>>>> line 197."||
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> |when I try out the formless submission example.  On a
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> suggestion,
> >>>>
> >>>>
> >>>>>> I
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> removed the "PK::Auto" from the load_components bit of the
> table
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>> modules
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> (i.e., from:
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> __PACKAGE__->load_components(qw/PK::Auto Core/);
> >>>>>>>>>> ).  This had no affect.
> >>>>>>>>>>
> >>>>>>>>>> Any pointers?  Server output and error page follows.
> >>>>>>>>>>
> >>>>>>>>>> Thanks,
> >>>>>>>>>> AB
> >>>>>>>>>>
> >>>>>>>>>> Server stderr/stdout:
> >>>>>>>>>>
> >>>>>>>>>> [Template::Provider] creating cache of unlimited slots for [
> >>>>>>>>>> CODE(0x9f829a4) ]
> >>>>>>>>>> [debug] Debug messages enabled
> >>>>>>>>>> [debug] Loaded plugins:
> >>>>>>>>>> .------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | Catalyst::Plugin::ConfigLoader
> >>>>>>>>>> 0.12                                       |
> >>>>>>>>>> | Catalyst::Plugin::StackTrace
> >>>>>>>>>> 0.06                                         |
> >>>>>>>>>> | Catalyst::Plugin::Static::Simple
> >>>>>>>>>> 0.14                                     |
> >>>>>>>>>> '------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------'
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> [debug] Loaded dispatcher "Catalyst::Dispatcher"
> >>>>>>>>>> [debug] Loaded engine "Catalyst::Engine::HTTP"
> >>>>>>>>>> [debug] Found home "/home/aboster/dev/catalyst/MyApp"
> >>>>>>>>>> [debug] Loaded Config
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> "/home/aboster/dev/catalyst/MyApp/myapp.yml"
> >>>>
> >>>>
> >>>>>>>>>> [debug] Loaded components:
> >>>>>>>>>> .------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> -
> >>>>
> >>>>
> >>>>>> +--
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | Class
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> Type     |
> >>>>>>>>>> +------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> -
> >>>>
> >>>>
> >>>>>> +--
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------+
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | MyApp::Controller::Books
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> instance |
> >>>>>>>>>> | MyApp::Controller::Root
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> instance |
> >>>>>>>>>> | MyApp::Model::MyAppDB
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> instance |
> >>>>>>>>>> | MyApp::Model::MyAppDB::Author
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> class    |
> >>>>>>>>>> | MyApp::Model::MyAppDB::Book
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> class    |
> >>>>>>>>>> | MyApp::Model::MyAppDB::BookAuthor
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> class    |
> >>>>>>>>>> | MyApp::View::TT
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> instance |
> >>>>>>>>>> '------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> -
> >>>>
> >>>>
> >>>>>> +--
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------'
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> [debug] Loaded Private actions:
> >>>>>>>>>> .----------------------+-------------------------------------
> -
> >>>>>>>>>>
> >> +--
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | Private              | Class
> |
> >>>>>>>>>> Method       |
> >>>>>>>>>> +----------------------+-------------------------------------
> -
> >>>>>>>>>>
> >> +--
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------+
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | /default             | MyApp::Controller::Root
> |
> >>>>>>>>>> default      |
> >>>>>>>>>> | /end                 | MyApp::Controller::Root
> |
> >>>>>>>>>> end          |
> >>>>>>>>>> | /books/url_create    | MyApp::Controller::Books
> |
> >>>>>>>>>> url_create   |
> >>>>>>>>>> | /books/index         | MyApp::Controller::Books
> |
> >>>>>>>>>> index        |
> >>>>>>>>>> | /books/list          | MyApp::Controller::Books
> |
> >>>>>>>>>> list         |
> >>>>>>>>>> '----------------------+-------------------------------------
> -
> >>>>>>>>>>
> >> +--
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------'
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> [debug] Loaded Path actions:
> >>>>>>>>>> .-------------------------------------+----------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | Path                                |
> >>>>>>>>>> Private                              |
> >>>>>>>>>> +-------------------------------------+----------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------+
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | /books/list                         |
> >>>>>>>>>> /books/list                          |
> >>>>>>>>>> | /books/url_create                   |
> >>>>>>>>>> /books/url_create                    |
> >>>>>>>>>> '-------------------------------------+----------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> --
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------'
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> [info] MyApp powered by Catalyst 5.7001
> >>>>>>>>>> You can connect to your server at
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> http://darkwind003.989studios.com:3000
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> [info] *** Request 1 (0.200/s) [1065] [Thu Aug 17 10:32:58
> >>>>>>>>>>
> >> 2006]
> >>
> >>>>>>>>>>
> >>>>>> ***
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>>> [debug] "GET" request for
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> "books/url_create/TCPIP_Illustrated_Vol-
> >>>>
> >>>>
> >>>>>>>> 2/5/4"
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> from "172.31.30.76"
> >>>>>>>>>> [debug] Path is "books/url_create"
> >>>>>>>>>> [debug] Arguments are "TCPIP_Illustrated_Vol-2/5/4"
> >>>>>>>>>> [error] Caught exception in MyApp::Controller::Books-
> >>>>>>>>>>
> >>> url_create
> >>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> "Can't
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> use an undefined value as a HASH reference at
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >> /u01/glue/share/perl5/lib/site_perl/5.8.8/DBIx/Class/ResultSource.pm
> >>
> >>>>>>
> >>>>>>>>>> line 197."
> >>>>>>>>>> [info] Request took 1.681834s (0.595/s)
> >>>>>>>>>> .------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> +-
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------.
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | Action
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> Time      |
> >>>>>>>>>> +------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> +-
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------+
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> | /books/url_create
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> 1.656821s |
> >>>>>>>>>> | /end
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> |
> >>>>
> >>>>
> >>>>>>>>>> 0.000262s |
> >>>>>>>>>> '------------------------------------------------------------
> --
> >>>>>>>>>>
> >> --
> >>
> >>>> +-
> >>>>
> >>>>
> >>>>>> --
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> --------'
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> Error page:
> >>>>>>>>>>
> >>>>>>>>>> |Caught exception in MyApp::Controller::Books->url_create
> >>>>>>>>>>
> >> "Can't
> >>
> >>>>>>>>>>
> >>>>>> use
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> an
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> undefined value as a HASH reference at
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >> /u01/glue/share/perl5/lib/site_perl/5.8.8/DBIx/Class/ResultSource.pm
> >>
> >>>>>>
> >>>>>>>>>> line 197."|
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>     Stack Trace
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> <http://darkwind003:3000/books/url_create/TCPIP_Illustrated_Vol-
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> 2/5/4#>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> Package 	Line 	File
> >>>>>>>>>> MyApp::Controller::Books 	66
> >>>>>>>>>>
> /home/aboster/dev/catalyst/MyApp/lib/MyApp/Controller/Books.pm
> >>>>>>>>>>
> >>>>>>>>>> | 63: 64: # Call create() on the book model object. Pass the
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> table
> >>>>
> >>>>
> >>>>>>>> 65: #
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> columns/field values we want to set as hash values * 66: my
> >>>>>>>>>>
> >> $book
> >>
> >>>> =
> >>>>
> >>>>
> >>>>>>>>>> $c->model('MyAppDB::Book')->create({ * 67: title => $title,
> 68:
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> rating
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> => $rating 69: }); |
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>     Request
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> <http://darkwind003:3000/books/url_create/TCPIP_Illustrated_Vol-
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> 2/5/4#>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> bless({
> >>>>>>>>>>   action           => "books/url_create",
> >>>>>>>>>>   address          => "172.31.30.76",
> >>>>>>>>>>   arguments        => ["TCPIP_Illustrated_Vol-2", 5, 4],
> >>>>>>>>>>   base             => bless(do{\(my $o =
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> "http://darkwind003:3000/")}, "URI::http"),
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>   body_parameters  => {},
> >>>>>>>>>>   captures         => [],
> >>>>>>>>>>   cookies          => {},
> >>>>>>>>>>   headers          => bless({
> >>>>>>>>>>                         "accept" =>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>
> "text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/pla
> >>
> >>>>>>>> in;q=0.8,image/png,*/*;q=0.5",
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>                         "accept-charset" => "ISO-8859-1,utf-
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> 8;q=0.7,*;q=0.7",
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>                         "accept-encoding" => "gzip,deflate",
> >>>>>>>>>>                         "accept-language" => "en-
> us,en;q=0.5",
> >>>>>>>>>>                         connection => "keep-alive",
> >>>>>>>>>>                         host => "darkwind003:3000",
> >>>>>>>>>>                         "keep-alive" => 300,
> >>>>>>>>>>                         "user-agent" => "Mozilla/5.0 (X11; U;
> >>>>>>>>>>
> >>>>>>>>>>
> >>>> Linux
> >>>>
> >>>>
> >>>>>>>> i686; en-US; rv:1.8.0.2) Gecko/20060419 CentOS/1.5.0.2-
> >>>>>>>>
> >> 3.c4.centos
> >>
> >>>>>>>> Firefox/1.5.0.2",
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>                       }, "HTTP::Headers"),
> >>>>>>>>>>   hostname         => "sceapdsd-172-31-30-76.989studios.com",
> >>>>>>>>>>   match            => "books/url_create",
> >>>>>>>>>>   method           => "GET",
> >>>>>>>>>>   parameters       => {},
> >>>>>>>>>>   path             =>
> "books/url_create/TCPIP_Illustrated_Vol-
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> 2/5/4",
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>>>>   protocol         => "HTTP/1.0",
> >>>>>>>>>>   query_parameters => {},
> >>>>>>>>>>   secure           => 0,
> >>>>>>>>>>   uploads          => {},
> >>>>>>>>>>   uri              => bless(do{\(my $o =
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>
> "http://darkwind003:3000/books/url_create/TCPIP_Illustrated_Vol-
> >>>>>>>> 2/5/4")}, "URI::http"),
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>   user             => undef,
> >>>>>>>>>> }, "Catalyst::Request")
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>     Response
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> <http://darkwind003:3000/books/url_create/TCPIP_Illustrated_Vol-
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> 2/5/4#>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> bless({
> >>>>>>>>>>   body    => "",
> >>>>>>>>>>   cookies => {},
> >>>>>>>>>>   headers => bless({
> >>>>>>>>>>                "content-type" => "text/html; charset=utf-8",
> >>>>>>>>>>                "x-catalyst"   => "5.7001",
> >>>>>>>>>>              }, "HTTP::Headers"),
> >>>>>>>>>>   status  => 200,
> >>>>>>>>>> }, "Catalyst::Response")
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>     Stash
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> <http://darkwind003:3000/books/url_create/TCPIP_Illustrated_Vol-
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> 2/5/4#>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> {}
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>     Config
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> <http://darkwind003:3000/books/url_create/TCPIP_Illustrated_Vol-
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> 2/5/4#>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> do {
> >>>>>>>>>>   my $a = {
> >>>>>>>>>>     home => "/home/aboster/dev/catalyst/MyApp",
> >>>>>>>>>>     name => "MyApp",
> >>>>>>>>>>     root => bless({
> >>>>>>>>>>           dirs => ["", "home", "aboster", "dev", "catalyst",
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>> "MyApp",
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>>> "root"],
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>           file_spec_class => undef,
> >>>>>>>>>>           volume => "",
> >>>>>>>>>>         }, "Path::Class::Dir"),
> >>>>>>>>>>     stacktrace => { context => 3, verbose => 0 },
> >>>>>>>>>>     static => {
> >>>>>>>>>>           debug => 1,
> >>>>>>>>>>           dirs => [],
> >>>>>>>>>>           ignore_dirs => [],
> >>>>>>>>>>           ignore_extensions => ["tmpl", "tt", "tt2", "html",
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> "xhtml"],
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>>           include_path => ['fix'],
> >>>>>>>>>>           mime_types => {},
> >>>>>>>>>>           no_logs => 1,
> >>>>>>>>>>         },
> >>>>>>>>>>   };
> >>>>>>>>>>   $a->{static}{include_path}[0] = $a->{root};
> >>>>>>>>>>   $a;
> >>>>>>>>>> }
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>   MyApp on Catalyst 5.7001
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>> _______________________________________________
> >>>>>>>>>> List: Catalyst at lists.rawmode.org
> >>>>>>>>>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>>>>>>>>> Searchable archive: http://www.mail-
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>> archive.com/catalyst at lists.rawmode.org/
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>>> Dev site: http://dev.catalyst.perl.org/
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>>>
> >>>>>>>>> _______________________________________________
> >>>>>>>>> List: Catalyst at lists.rawmode.org
> >>>>>>>>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>>>>>>>> Searchable archive: http://www.mail-
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>> archive.com/catalyst at lists.rawmode.org/
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>> Dev site: http://dev.catalyst.perl.org/
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>>>
> >>>>>>>> _______________________________________________
> >>>>>>>> List: Catalyst at lists.rawmode.org
> >>>>>>>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>>>>>>> Searchable archive: http://www.mail-
> >>>>>>>> archive.com/catalyst at lists.rawmode.org/
> >>>>>>>> Dev site: http://dev.catalyst.perl.org/
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>>>>>>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >>
> >>>>>> *"*"*
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> T-Systems Austria GesmbH   Rennweg 97-99, 1030 Wien
> >>>>>>> Handelsgericht Wien, FN 79340b
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >>
> >>>>>> *"*"*
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> Notice: This e-mail contains information that is confidential
> and
> >>>>>>>
> >>>>>>>
> >>>> may
> >>>>
> >>>>
> >>>>>> be privileged.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> If you are not the intended recipient, please notify the sender
> >>>>>>>
> >> and
> >>
> >>>>>>>
> >>>>>> then delete this e-mail immediately.
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >>
> >>>>>> *"*"*
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> _______________________________________________
> >>>>>>> List: Catalyst at lists.rawmode.org
> >>>>>>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>>>>>> Searchable archive: http://www.mail-
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>> archive.com/catalyst at lists.rawmode.org/
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>>> Dev site: http://dev.catalyst.perl.org/
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>> _______________________________________________
> >>>>>> List: Catalyst at lists.rawmode.org
> >>>>>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>>>>> Searchable archive: http://www.mail-
> >>>>>> archive.com/catalyst at lists.rawmode.org/
> >>>>>> Dev site: http://dev.catalyst.perl.org/
> >>>>>>
> >>>>>>
> >>>>>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >>
> >>>> *"*"*
> >>>>
> >>>>
> >>>>> T-Systems Austria GesmbH   Rennweg 97-99, 1030 Wien
> >>>>> Handelsgericht Wien, FN 79340b
> >>>>>
> >>>>>
> >>>>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >>
> >>>> *"*"*
> >>>>
> >>>>
> >>>>> Notice: This e-mail contains information that is confidential and
> >>>>>
> >> may
> >>
> >>>> be privileged.
> >>>>
> >>>>
> >>>>> If you are not the intended recipient, please notify the sender
> and
> >>>>>
> >>>>>
> >>>> then delete this e-mail immediately.
> >>>>
> >>>>
> >>>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >>
> >>>> *"*"*
> >>>>
> >>>>
> >>>>> _______________________________________________
> >>>>> List: Catalyst at lists.rawmode.org
> >>>>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>>>> Searchable archive: http://www.mail-
> >>>>>
> >>>>>
> >>>> archive.com/catalyst at lists.rawmode.org/
> >>>>
> >>>>
> >>>>> Dev site: http://dev.catalyst.perl.org/
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>> _______________________________________________
> >>>> List: Catalyst at lists.rawmode.org
> >>>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>>> Searchable archive: http://www.mail-
> >>>> archive.com/catalyst at lists.rawmode.org/
> >>>> Dev site: http://dev.catalyst.perl.org/
> >>>>
> >>>>
> >>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >> *"*"*
> >>
> >>> T-Systems Austria GesmbH   Rennweg 97-99, 1030 Wien
> >>> Handelsgericht Wien, FN 79340b
> >>>
> >>>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >> *"*"*
> >>
> >>> Notice: This e-mail contains information that is confidential and
> may
> >>>
> >> be privileged.
> >>
> >>> If you are not the intended recipient, please notify the sender and
> >>>
> >> then delete this e-mail immediately.
> >>
> >>
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> >> *"*"*
> >>
> >>> _______________________________________________
> >>> List: Catalyst at lists.rawmode.org
> >>> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >>> Searchable archive: http://www.mail-
> >>>
> >> archive.com/catalyst at lists.rawmode.org/
> >>
> >>> Dev site: http://dev.catalyst.perl.org/
> >>>
> >>>
> >>>
> >>>
> >> _______________________________________________
> >> List: Catalyst at lists.rawmode.org
> >> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> >> Searchable archive: http://www.mail-
> >> archive.com/catalyst at lists.rawmode.org/
> >> Dev site: http://dev.catalyst.perl.org/
> >>
> >
> >
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> *"*"*
> > T-Systems Austria GesmbH   Rennweg 97-99, 1030 Wien
> > Handelsgericht Wien, FN 79340b
> >
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> *"*"*
> > Notice: This e-mail contains information that is confidential and may
> be privileged.
> > If you are not the intended recipient, please notify the sender and
> then delete this e-mail immediately.
> >
> *"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"
> *"*"*
> > _______________________________________________
> > List: Catalyst at lists.rawmode.org
> > Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> > Searchable archive: http://www.mail-
> archive.com/catalyst at lists.rawmode.org/
> > Dev site: http://dev.catalyst.perl.org/
> >
> >
> >
> 
> 
> _______________________________________________
> List: Catalyst at lists.rawmode.org
> Listinfo: http://lists.rawmode.org/mailman/listinfo/catalyst
> Searchable archive: http://www.mail-
> archive.com/catalyst at lists.rawmode.org/
> Dev site: http://dev.catalyst.perl.org/

*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*
T-Systems Austria GesmbH   Rennweg 97-99, 1030 Wien
Handelsgericht Wien, FN 79340b
*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*
Notice: This e-mail contains information that is confidential and may be privileged.
If you are not the intended recipient, please notify the sender and then delete this e-mail immediately.
*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*"*


More information about the Catalyst mailing list