warn "# using partition $table";
}
- if ( my $cols = $self->redis->get("pg.$table") ) {
+ if ( my $cols = $self->redis->get("columns.$table") ) {
@c = split(/\s+/,$cols);
} else {
my $sth = $self->dbh->prepare( "select * from $table limit 1" );
}
@c = @{ $sth->{NAME_lc} };
- $self->redis->set( "pg.$table" => join(' ',@c) );
- $self->redis->expire( "pg.$table" => $redis_ttl );
+ $self->redis->set( "columns.$table" => join(' ',@c) );
+ $self->redis->expire( "columns.$table" => $redis_ttl );
# web interface requires base table columns
- $self->redis->set( "pg.$base_table" => join(' ',@c) );
- $self->redis->expire( "pg.$base_table" => $redis_ttl );
+ $self->redis->set( "columns.$base_table" => join(' ',@c) );
+ $self->redis->expire( "columns.$base_table" => $redis_ttl );
}
my $sql = "INSERT INTO $table (" . join(',',@c) . ') values (' . join(',', map { '?' } 0 .. $#c) . ')';
use strict;
use warnings;
-use Test::More tests => 17;
+use Test::More tests => 19;
use Data::Dump qw(dump);
use lib 'lib';
start => '2011-12-05 01:01:01',
}), 'ping';
-ok( $r = $o->redis->get( 'table.cpe_Davolink.nobody' ), 'redis' );
+ok( $r = $o->redis->get( 'table.cpe_Davolink.nobody' ), 'redis table.cpe_Davolink.nobody' );
ok( my $j = $o->d_json($r), 'd_json' );
isa_ok( $j->{h}, 'HASH', 'hstore' );
diag dump($j);
+foreach my $key ( qw( columns.cpe_Davolink columns.cpe_Davolink_2011_12_05 ) ) {
+ ok( $r = $o->redis->get( $key ), "redis $key" );
+}
+
ok $r = $o->sql('job', "select username,rtt from ping limit 2"), 'sql';
diag dump($r);
# generate result as Store_sql does
- my @c = split(/\s+/, $redis->get("pg.$table"));
+ my @c = split(/\s+/, $redis->get("columns.$table"));
my ($hash_col) = grep { $c[$_] eq 'h' } 0 .. $#c;
$ret = {