Hi Jake,

I checked out directly from svn trunk.  The only command prior to the set
that I showed was the svn co command:

% svn co http://svn.apache.org/repos/asf/incubator/thrift/trunk thrift-trunk
% cd thrift-trunk/lib/perl/
% perl Makefile.PL && make && make check

make: *** No rule to make target `check'.  Stop.

Do I need to run other commands prior to running the perl tests?

In looking at your output, it looks like I might need to build from the top
of the tree before running the perl test.

I tried to follow the steps for compiling the whole tree, but I get this
error:

% svn co http://svn.apache.org/repos/asf/incubator/thrift/trunk thrift-trunk
% cd thrift-trunk/
% ./bootstrap.sh
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626
configure.ac:20: error: Autoconf version 2.65 or higher is required
configure.ac:20: the top level
autom4te: /usr/bin/gm4 failed with exit status: 63
autoscan: /usr/bin/autom4te failed with exit status: 63
%

This is on a mac os x 10.6.4.

If I don't need to build from the top of the tree, just let me know how to
run the perl side of it.  If I do need to build from the top of the tree,
how can I build it on 10.6.4?  I have the default autoconf that comes with
mac developer tools

% autoconf --version
autoconf (GNU Autoconf) 2.61

Thanks
Dave Viner


On Wed, Sep 29, 2010 at 7:36 PM, Jake Luciani <[email protected]> wrote:

> That is strange, what version are you on?
>
> Here's what I see.
>
> bash-3.2$ make check
> Making check in test
> make  check-local
> ../../../compiler/cpp/thrift --gen perl ../../../test/ThriftTest.thrift
> make -f Makefile-perl.mk
> find blib -name 'Makefile*' -exec rm -f {} \;
> make  check-local
> /opt/local/bin/perl -Iblib/lib -I/Users/jake/projects/thrift.svn/lib/perl
> -I./test/gen-perl \
>
> /Users/jake/projects/thrift.svn/lib/perl/
> test.pl/Users/jake/projects/thrift.svn/lib/perl/test/*.t
> /Users/jake/projects/thrift.svn/lib/perl/test/memory_buffer....ok
>
> /Users/jake/projects/thrift.svn/lib/perl/test/processor........ok
>
> All tests successful.
> Files=2, Tests=8,  0 wallclock secs ( 0.15 cusr +  0.03 csys =  0.18 CPU)
>
>
> On Wed, Sep 29, 2010 at 7:24 PM, Dave Viner <[email protected]> wrote:
>
> > hm...
> >
> > Maybe I'm doing something wrong:
> >
> > % cd thrift-trunk/lib/perl/
> > % perl Makefile.PL
> > Writing Makefile for Thrift
> > %
> > % make
> > cp lib/Thrift/Server.pm blib/lib/Thrift/Server.pm
> > cp lib/Thrift/Protocol.pm blib/lib/Thrift/Protocol.pm
> > cp lib/Thrift/BinaryProtocol.pm blib/lib/Thrift/BinaryProtocol.pm
> > cp lib/Thrift/Socket.pm blib/lib/Thrift/Socket.pm
> > cp lib/Thrift/FramedTransport.pm blib/lib/Thrift/FramedTransport.pm
> > cp lib/Thrift/Socket.pm.o blib/lib/Thrift/Socket.pm.o
> > cp lib/Thrift/BufferedTransport.pm blib/lib/Thrift/BufferedTransport.pm
> > cp lib/Thrift/Transport.pm blib/lib/Thrift/Transport.pm
> > cp lib/Thrift/HttpClient.pm blib/lib/Thrift/HttpClient.pm
> > cp lib/Thrift/MemoryBuffer.pm blib/lib/Thrift/MemoryBuffer.pm
> > cp lib/Thrift.pm blib/lib/Thrift.pm
> > %
> > % make check
> > make: *** No rule to make target `check'.  Stop.
> > %
> > % make test
> > PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl
> > Files=0, Tests=0,  0 wallclock secs ( 0.00 usr +  0.00 sys =  0.00 CPU)
> > Result: NOTESTS
> >
> > Any thoughts?
> >
> > Dave Viner
> >
> >
> > On Wed, Sep 29, 2010 at 4:21 PM, Jake Luciani <[email protected]> wrote:
> >
> > > 'make check' I believe.
> > >
> > >
> > >
> > > On Sep 29, 2010, at 7:05 PM, Dave Viner <[email protected]> wrote:
> > >
> > > > Will do.
> > > >
> > > > How do I run the perl unit-tests?  I tried the following:
> > > >
> > > > % cd thrift-trunk/lib/perl
> > > > % perl Makefile.PL
> > > > % make
> > > > % make test
> > > >
> > > > But this doesn't seem to find the tests:
> > > >
> > > > % make test
> > > > PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl
> > > > Files=0, Tests=0,  0 wallclock secs ( 0.00 usr +  0.00 sys =  0.00
> CPU)
> > > > Result: NOTESTS
> > > > %
> > > >
> > > > I want to make sure that my patch doesn't break existing tests, as
> well
> > > as
> > > > expand the unit test to cover the scenario I'm adding.
> > > >
> > > > Thanks
> > > > Dave Viner
> > > >
> > > >
> > > >
> > > > On Wed, Sep 29, 2010 at 2:45 AM, Jake Luciani <[email protected]>
> > wrote:
> > > >
> > > >> Hi Dave
> > > >>
> > > >> No reason why we shouldn't check it. Could you please open a ticket?
> > If
> > > you
> > > >> have a patch that would be great.
> > > >>
> > > >> Thanks.
> > > >>
> > > >> Jake
> > > >>
> > > >>
> > > >>
> > > >> On Sep 29, 2010, at 3:13 AM, Dave Viner <[email protected]> wrote:
> > > >>
> > > >>> Hi all,
> > > >>>
> > > >>> I'm using Thrift inside Cassandra, and I'm seeing conditions where
> I
> > > >> receive
> > > >>> lots of these error messages:
> > > >>>
> > > >>> problem running get_slice: $VAR1 = bless( {
> > > >>>                'code' => 0,
> > > >>>                'message' => 'TSocket: timed out reading 4 bytes
> from
> > > >>> server-ip:9160'
> > > >>>              }, 'Thrift::TException' );
> > > >>>
> > > >>> get_slice is the cassandra call.  The TSocket exception is thrown
> > from
> > > >>>
> > > >>
> > >
> >
> http://svn.apache.org/repos/asf/incubator/thrift/trunk/lib/perl/lib/Thrift/Socket.pm
> > > >>>
> > > >>> The issue seems to be in the handling of read(), readAll(), and
> > > write().
> > > >>> The code checks to see if the $self->{'handle'} variable (which is
> an
> > > >>> IO::Select object) is defined.  However, it seems possible for an
> > > >> IO::Select
> > > >>> object to be defined, but to have no handles that are valid or
> > > connected.
> > > >>> It seems that the code could be a bit more robust in checking for a
> > > >>> condition where the handle is not open, and throw a more explicit
> > > >> exception.
> > > >>> Then it can check for data in the Exception handle.
> > > >>>
> > > >>> I'm happy to create a patch for it, but before I do so, is there a
> > > reason
> > > >>> why the code doesn't currently check for this error condition?
> > > >>>
> > > >>> Thanks
> > > >>> Dave Viner
> > > >>
> > >
> >
>

Reply via email to