VMware Greenplum 7.x Beta Release Notes

Caution

VMware Greenplum 7 software and documentation is currently in Beta pre-release. The software and documentation are not yet complete, nor are they supported for production deployments. Upgrading VMware Greenplum 7 from one Beta release to a subsequent release is not supported.

This document contains release information about VMware Greenplum Database 7.x releases. For previous versions of the release notes for Greenplum Database, go to VMware Greenplum Database Documentation. For information about Greenplum Database end of life, see VMware Greenplum Database end of life policy.

VMware Greenplum 7 software is available for download from the VMware Greenplum page on VMware Tanzu Network.

VMware Greenplum 7 is based on the open source Greenplum Database project code.

Release 7.0 Beta.1

Release Date: 2023-02-03

VMware Greenplum 7 Beta.1 introduces these changes:

  • The following VMware Greenplum extensions are now provided in the Beta.1 release: ip4r, hll, PL/Java, Timestamp9, diskquota, and PL/Container.
  • The VMware Greenplum 7 code includes changes merged from the PostgreSQL REL_12_STABLE branch. This includes the following features:
    • Just-in-Time (JIT) compilation is provided with VMware Greenplum, and it is possible to use JIT with both the Postgres Planner and GPORCA.
    • You may now fetch a subset of columns when using the command COPY TO from a AOCO table.
    • The table pg_appendonly no longer records append-only storage options, they are now only listed under pg_class.reloptions, which significantly reduces the size of pg_appendonly catalog table.
    • Adds new views to support accessing progress reporting statistics during CREATE INDEX, REINDEX, CLUSTER, VACUUM FULL and pg_checksums operations.
    • VACUUM can now identify pages containing only already frozen tuples in the table’s visibility map and skips these pages, hence reducing the cost of maintaining large tables which contain mostly unchanging data. The new VACUUM parameter DISABLE_PAGE_SKIPPING forces VACUUM to run against all frozen pages in case the contents of the visibility map are suspect, which should happen only if there is a hardware or software issue causing database corruption.
    • The new option SKIP_LOCKED allows VACUUM and ANALYZE to skip relations that cannot lock immediately due to conflicting locks.
    • The new option INDEX_CLEANUP allows VACUUM to skip index cleanup. Setting the option to false will make VACUUM run as quickly as possible, for example, to avoid imminent transaction ID wraparound.
    • VACUUM can now avoid unnecessary heap table truncation attempts that require taking an exclusive table lock even when no truncation is possible. This enhancement avoids unnecessary query cancellations on the standby servers.
    • The new configuration parameter vacuum_cleanup_index_scale_factor helps minimize unnecessary index scans during VACUUM.
    • The new table and partition storage parameter vacuum_index_cleanup lets you control whether, for a given table ot partition, VACUUM attempts to remove index entries pointing to dead tuples.

Release 7.0 Beta.0

Release Date: 2022-12-15

VMware Greenplum 7 is a major new release of Greenplum that includes new and changed features.

New PostgreSQL Features

