HomeMogDBMogDB StackUqbar
v3.0

Documentation:v3.0

Supported Versions:

MogDB 3.0.0

1. Version Description

MogDB 3.0.0 was released on June 30, 2022. It is an enhanced version based on MogDB 2.1 and incorporated with new features of openGauss 3.0.0.


2. New Features

2.1 Incorporated with New Features of openGauss 3.0.0

2.2 Asynchronous Commit of Autonomous Transactions

  • Transaction and transaction logging are executed in two threads. This will not make the session worker thread idle in the transaction wait phase. Therefore, the utilization of the session worker thread is improved, and the database performance is further improved on the premise of ensuring data integrity.
  • Asynchronous commit of autonomous transaction makes the overall performance of the database improved by 20% to 50% and tpmC increased steadily by 36% in the TPCC compression test.

Related page: Transaction Asynchronous Submit

2.3 Parallelism Control Achieved During Index Creation

  • MogDB allows you to set the parameter to control parallelism during index creation. It makes index creation efficient and flexible.

Related page: Index Creation Parallel Control

2.4 Dynamic Partition Pruning

  • The dynamic partition pruning function is provided on the basis of static partition pruning.
  • Partition pruning is realized in bind variable queries, subqueries, and queries of parameterized nested loops, thereby improving the partition query performance.

Related page: Dynamic Partition Pruning

2.5 Optimized COPY (Import)

The SIMD (single instruction, multiple data) vector processing is used combined with the CPU SSE4.2 command set to improve the COPY (import) performance.

Related page: COPY Import Optimization

2.6 Monitoring the Run Status of SQLs

  • Execution plans of session-level SQLs are collected and then execution operators are dynamically sampled.
  • The query performance problems are efficiently located in slow SQL queries.

Related page: SQL Running Status Observation

2.7 BRIN Index

  • Compared with BTREE indexes, BRIN (Block Range Index) is very small and scanning the index adds little overhead but the query speed is fast. BRIN is designed for handling very large tables in which certain columns have some natural correlation with their physical location within the table. BRIN index features quick index creation, small overhead, and fast scanning in sequential order.
  • This feature is from PostgreSQL.

Related page: BRIN Index

2.8 Bloom Index

  • Bloom index is based on bloom filter. It is applied to scenarios where a table stores a lot of columns and can be queried using any combination of columns. Compared with the traditional index, such as B+ tree, multiple B+ tree indexes need to be created in those scenarios, but one bloom index is enough.
  • This feature is from PostgreSQL.

Related page: BLOOM Index

2.9 PostGIS

PostGIS is a spatial database system. It provides spatial information service capabilities such as spatial objects, spatial indexes, spatial manipulation functions. It can be used in:

  • Atmospheric sciences, marine sciences, geology, environmental sciences, traffic management, processing and analyzing of complex spatial data, and mapping
  • Mobile communications, mobile positioning, and mobile Internet
  • Urban management, disaster response, resource development, etc.

Related page: PostGIS

2.10 Oracle Compatibility Enhancement

The whale plugin is incorporated into MogDB and supports the following Oracle functions and packages:

Functions

  • INSTRB
  • NLS_CHARSET_ID
  • NLS_CHARSET_NAME
  • NLS_LOWER
  • NLS_UPPER
  • ORA_HASH
  • REMAINDER
  • REPLACE
  • SHOW
  • SHOW_PARAMETER
  • TO_TIMESTAMP
  • TO_YMINTERVAL
  • TZ_OFFSET
  • NULLIF
  • Ratio_to_report

Packages

  • dbms_lock
  • dbms_job
  • dbms_utility
  • dbms_random
  • dbms_output
  • dbms_application_info
  • dbms_metadata

Related page: MogDB-Oracle Compatibility

2.11 Enhanced OM Troubleshooting Capability

This troubleshooting capability is enhanced by adding collection of system information, comparing parameters and test results, and adding debugging information, thereby helping users or debugging personnel locate problems efficiently.

