Subject: | header record question |
Date: | Thu, 27 Sep 2012 15:14:11 -0700 |
To: | bug-Thrift-API-HiveClient [...] rt.cpan.org |
From: | Stephen Sprague <spragues [...] gmail.com> |
Hi Stephen,
First off - outstanding perl module. Thank you very much for putting this
thing out there. Superb job!.
So for my question. I have one nagging issue (and i don't think its
anything to do with your module) but i figured you might know. It has to
do with getting the header record back in the result set.
looking at your example code say I insert the execute( q{set
hive.cli.print.header=true }) line. wouldn't you expect that the header
record would return? I doesn't for me though.
* code
my $client = Thrift::API::HiveClient->new( host => $host, port => $port );
$client->connect;
print "Connected\n";
#add this
$client->execute( q{ set hive.cli.print.header=true } );
$client->execute(
q{ create table if not exists t_foo (foo STRING, bar STRING) }
);
$client->execute('show tables');
print Dumper $client->fetchAll;
* output:
$VAR1 = [
't_foo',
]
* I'd expect the header record "tab_name" to be in the resultset. running
locally we see this:
Show quoted text
hive> set hive.cli.print.header=true;
hive> show tables;
OK
tab_name
t_foo
Time taken: 2.988 seconds
Again, i'm pretty sure it has to do with running hive in remote mode - and
not your module - but would you know of a way to overcome this and get that
header out using your module?
Thanks again!
Cheers,
Stephen Sprague