~tsarev/percona-server/5.5-processlist_rows_stats-sporadic_fails-fix

« back to all changes in this revision

Viewing changes to HandlerSocket-Plugin-for-MySQL/regtest/test_01_lib/test23.pl

Merge release branch, update version

Create release-5.5.12-20.3 with 5.5.12 changes and release branch from
5.5.11. Update versions to 5.5.12 and 20.3.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
#!/usr/bin/perl
 
2
 
 
3
# vim:sw=2:ai
 
4
 
 
5
# test for 'IN', filters, and modifications
 
6
 
 
7
BEGIN {
 
8
        push @INC, "../common/";
 
9
};
 
10
 
 
11
use strict;
 
12
use warnings;
 
13
use hstest;
 
14
 
 
15
my $dbh = hstest::init_testdb();
 
16
my $table = 'hstesttbl';
 
17
my $tablesize = 100;
 
18
$dbh->do(
 
19
  "create table $table (k varchar(30) primary key, " .
 
20
  "v varchar(30) not null, v2 int not null) " .
 
21
  "engine = innodb");
 
22
srand(999);
 
23
 
 
24
my %valmap = ();
 
25
 
 
26
my $sth = $dbh->prepare("insert into $table values (?,?,?)");
 
27
for (my $i = 0; $i < $tablesize; ++$i) {
 
28
  my $k = "k" . $i;
 
29
  my $v = "v" . int(rand(1000)) . "-" . $i;
 
30
  my $v2 = ($i / 10) % 2;
 
31
  $sth->execute($k, $v, $v2);
 
32
  $valmap{$k} = $v;
 
33
}
 
34
 
 
35
my $hs = hstest::get_hs_connection(undef, 9999);
 
36
my $dbname = $hstest::conf{dbname};
 
37
$hs->open_index(1, $dbname, $table, '', 'k,v,v2', 'v2');
 
38
$hs->open_index(2, $dbname, $table, '', 'v', 'v2');
 
39
my $vs = [ 'k10', 'k20x', 'k30', 'k40', 'k50' ];
 
40
# update $table set v = 'MOD' where k in $vs and v2 = '1'
 
41
my $r = $hs->execute_single(2, '=', [ '' ], 10000, 0, 'U', [ 'MOD' ],
 
42
  [['F', '=', 0, '1']], 0, $vs);
 
43
$r = $hs->execute_single(1, '>=', [ '' ], 10000, 0);
 
44
shift(@$r);
 
45
print "HS\n";
 
46
my $len = scalar(@$r) / 3;
 
47
for (my $i = 0; $i < $len; ++$i) {
 
48
  my $k = $r->[$i * 3];
 
49
  my $v = $r->[$i * 3 + 1];
 
50
  my $v2 = $r->[$i * 3 + 2];
 
51
  print "$k $v $v2\n";
 
52
}
 
53