LightDB 21.3 release note

lightdb 21.3正式发布官网,这个版本的主要改进包括:

0、更加兼容ORM自动生成的代码,如string\decimal\int\long之间自动互转

1、支持oracle rownum;

2、支持show %变量%

3、支持自动分区;

4、定时任务支持秒级调度;

5、支持mysql limit m,n语法

6、原生支持intel pmem持久化内存

7、安装向导支持一主多从

8、新增优化器提示qb_name、no_merge,支持在任何子查询中使用优化器提示

9、首次支持分布式部署(预览版)

10、Oracle、mysql兼容性进一步增强

11、集群更加稳定,脑裂与切换采用状态机模式,自动恢复能力更强

这个版本,修复了三个社区缺陷。https://github.com/citusdata/pg_cron/pull/176https://github.com/EnterpriseDB/repmgr/pull/732

E.1. Release 13.3-21.3

Release date: 2021-12-31

This release contains a variety of changes from LightDB 13.3-21.3.

  • WAL (Write-Ahead Log) can be placed on Intel Optane PMEM, archieving significant improvements in recovery time and performance. To enable this feature, set GUC option wal_sync_method to pmem_drain. See wal_sync_method for details.

  • MySQL compatibility enhancements

    • functions support: find_in_set(), group_concat(), if(), truncate(), datediff(), locate() and database(). See myfce for details.

    • longtext data type support

    • LIMIT(m, n) syntax support. See Section 7.6 for details.

  • Oracle compatibility enhancements, including data type implicit conversion between number (such as int2, int4, int8, float4, float8 and numeric) and string(such as char, varchar, text and unknow). See Chapter 10 for details.

  • Autovacuum when setting a table read only. no more manual execution.

  • Wildcards '%' can be used when viewing GUC parameters with SHOW statement. For example, you can use it like "SHOW max%", "SHOW %timeout" and "SHOW %vacuum%". See SHOW for details.

  • Alias can be used when updating a single table with UPDATE statement. For example, you can use it like "UPDATE mytable AS t SET t.colname = value WHERE t.id = 1".

  • Support automatic cleaning of archived WAL and log files according to specified rules. See Section 17.5.3 for details.

    • Archived WAL: clean up archived wal files in archive dir (lightdb_archive_dir) older than (checkpoint file - lightdb_archive_retention_size) when archive wal success. For example: lightdb_archive_retention_size = 2. checkpoint file is 000000010000000000000008, will remove file older than 000000010000000000000006.

    • log files: by set lightdb_log_retention_age to N Mins(usually set to xxxd to remove file xxx days ago) to remove files older than N Mins. execute when switch to new file. the time depends on file modification time.

  • COPY and pg_bulkload support multi character separators(at most three) for text. See COPY for details.

        COPY country TO STDOUT (DELIMITER 'ABC');
        
  • Modify default search_path to contains oracle schema. This means functions and data types in orafce extension can be used directly anywhere.

  • Citus extension integrated, but not enabled by default.

  • pg_pathman extension integrated and enabled by default.

  • pg_profile enhancement, LightDB profile report(PWR) adding database time statistics. See pgprofile for details.

  • pg_hint_plan enhancements, including multi hint support, hint scope qualification, qb_name syntax support and no_merge hint syntax support. Now you can use hint only for sub query. See pghint_plan for details.

  • pg_cron enhancements, including second level timed task support and one time scheduled task support. In addition, the default time zone of the task is adjusted to UTC/GMT+08:00. See pg_cron for details.

  • system_stats enhancements, adding a new function lt_get_sys_kernel_settings() to get linux kernel parameters.

  • lt_initdb command line parameters support specifying non default port number(-p). For example: lt_initdb -p xxx -D xxx. See lt_initdb for details.

  • Support ROWNUM. ROWNUM is a pseudocolumn like oracle ROWNUM. For each row returned by a query, the ROWNUM pseudocolumn returns a number indicating the order in which LightDB selects the row from a table or set of joined rows.

    Now ROWNUM support use with order by, group by, subquery, join, union and partition table. However, it is not supported in update or deletion, and it is not supported in column expression(like select rownum + 1 from xxx ). See Section 7.9 for details.

  • The following extensions is removed from LightDB.

    • pg_wait_sampling, replaced by LightDB's own implementation. with more precise statistics and auto-rollup history data.

    • timescaledb, replaced by pg_pathman auto-partition and columnar table.

posted @ 2022-01-19 16:51  zhjh256  阅读(74)  评论(0编辑  收藏  举报