summaryrefslogtreecommitdiff
path: root/t/rt_27553_prepared_cache_and_analyze.t
diff options
context:
space:
mode:
Diffstat (limited to 't/rt_27553_prepared_cache_and_analyze.t')
-rw-r--r--t/rt_27553_prepared_cache_and_analyze.t26
1 files changed, 26 insertions, 0 deletions
diff --git a/t/rt_27553_prepared_cache_and_analyze.t b/t/rt_27553_prepared_cache_and_analyze.t
new file mode 100644
index 0000000..668c317
--- /dev/null
+++ b/t/rt_27553_prepared_cache_and_analyze.t
@@ -0,0 +1,26 @@
+use strict;
+
+BEGIN {
+ $| = 1;
+ $^W = 1;
+}
+
+use t::lib::Test;
+use Test::More tests => 6;
+use Test::NoWarnings;
+
+my $dbh = connect_ok( RaiseError => 1, AutoCommit => 1 );
+
+$dbh->do("CREATE TABLE f (f1, f2, f3)");
+
+my $sth = $dbh->prepare_cached("SELECT f.f1, f.* FROM f");
+ok($sth);
+
+$dbh->do("ANALYZE"); # invalidate prepared statement handles
+
+my $sth2 = $dbh->prepare_cached("SELECT f.f1, f.* FROM f");
+ok($sth2);
+
+my $ret = eval { $sth2->execute(); "ok" };
+ok !$@;
+is($ret, 'ok');