VMware Greenplum 7 incorporates several new features from PostgreSQL versions 9.5 through version 12:

  • Improve the sorting speed of varchar, text, and numeric fields via “abbreviated” keys (Postgres 9.5).
  • Support for array_position() and array_positions() functions (Postgres 9.5).
  • Support for INSERT ... ON CONFLICT UPDATE, an UPSERT-like operation that handles conflicts between concurrent data changes on a table. (Not yet supported by GPORCA, or on append-only tables.) (PostgreSQL 9.5).
  • Support for row-level security that implements true per-row and per-column data access control (PostgreSQL 9.5). Database administrators can now set security policies that filter which rows particular users are permitted to update or view. Refer to About Configuring Row-Level Security Policies for more information.
  • The pg_resetxlog utility was renamed to pg_resetwal.
  • Partition the shared hash table freelist to reduce contention on multi-CPU-socket servers (PostgreSQL 9.6).
  • Performance improvement when using atomic operations, rather than a spinlock, to protect an LWLock’s wait queue (PostgreSQL 9.6).
  • Allow setting and revoking default permissions on schemas using the ALTER DEFAULT PRIVILEGES command (PostgreSQL 10).
  • Support for PostgreSQL declarative table partitioning syntax (PostgreSQL 10).
  • Allow multiple functions, operators, and aggregates to be dropped with a single DROP command (PostgreSQL 10).
  • Support for SQL stored procedures that support embedded transactions (PostgreSQL 11).
  • Reduces the WAL overhead when building a GiST, GIN, or SP-GiST index; less space on disk is now required for these WAL records and the data replays faster during crash recovery or point-in-time recovery (PostgreSQL 12).
  • Support for the SQL/JSON path language (PostgreSQL 12).
  • Support for STORED generated columns (columns whose content is computed from expressions, including references to other columns in the same table, rather than being specified by INSERT or UPDATE commands). Generated columns cannot be used as a distribution key in Greenplum Database. (PostgreSQL 12)
  • Support for allowing some DDL commands to accept the current user (CURRENT_USER) or the session user (SESSION_USER) in place of a specific user name. (PostgreSQL 9.5).
  • The CREATE/ALTER USER ... PASSWORD commands no longer support the UNENCRYPTED option (PostgreSQL 10).
  • Support for defining multi-column most-common-value (MCV) extended statistics (via CREATE STATISTICS) to generate better plans for queries that test several non-uniformly-distributed columns. Currently supported only by the Postgres Planner, not GPORCA (PostgreSQL 12).
  • Support for automatic (but overridable) inlining of common table expressions (CTEs). In Greenplum 7, CTEs are automatically inlined if they have no side-effects, are not recursive, and are referenced only once in the query. You can prevent inlining by specifying MATERIALIZED, or force inlining for multiple-referenced CTEs by specifying NOT MATERIALIZED. In previous Greenplum releases, CTEs were never inlined and were always evaluated before the rest of the query. (PostgreSQL 12)
  • BRIN indexes (Block Range INdexes) are supported in VMware Greenplum 7. GPORCA currently uses the cost model for bitmap indexes to support BRIN indexes. GPORCA does not currently support the full set of BRIN datatypes that are supported with the Postgres Planner (PostgreSQL 9.5).
  • Hash indexes are supported in VMware Greenplum 7 with the Postgres planner (PostgreSQL 10). (Not supported by GPORCA.)
  • The built-in full-text search functionality can now search for phrases (multiple adjacent words) that appear next to each other in a specific order, or with a specified distance between the words (PostgreSQL 9.6).
  • Greenplum Database now supports ALTER TABLE SET DISTRIBUTED BY for external tables. However, you must ensure that the contents of the external/foreign tables satisfies the DISTRIBUTED BY rules.
  • Window functions now support all framing options shown in the SQL:2011 standard, including RANGE distance PRECEDING/FOLLOWING, GROUPS mode, and frame exclusion options enhancement.

New Server Features

  • Greenplum Database now includes a new server configuration parameter – default_table_access_method – which determines the default table access method when a CREATE TABLE command does not explicitly specify an access method.

  • The CREATE TABLE SQL command now supports specifying a table access method with the new USING <access method> clause.

  • You can now dynamically update the access method for a table with the ALTER TABLE command, using the new clause (subcommand) SET ACCESS METHOD <access_method>.

  • You can now dynamically update the following storage parameters for a table using the ALTER TABLE command:

    • appendoptimized
    • blocksize
    • orientation
    • compresstype
    • compresslevel
    • checksum
  • You may now dynamically update an AOCO table’s column encodings, using the ALTER TABLE command.

  • Unique indexes, unique constraints, and primary keys are now supported on append-optimized tables.

  • You many now alter a heap table with a unique index to an append-optimized table with a unique index.

  • Greenplum Database now includes a new server configuration parameter – enable_partition_pruning – which enables or disables the query planner’s ability to eliminate a partitioned table’s partitions from query plans.

  • A new gp_toolkit.__gp_aoblkdir(regclass) function that you can use to obtain each block directory entry for a given AO/AOCO table that had or has an index.

  • The GPORCA Query Optimizer now supports the CUBE grouping set result set.

  • The GPORCA Query Optimizer now supports planning and running queries that you specify with multiple grouping sets.