This feature can be achieved by enhancing the following tools:

  • gstrace: gets targeted execution paths by adding the component switch function, thereby improving the debugging efficiency.
  • gs_check: saves and compares test results on the basis of scenario check.
  • gs_watch: When MogDB fails, gs_watch collects OS information, log information, and configuration files to locate the problem.
  • gs_gucquery: automatically collects, export, and compare MogDB GUC values.

Related page: Fault Diagnosis


3. Fixed Defects

3.1 Incorporate Fixed Defects in openGauss 3.0.0

  • I4VUXG: Fixed the data loss issue of unlogged tables.
  • I4SF5P: Fixed the core dump issue occurred by running create extension dblink after the database is compiled and installed in the release version, and the dblink module is compiled and installed.
  • I4S74D: Fixed the issue of failing to insert data (5⁄5) into a row-store compressed table using Jmeter when the data volume is greater than 1 GB. The compression type is set to 2.
  • I4N81J: Fixed the issue of failing to synchronize the UPDATE and DELETE operations to subscribers.
  • I4YPJQ: Fixed the issue of failing to insert varchar constants into MOTs using JDBC.
  • I4PF6G: Fixed the issue of TPCC execution failure during foreign key lock enhancement and gray upgrade from 2.0.0. to 2.2.0 (not committed).
  • I4WPD1: Fixed the issue of failing to execute simplified installation because the openGauss-2.1.0-CentOS-64bit.tar.bz2 file is missing in the decompressed installation package.
  • I4L268: Fixed the issue of incorrect system catalog pg_partition after the partitioned table is truncated for multiple times and then the vacuum freeze pg_partition command is executed.
  • I3HZJN: Fixed the issue of incorrect date format when the copy command is executed.
  • I4HUXD: Fixed the issue of failing to query the JSONB type.
  • I4QDN9: Fixed the issue of returning a value for select 1.79E +308*2,cume_dist() over(order by 1.0E128*1.2) out of range.
  • I4PAVO: Fixed the issue of failing to identify the start with connect by record subquery.
  • I4UY9A: Fixed the issue of failing to create the default partition during list partitioning.
  • I4W3UB: Fixed the issue of failing to obtain the view definition when the view is created using a user-defined type and the user-defined type is renamed.
  • I4WRMX: Fixed the issue of failing to clear data in the statement_history table. When the database restarts and the enable_stmt_track parameter is disabled, no record should be found in the statement_history table.
  • I4WOBH: Fixed the issue of failing to restart the database by setting GUC parameter pagewriter_sleep from 360000 to 2000.

3.2 Fixed Defects in MogDB 3.0.0

  • Updating a view may cause a core dump in some scenarios.
  • Creating local index tables on second-level partition tables may cause a core dump in some scenarios.
  • The CONNECT BY statement may cause a core dump in some scenarios.

4. Compatibility

This version supports the following operating system and CPU architecture combinations.

OS CPU Architecture
CentOS 7.x X86_64 (Intel, AMD, Hygon, ZHAOXIN)
Redhat 7.x X86_64 (Intel, AMD, Hygon, ZHAOXIN)
openEuler 20.03LTS ARM (Kunpeng), X86_64 (Intel, AMD, Hygon, ZHAOXIN)
Kylin V10 ARM (Kunpeng), X86_64 (Intel, AMD, Hygon, ZHAOXIN)
UOS V20-D / V20-E ARM (Kunpeng), X86_64 (Intel, AMD, Hygon, ZHAOXIN)
UOS V20-A X86_64 (Intel, AMD, Hygon, ZHAOXIN)

5. Known Issues

In the scenario where a partition table is encrypted by PBE (password-based encryption), dynamic partition pruning may possibly cause a core dump. To solve this problem, set enable_resource_track to off. This parameter has been incorporated into Recommended Parameter Settings.

Copyright © 2011-2024 www.enmotech.com All rights reserved.