Remove obsolete information schema tables

Started by Peter Eisentrautover 6 years ago5 messageshackers
Jump to latest
#1Peter Eisentraut
peter_e@gmx.net

I propose this patch to remove the information schema tables
SQL_LANGUAGES, which was eliminated in SQL:2008, and SQL_PACKAGES, which
was eliminated in SQL:2011. Since they were dropped by the SQL
standard, the information in them was no longer updated and therefore no
longer useful.

This also removes the feature-package association information in
sql_feature_packages.txt, but for the time begin we are keeping the
information which features are in the Core package (that is, mandatory
SQL features). Maybe at some point someone wants to invent a way to
store that that does not involve using the "package" mechanism
anymore.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachments:

0001-Remove-obsolete-information-schema-tables.patchtext/plain; charset=UTF-8; name=0001-Remove-obsolete-information-schema-tables.patch; x-mac-creator=0; x-mac-type=0Download+3-244
#2Michael Paquier
michael@paquier.xyz
In reply to: Peter Eisentraut (#1)
Re: Remove obsolete information schema tables

On Mon, Oct 14, 2019 at 10:27:14AM +0200, Peter Eisentraut wrote:

I propose this patch to remove the information schema tables
SQL_LANGUAGES, which was eliminated in SQL:2008, and SQL_PACKAGES, which
was eliminated in SQL:2011. Since they were dropped by the SQL
standard, the information in them was no longer updated and therefore no
longer useful.

The cleanup looks right. I cannot grep missing references FWIW.

This also removes the feature-package association information in
sql_feature_packages.txt, but for the time begin we are keeping the
information which features are in the Core package (that is, mandatory
SQL features). Maybe at some point someone wants to invent a way to
store that that does not involve using the "package" mechanism
anymore.

I have a question here. Per the notes in information_schema.sql,
SQL_SIZING_PROFILES has been removed in SQL:2011,
attributes.isnullable and DOMAIN_UDT_USAGE in SQL:2003~. Would it
make sense to cleanup those ones?
--
Michael

#3Peter Eisentraut
peter_e@gmx.net
In reply to: Michael Paquier (#2)
Re: Remove obsolete information schema tables

On 2019-10-17 09:44, Michael Paquier wrote:

I have a question here. Per the notes in information_schema.sql,
SQL_SIZING_PROFILES has been removed in SQL:2011,

OK, we can remove that one as well. New patch attached.

attributes.isnullable and DOMAIN_UDT_USAGE in SQL:2003~. Would it
make sense to cleanup those ones?

OK, I'll look into those, but it seems like a separate undertaking. We
don't always remove things just because they were dropped by the SQL
standard.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachments:

v2-0001-Remove-obsolete-information-schema-tables.patchtext/plain; charset=UTF-8; name=v2-0001-Remove-obsolete-information-schema-tables.patch; x-mac-creator=0; x-mac-type=0Download+3-326
#4Michael Paquier
michael@paquier.xyz
In reply to: Peter Eisentraut (#3)
Re: Remove obsolete information schema tables

On Sun, Oct 20, 2019 at 10:01:09AM +0200, Peter Eisentraut wrote:

On 2019-10-17 09:44, Michael Paquier wrote:

I have a question here. Per the notes in information_schema.sql,
SQL_SIZING_PROFILES has been removed in SQL:2011,

OK, we can remove that one as well. New patch attached.

Looks fine.

attributes.isnullable and DOMAIN_UDT_USAGE in SQL:2003~. Would it
make sense to cleanup those ones?

OK, I'll look into those, but it seems like a separate undertaking. We
don't always remove things just because they were dropped by the SQL
standard.

But that's the same kind of cleanup you do here. What's the
difference with DOMAIN_UDT_USAGE, which is mentioned as removed from
SQL:2003?
--
Michael

#5Peter Eisentraut
peter_e@gmx.net
In reply to: Michael Paquier (#4)
Re: Remove obsolete information schema tables

On 2019-10-21 07:34, Michael Paquier wrote:

On Sun, Oct 20, 2019 at 10:01:09AM +0200, Peter Eisentraut wrote:

On 2019-10-17 09:44, Michael Paquier wrote:

I have a question here. Per the notes in information_schema.sql,
SQL_SIZING_PROFILES has been removed in SQL:2011,

OK, we can remove that one as well. New patch attached.

Looks fine.

committed

attributes.isnullable and DOMAIN_UDT_USAGE in SQL:2003~. Would it
make sense to cleanup those ones?

OK, I'll look into those, but it seems like a separate undertaking. We
don't always remove things just because they were dropped by the SQL
standard.

But that's the same kind of cleanup you do here. What's the
difference with DOMAIN_UDT_USAGE, which is mentioned as removed from
SQL:2003?

SQL_LANGUAGES for example, contains information about which version of
the SQL standard is being conformed to. But since it's no longer in the
standard, it most recently said that SQL:2003 is supported, which isn't
very useful. We could extrapolate new values for more recent standards,
but that's also questionable. So it makes sense to remove it.

By contrast, I don't know why DOMAIN_UDT_USAGE was removed. It might
still be useful. Just because something is dropped by an SQL standard,
it doesn't mean we should remove it. For example, bit and bit varying
are no longer in the standard.

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services