Changed Features

Greenplum Database 7 includes these feature changes from version 6.x:

  • Resource group-based resource management is currently undergoing a redesign; VMware recommends that you wait until it is fully implemented before using this feature.

  • The default size of the sequence cache is changed from 1 (no cache) to 20 to increase the performance of insert operations on tables that are defined with a serial data type using a sequence value.

    NOTE

    When operating with a cache of sequence numbers, Greenplum Database may discard some cached sequence values. If you require consecutive values, you must explicitly set CACHE 1 when you create the sequence.

  • The CPUSET syntax for reserving CPU cores for a resource group has changed to require separate separate core specifications for the coordinator host and segments hosts. When using CPUSET with CREATE RESOURCE GROUP or ALTER RESOURCE GROUP you must configure cores for the coordinator host first and then segment hosts, using a semicolon to separate the two. For example, CPUSET='1;1-3' configures core 1 for the coordinator host, and cores 1 through 3 for segment hosts.

  • The gpscp utility has been renamed gpsync and now takes a new -a option, which causes gpsync to sync source and target directories in archival mode.

  • The autovacuum server configuration parameter is now enabled for all databases by default, rather than just for the template0 and template1 databases.

  • The parallel retrieve cursor functionality available in the gp_parallel_retrieve_cursor module in Greenplum 6 is now built-in. See Retrieving Query Results with a Parallel Retrieve Cursor.

  • The pg_tables command no longer includes external tables in its output.

Removed Features

VMware Greenplum Database 7.0 removes these features:

  • The previously-deprecated createlang and droplang utilities.
  • The analyzedb option --skip_root_stats.
  • The gpsys1 utility.
  • The gpperfmon data collection agents, database, and views.
  • The ARRAY_NAME variable.
  • The CREATEUSER/NOCREATEUSER options from CREATE ROLE and allied commands.
  • VMware Greenplum Database 7 removes the following server configuration parameters:

    • debug_latch
    • gp_eager_dqa_pruning
    • gp_eager_one_phase_agg
    • gp_enable_exchange_default_partition
    • gp_enable_gpperfmon
    • gp_enable_sort_distinct
    • gp_gpperfmon_send_interval
    • gp_hashagg_streambottom
    • gp_perfmon_print_packet_info (debug)
    • gpperfmon_log_alert_level
    • gpperfmon_port
    • max_appendonly_tables
    • optimizer_enable_dml_triggers
    • password_hash_algorithm
  • VMware Greenplum Database 7 removes the following system catalog tables and views:

    • pg_partition_columns
    • pg_partition_encoding
    • pg_partition_rule
    • pg_partition_template
    • pg_stat_partition_operations

Known Issues and Limitations

VMware Greenplum 7.x has these limitations:

  • VMware Greenplum 7 software and documentation is currently in Beta release. The software and documentation are not complete nor are they supported for production deployments.
  • You cannot currently upgrade from a previous major version of Greenplum to Greenplum 7 Beta.
  • You cannot upgrade from a previous Beta version of Greenplum 7 to a subsequent Beta version (for example, from Beta.0 to Beta.1).
  • Many VMware Greenplum utilities and extensions are not yet included or supported with this Beta release, including: gppkg, Madlib, PostGIS, pgbouncer, gpcopy, advanced password check, GreenplumPython, PL/R, PXF, Spark Connector, Apache Nifi Connector, GemFire Connector, Command Center and metrics collector, WLM, streaming server, Kafka connector, ODBC driver, JDBC driver, GreenplumR, Data Science bundles, gpmt, cluster recovery, gp_filedump, gpst, Greenplum upgrade, Greenplum cloud offerings. Linked documentation may still reference utilities and extensions that are not included in this Beta.
check-circle-line exclamation-circle-line close-line
Scroll to top icon