You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Rewrite version result to fix column name
When `select version()` is run, return a column named `version` instead
of `version()` so we are more compatible with postgresql behaviour.
This is relied upon by some clients, including pgadmin4.
* Fix clippy warning
"SELECT a.attname, pg_catalog.format_type(a.atttypid, a.atttypmod), (SELECT pg_catalog.pg_get_expr(d.adbin, d.adrelid, true) FROM pg_catalog.pg_attrdef d WHERE d.adrelid = a.attrelid AND d.adnum = a.attnum AND a.atthasdef), a.attnotnull, (SELECT c.collname FROM pg_catalog.pg_collation c, pg_catalog.pg_type t WHERE c.oid = a.attcollation AND t.oid = a.atttypid AND a.attcollation <> t.typcollation LIMIT 1) AS attcollation, a.attidentity, a.attgenerated FROM pg_catalog.pg_attribute a WHERE a.attrelid = '16384' AND a.attnum > 0 AND NOT a.attisdropped ORDER BY a.attnum;",
1022
1066
"SELECT a.attname, pg_catalog.format_type(a.atttypid, a.atttypmod), NULL, a.attnotnull, NULL AS attcollation, a.attidentity, a.attgenerated FROM pg_catalog.pg_attribute AS a WHERE a.attrelid = '16384' AND a.attnum > 0 AND NOT a.attisdropped ORDER BY a.attnum");
1023
1067
}
1068
+
1069
+
#[test]
1070
+
fntest_version_rewrite(){
1071
+
let rules:Vec<Arc<dynSqlStatementRewriteRule>> = vec![Arc::new(FixVersionColumnName)];
1072
+
1073
+
assert_rewrite!(&rules,"SELECT version()","SELECT version() AS version");
1074
+
1075
+
// Make sure we don't rewrite things we should leave alone
1076
+
assert_rewrite!(&rules,"SELECT version() as foo","SELECT version() AS foo");
0 commit comments