Commit
16828d5c forgot to check that it had a set of missing values
before trying to retrieve a value from it.
An additional query to add coverage for this code is added to the
regression test.
Per bug report from Andreas Seltenreich.
Form_pg_attribute attr = TupleDescAttr(tupleDesc, attnum);
- if (attrmiss[attnum].ammissingPresent)
+ if (attrmiss && attrmiss[attnum].ammissingPresent)
{
fill_val(attr,
nullBits ? &nullBits : NULL,
Unchanged
(1 row)
+-- query to exercise expand_tuple function
+CREATE TABLE t1 AS
+SELECT 1::int AS a , 2::int AS b
+FROM generate_series(1,20) q;
+ALTER TABLE t1 ADD COLUMN c text;
+SELECT a,
+ stddev(cast((SELECT sum(1) FROM generate_series(1,20) x) AS float4))
+ OVER (PARTITION BY a,b,c ORDER BY b)
+ AS z
+FROM t1;
+ a | z
+---+---
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+ 1 | 0
+(20 rows)
+
+DROP TABLE t1;
DROP TABLE T;
DROP FUNCTION set(name);
DROP FUNCTION comp();
SELECT comp();
+-- query to exercise expand_tuple function
+CREATE TABLE t1 AS
+SELECT 1::int AS a , 2::int AS b
+FROM generate_series(1,20) q;
+
+ALTER TABLE t1 ADD COLUMN c text;
+
+SELECT a,
+ stddev(cast((SELECT sum(1) FROM generate_series(1,20) x) AS float4))
+ OVER (PARTITION BY a,b,c ORDER BY b)
+ AS z
+FROM t1;
+
+DROP TABLE t1;
DROP TABLE T;
DROP FUNCTION set(name);
DROP FUNCTION comp();