Hi!
On 28.09.2017 16:02, Jesper Pedersen wrote:
Hi,
Using hash partitions I noticed that \d gives
D=# \d T_p63
Table "public.T_p63"
Column | Type | Collation | Nullable | Default
---------------+---------------+-----------+----------+---------
<remove>
Partition of: T FOR VALUES WITH (modulus 64, remainder 63)
No partition constraint
Indexes:
"T_p63" btree (X, Y)
where as \d+ gives
D=# \d+ T_p63
Table "public.T_p63"
Column | Type | Collation | Nullable | Default |
Storage | Stats target | Description
---------------+---------------+-----------+----------+---------+----------+--------------+-------------
<remove>
Partition of: T FOR VALUES WITH (modulus 64, remainder 63)
Partition constraint: satisfies_hash_partition(64, 63,
hashint4extended(X, '8816678312871386367'::bigint))
Indexes:
"T_p63" btree (X, Y)
E.g. "No partition constraint" vs. "Partition constraint:
satisfies_hash_partition(...)".
I also noticed ambiguity in printing "No partition constraint" in
non-verbose mode and "Partition constraint:..." in verbose one for
partition tables regardless of the type of partition.
Attached small patch removes any output about partition constraint in
non-verbose mode.
--
Regards,
Maksim Milyutin
diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c
index d22ec68..b301219 100644
--- a/src/bin/psql/describe.c
+++ b/src/bin/psql/describe.c
@@ -1900,13 +1900,16 @@ describeOneTableDetails(const char *schemaname,
partdef);
printTableAddFooter(&cont, tmpbuf.data);
- /* If there isn't any constraint, show that explicitly */
- if (partconstraintdef == NULL || partconstraintdef[0] == '\0')
- printfPQExpBuffer(&tmpbuf, _("No partition constraint"));
- else
- printfPQExpBuffer(&tmpbuf, _("Partition constraint: %s"),
- partconstraintdef);
- printTableAddFooter(&cont, tmpbuf.data);
+ if (verbose)
+ {
+ /* If there isn't any constraint, show that explicitly */
+ if (partconstraintdef == NULL || partconstraintdef[0] == '\0')
+ printfPQExpBuffer(&tmpbuf, _("No partition constraint"));
+ else
+ printfPQExpBuffer(&tmpbuf, _("Partition constraint: %s"),
+ partconstraintdef);
+ printTableAddFooter(&cont, tmpbuf.data);
+ }
PQclear(result);
}
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers