diff --git a/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md b/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md
index 644785870671ac79ae5e197e9d37c7ed27f6be00..5816919ce2952c0923cd0e4e7a5489324316c6cf 100644
--- a/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md
+++ b/product/zh/docs-mogdb/v3.0/reference-guide/functions-and-operators/8-date-and-time-processing-functions-and-operators.md
@@ -680,7 +680,7 @@ date: 2021-04-20
- TZ_OFFSET(var)
- 描述:返回入参地址的时区偏移量。
+ 描述:返回入参地址的时区偏移量。(需安装[compat-tools](../../about-mogdb/open-source-components/compat-tools.md)或[whale插件](../../reference-guide/oracle-plugins/whale.md))
返回值类型:interval
diff --git a/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md b/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md
index baff33aae2ff1c4b42570c11f800a0ed6b94cc9f..08e8b276597123c3355a842fd2b96e21e7f24fc5 100644
--- a/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md
+++ b/product/zh/docs-mogdb/v5.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md
@@ -25,11 +25,11 @@ MogDB提升了WAL日志回放功能。
目前备库回放性能不佳,导致故障转移时间过长,或者在主备切换演练时切换操作时间过长。一方面会导致数据库长时间无法提供服务,从而导致用户业务长时间停止;另一方面,这会导致备库数据相较主库数据延迟过长的时间,致使备库WAL文件堆积占用磁盘空间。
-MogDB提供并行回放机制,使得在回放过程中多个线程同时工作。本特性主要对表级别并行回放进行优化,并提供回放性能观测视图,查看回放状态。具体优化点如下:
+MogDB提供并行回放机制,使得在回放过程中多个线程同时工作(需设置[recovery_max_workers](../../reference-guide/guc-parameters/write-ahead-log/log-replay.md#recovery_max_workers) = 4)。本特性主要对表级别并行回放进行优化,并提供回放性能观测视图,查看回放状态。具体优化点如下:
- 增加starup线程移交WAL日志的批次,减小WAL记录流转导致的性能下降。
- 更改表分发策略,使redo任务更均衡的分发到各个工作线程。
-- 观测视图:可查看redo过程各个阶段的耗时和各种WAL回放状态。
+- 观测视图:可查看redo过程各个阶段的耗时和各种WAL回放状态(仅在备机上有有效数据)。
## 相关页面
diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md b/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md
index 59bd2ff2ff0c85f29fa6f62f480484635e5b335c..6d9193397571483f18b795eaf5201d37a492ff68 100644
--- a/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md
+++ b/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md
@@ -684,7 +684,7 @@ date: 2021-04-20
- TZ_OFFSET(var)
- 描述:返回入参地址的时区偏移量。
+ 描述:返回入参地址的时区偏移量。(需安装[compat-tools](../../about-mogdb/open-source-components/compat-tools.md)或[whale插件](../../developer-guide/extension/whale.md))
返回值类型:interval
diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md b/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md
index 4aafbf353025fb1dd1c722d283d122e7e1fc4037..3781e37c8fc4e720a203f8fada3fd2d45e632e1f 100644
--- a/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md
+++ b/product/zh/docs-mogdb/v5.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md
@@ -395,22 +395,22 @@ date: 2021-04-20
- gs_session_memory
-描述:统计Session级别的内存使用情况,包含执行作业在数据节点上Postgres线程和Stream线程分配的所有内存。
+ 描述:统计Session级别的内存使用情况,包含执行作业在数据节点上Postgres线程和Stream线程分配的所有内存。
->  **说明**:
->
-> 若GUC参数enable_memory_limit=off,该函数不能使用。
+ >  **说明**:
+ >
+ > 若GUC参数enable_memory_limit=off,该函数不能使用。
-返回值类型:record
+ 返回值类型:record
-**表 8** 返回值说明
+ **表 8** 返回值说明
-| 名称 | 类型 | 描述 |
-| :------- | :------ | :------------------------------------------------- |
-| sessid | text | 线程启动时间+线程标识。 |
-| init_mem | integer | 当前正在执行作业进入执行器前已分配的内存,单位MB。 |
-| used_mem | integer | 当前正在执行作业已分配的内存,单位MB。 |
-| peak_mem | integer | 当前正在执行作业已分配的内存峰值,单位MB。 |
+ | 名称 | 类型 | 描述 |
+ | :------- | :------ | :------------------------------------------------- |
+ | sessid | text | 线程启动时间+线程标识。 |
+ | init_mem | integer | 当前正在执行作业进入执行器前已分配的内存,单位MB。 |
+ | used_mem | integer | 当前正在执行作业已分配的内存,单位MB。 |
+ | peak_mem | integer | 当前正在执行作业已分配的内存峰值,单位MB。 |
- gs_wlm_persistent_user_resource_info()
@@ -426,28 +426,28 @@ date: 2021-04-20
- GS_ALL_NODEGROUP_CONTROL_GROUP_INFO(text)
-描述:提供了所有逻辑数据库实例的控制组信息。该函数在调用的时候需要指定要查询逻辑数据库实例的名称。例如要查询'InstallationGuide'逻辑数据库实例的控制组信息:
+ 描述:提供了所有逻辑数据库实例的控制组信息。该函数在调用的时候需要指定要查询逻辑数据库实例的名称。例如要查询'InstallationGuide'逻辑数据库实例的控制组信息:
-```sql
-SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
-```
+ ```sql
+ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
+ ```
-返回值类型:record
+ 返回值类型:record
-函数返回字段如下:
+ 函数返回字段如下:
-| 名称 | 类型 | 描述 |
-| :------- | :----- | :---------------------------- |
-| name | text | 控制组的名称。 |
-| type | text | 控制组的类型。 |
-| gid | bigint | 控制组ID。 |
-| classgid | bigint | Workload所属Class的控制组ID。 |
-| class | text | Class控制组。 |
-| workload | text | Workload控制组。 |
-| shares | bigint | 控制组分配的CPU资源配额。 |
-| limits | bigint | 控制组分配的CPU资源限额。 |
-| wdlevel | bigint | Workload控制组层级。 |
-| cpucores | text | 控制组使用的CPU核的信息。 |
+ | 名称 | 类型 | 描述 |
+ | :------- | :----- | :---------------------------- |
+ | name | text | 控制组的名称。 |
+ | type | text | 控制组的类型。 |
+ | gid | bigint | 控制组ID。 |
+ | classgid | bigint | Workload所属Class的控制组ID。 |
+ | class | text | Class控制组。 |
+ | workload | text | Workload控制组。 |
+ | shares | bigint | 控制组分配的CPU资源配额。 |
+ | limits | bigint | 控制组分配的CPU资源限额。 |
+ | wdlevel | bigint | Workload控制组层级。 |
+ | cpucores | text | 控制组使用的CPU核的信息。 |
- gs_total_nodegroup_memory_detail
@@ -468,7 +468,7 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
| thread_name | 线程名字 |
| step1_total | step1的总时间,每个线程对应的流程如下:
极致RTO:
- batch redo:从队列中获取一条日志
- redo manager:从队列中获取一条日志
- redo worker:从队列中获取一条日志
- trxn manager:从队列中读取一条日志
- trxn worker:从队列中读取一条日志
- read worker:从文件中读取一次xlog page(整体)
- read page worker:从队列中获取一个日志
- startup:从队列中获取一个日志
并行回放:
- page redo:从队列中获取一条日志
- startup:读取一条日志 |
| step1_count | step1的统计次数 |
- | step2_total | step2的总时间,每个线程对应的流程如下:
极致RTO:
- batch redo:处理日志(整体)
- redo manager:处理日志(整体)
- redo worker:处理日志(整体)
- trxn manager:处理日志(整体)
- trxn worker:处理日志(整体)
- redo worker:读取xlog page耗时
- read page worker:生成和发送lsn forwarder
- startup:check stop(是否回放到指定位置)
并行回放:
- page redo:处理日志(整体)
- startup:check stop(是否回放到指定位置) |
+ | step2_total | step2的总时间,每个线程对应的流程如下:
极致RTO:
- batch redo:处理日志(整体)
- redo manager:处理日志(整体)
- redo worker:处理日志(整体)
- trxn manager:处理日志(整体)
- trxn worker:处理日志(整体)
- redo worker:读取xlog page耗时
- read page worker:生成和发送lsn forwarder
- startup:check stop(是否回放到指定位置)
并行回放:
- page redo:处理日志(整体)
- startup:check stop(是否回放到指定位置) |
| step2_count | step2的统计次数 |
| step3_total | step3的总时间,每个线程对应的流程如下:
极致RTO:
- batch redo:更新standbystate
- redo manager:数据日志处理
- redo worker:回放page也日志(整体)
- trxn manager:更新flush lsn
- trxn worker:回放日志处理
- redo worker:推进xlog segment
- read page worker:获取一个新的item
- startup:redo delay(延迟回放特性等待时间)
并行回放:
- page redo:更新standbystate
- startup:redo delay(延迟回放特性等待时间) |
| step3_count | step3的统计次数 |
@@ -487,12 +487,12 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
- redo_stat_detail()
- 描述:用于查询在最近一段时间内,备库接受wal、flush wal、apply wal的速度。用户可以通过这个视图对备机的wal处理能力有一个直观的认知。
+ 描述:用于查询在最近一段时间内,备库接受wal、flush wal、apply wal的速度。用户可以通过这个视图对备机的wal处理能力有一个直观的认知(仅在备机上有有效数据)。
| 线程名 | 描述 |
-| ----------- | ----------------------------------------- |
+ | ----------- | ----------------------------------------- |
| Recv_speed | 在redo上一个1G wal区间时,wal接收速度 |
-| Flush_speed | 在redo上一个1G wal区间时,wal刷盘速度 |
+ | Flush_speed | 在redo上一个1G wal区间时,wal刷盘速度 |
| Redo_speed | 在redo上一个1G wal区间时,wal平均回放速度 |
| Buffer_hit | 在redo上一个1G wal区间时,buffer命中率 |
| Recv_lsn | 当前已接收的lsn |
@@ -502,7 +502,7 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
- redo_time_detail()
- 描述:用于在客户现场出现redo慢问题时,为分析redo问题提供数据依据。
+ 描述:用于在客户现场出现redo慢问题时,为分析redo问题提供数据依据(仅在备机上有有效数据)。
| Thread_name | 线程名 |
| ----------- | ------------------------------------------------------------ |
@@ -528,12 +528,12 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
- dispatch_stat_detail()
- 描述:用于查询各个worker线程的redo负载, 以此判断各个redo worker的负载是否均衡。
+ 描述:用于查询各个worker线程的redo负载, 以此判断各个redo worker的负载是否均衡(仅在备机上有有效数据)。
| thread_name | 线程名 |
-| ------------- | ------------------------------------------------------------ |
+ | ------------- | ------------------------------------------------------------ |
| pending_count | 每个线程当前实时的待处理的 item 数量。 |
-| ratio | 自上次调整以来,每个线程分配的 item 数量占比。 |
+ | ratio | 自上次调整以来,每个线程分配的 item 数量占比。 |
| detail | 每个线程处理的 item 明细,格式为:(relnode:count:ratio),即每个 relation 的 item 数量和占比。 |
- local_xlog_redo_statics()
@@ -592,7 +592,7 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
示例:
- ```
+ ```sql
MogDB=# SELECT gs_stack(139663481165568);
gs_stack
--------------------------------------------------------------------
diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/thread-pool.md b/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/thread-pool.md
index 059a4ffd9c3e689d3d6bb57f4371bf66fa8f18da..ce5f8592b43900d0f79143cf069543c13e4bad4a 100644
--- a/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/thread-pool.md
+++ b/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/thread-pool.md
@@ -16,7 +16,7 @@ date: 2021-06-07
- on表示开启线程池功能。
- off表示不开启线程池功能。
-说明: 在开启线程池下,应用程序连接数据库需要使用HA端口。
+说明: 在开启线程池下,逻辑复制连接数据库需要使用HA端口。
**默认值**:off
diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md b/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md
index 635aefac23b53f12f98828fb4eb326eea3217999..78b0a041a6275b337a3a9d3cff459602689c292e 100644
--- a/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md
+++ b/product/zh/docs-mogdb/v5.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md
@@ -472,7 +472,7 @@ date: 2021-04-20
| **兼容性配置项** | **兼容性行为控制** |
| :--------------- | :----------------------------------------------------------- |
| for_loop | 控制存储过程中FOR_LOOP查询语句行为设置此项时,在FOR rec IN query LOOP语句中,若rec已经定义,不会复用已经定义的rec变量,而且重新建立一个新的变量。否则,会复用已经定义的rec变量,不会建立新的变量。(与proc_implicit_for_loop_variable相同,后续进行收编) |
-| outparam | out重载条件下,有重载函数;将对out出参常量进性检查,禁止out出参为常量报错。 |
+| outparam | out重载条件下,有重载函数;将对out出参常量进行检查,禁止out出参为常量报错。 |
## td_compatible_truncation
diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md b/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md
index bfeb8bdfaf31b40607fcfbaa128326ba7fd11974..abde9909bb0ccf3dea25fc9d7f85715a1b67a36f 100644
--- a/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md
+++ b/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md
@@ -123,9 +123,12 @@ gs_ctl参数可分为如下几类:
**表 7** query参数
-| 参数 | 参数说明 | 取值范围 |
-| :--- | :---------------------- | :------- |
-| -L | 查询lsn并展示最大长度。 | 无参数 |
+| 参数 | 参数说明 | 取值范围 |
+| :------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- |
+| -L | 查询lsn并展示最大长度。 | 无参数 |
+| -D /PATH/TO/DATADIR | 指定数据目录的位置,查询数据库状态,显示当前数据库的数据目录以及运行状态等信息。 | DATADIR的取值必须为有效的数据目录 |
+| -U USERNAME | 查询受密码保护的数据库集群,可以使用-U选项来指定用户名 | 取值范围:MogDB中存在的用户。
默认值:省略此参数则使用与当前操作系统用户同名的用户。 |
+| -P PASSWORD | 查询受密码保护的数据库集群,可以使用-P选项来指定密码,一般与-U配合使用 | - |
**表 8** member参数
diff --git a/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md b/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md
index 59176a7924495584f3c3c36366195930486739bd..122bc8d4966e4ec9893570dca2654c1c8f5943d3 100644
--- a/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md
+++ b/product/zh/docs-mogdb/v5.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md
@@ -43,26 +43,26 @@ gstrace [start|stop|config|dump|detailcodepath|analyze|analyze_sqltrace|dump_use
**表 1** gstrace参数说明
-| 参数 | 说明 |
-| :------------- | :----------------------------------------------------------- |
-| start | 开始记录trace。 |
-| stop | 停止trace,释放存储信息的共享内存trace buffer。注意:trace buffer中已捕获trace信息会丢失。 |
-| config | 显示trace的配置信息。 |
-| dump | 将共享内存中的trace信息写入指定文件。若没有启动trace将报错。 |
-| detail | 将dump出来的二进制文件解析成文本文件,显示trace点的线程、时间信息。 |
-| codepath | 提取dump文件中的函数调用信息,按照调用栈的方式显示。 |
-| analyze | 统计各个函数的执行次数、总耗时、平均耗时、最长耗时、最短耗时。 |
-| dump_lwlock | 表示导出轻量级锁数据信息,采用原始二进制格式。 |
-| analyze_lwlock | 表示分析并生成可阅读文件,采用文本可阅读格式。 |
-| -p PORT | 指定启动trace功能的实例侦听的端口号。 |
-| -f DUMP_FILE | 指定dump导出的trace文件。 |
-| -o OUTPUT_FILE | 指定写入的文件。 |
-| -q | 指定SQL追踪相关模块。 |
-| -sid | 指定一个或多个具体需要追踪的sessions的id(此处session ids可从pg_stat_activity表中获取)。多个session id 之间使用逗号分隔,最多可指定8个。-sid不能和-tid同时使用。 |
-| -tid | 指定一个或多个具体需要追踪的thread的id。多个thread id 之间使用逗号分隔,最多可指定8个。-tid不能和-sid同时使用。 |
-| -t STEP_SIZE | 指定分片分析的时间跨度(秒),可选。将生成单独的{OUTPUT_FILE}.step文件。 |
-| -m MASK | 指定哪些模块、函数需要追踪。参数不得为空。
格式: [,]*
描述:
- **** -> .
COMP_FUNC_PAIR 代表一组模块与函数组合。
- **COMP_NAME** 代表一个模块名。
- **** -> ALL\|[[&]*]
**FUNC_NAMES** 可由用户指定为ALL 或者一个及以上的函数名。由于FUNC_NAMES一定是与COMP_NAME组合,因此,ALL代表追踪以COMP_NAME为名的模块的所有函数;而如果用户指定的是一个及以上的函数名,则是追踪以COMP_NAME为名的模块中的这几个指定FUNC_NAME对应的函数名。
示例:
- **access.StartTransaction**: 追踪一个模块access中的函数StartTransaction。
- **executer.ExecutorStart&ExecInitExpr**: 追踪一个模块executer中的函数ExecutorStart和ExecInitExpr。
- **executer.ExecutorStart,tcop.PortalStart&PortalRun**: 追踪模块executer中的ExecutorStart函数和模块tcop中的函数 PortalStart和PortalRun。
- **executer.ALL,access.ALL**: 追踪模块executer和access中的所有函数。 |
-| -s BUFFER_SIZE | 指定用于trace功能的共享内存大小,默认为1G。如果指定的BUFFER_SIZE小于最小值2048,系统将自动调整为最小值。如果指定的BUFFER_SIZE不是2^N(二的N次方),则向下对齐2^N;例如:指定BUFFER_SIZE=3072,由于2^11<3072<2^12,系统将调整为2048。 |
+| 参数 | 说明 |
+| :---------------- | :----------------------------------------------------------- |
+| start | 开始记录trace。 |
+| stop | 停止trace,释放存储信息的共享内存trace buffer。注意:trace buffer中已捕获trace信息会丢失。 |
+| config | 显示trace的配置信息。 |
+| dump | 将共享内存中的trace信息写入指定文件。若没有启动trace将报错。 |
+| detail | 将dump出来的二进制文件解析成文本文件,显示trace点的线程、时间信息。 |
+| codepath | 提取dump文件中的函数调用信息,按照调用栈的方式显示。 |
+| analyze | 统计各个函数的执行次数、总耗时、平均耗时、最长耗时、最短耗时。 |
+| dump_lwlock | 表示导出轻量级锁数据信息,采用原始二进制格式。 |
+| analyze_lwlock | 表示分析并生成可阅读文件,采用文本可阅读格式。 |
+| -p PORT | 指定启动trace功能的实例侦听的端口号。 |
+| -f DUMP_FILE | 指定dump导出的trace文件。 |
+| -o OUTPUT_FILE | 指定写入的文件。 |
+| -q COMP_FUNC_PAIR | 指定哪些模块、函数需要追踪。参数不得为空。
使用语法格式及描述:
-> [,]\*
- COMP\_FUNC_PAIRS由一组及以上的模块与函数组合组成
-> .
- COMP_FUNC_PAIR代表一组模块与函数组合
- COMP\_NAME 代表一个模块名
-> ALL\|[[&]*]
\- FUNC_NAMES 可由用户指定为ALL 或者一个及以上的函数名。由于FUNC_NAMES一定是与COMP_NAME组合,因此,ALL代表追踪以COMP_NAME为名的模块的所有函数;而如果用户指定的是一个及以上的函数名,则是追踪以COMP_NAME为名的模块中的这几个指定FUNC_NAME对应的函数名
\- FUNC_NAME 代表一个函数
示例:
\- “access.StartTransaction”:追踪一个模块及一个对应函数
\- “executer.ExecutorStart&ExecInitExpr”: 追踪一个模块及多个对应函数
\- “executer.ExecutorStart,tcop.PortalStart&PortalRun”: 追踪多个模块及多个对应函数
\- “executer.ALL,access.ALL”:使用ALL关键字追踪所有executor和access两个模块中的全部函数
注意:如果需要追踪所有模块及函数,不使用-q参数即可。举例:gstrace start -p 8000 |
+| -sid | 指定一个或多个具体需要追踪的sessions的id(此处session ids可从pg_stat_activity表中获取)。多个session id 之间使用逗号分隔,最多可指定8个。-sid不能和-tid同时使用。 |
+| -tid | 指定一个或多个具体需要追踪的thread的id。多个thread id 之间使用逗号分隔,最多可指定8个。-tid不能和-sid同时使用。 |
+| -t STEP_SIZE | 指定分片分析的时间跨度(秒),可选。将生成单独的{OUTPUT_FILE}.step文件。 |
+| -m MASK | 指定哪些模块、函数需要追踪,如果参数为空,则追踪添加trace接口的所有模块的所有函数。
格式:[comp…][ALL].[func…][ALL]
描述:
- comp 是模块列表,使用‘,’分隔,例如:executer,mogdb。也可以使用序号,例如:executer,2。
- func 是function列表,使用‘,’ 分隔。 例如:sql_execute_ddl, sql_execute_dcl。也可以使用序号指代模块中第几个function,例如:2。
- 设置成ALL表示所有模块或所有function被trace。
示例:
- executer,mogdb.ALL :所有定义定义在executer和mogdb模块下的function被trace。
- executer,mogdb.sql_execute_ddl :定义在executer 下的Function sql_execute_ddl被trace. mogdb模块被忽略,因为下面没有该function 。
- executer,mogdb.1 :定义在模块executer和mogdb下的第一个function被trace。
ALL.1,2 :定义在所有模块下的第一,二个function被trace。 |
+| -s BUFFER_SIZE | 指定用于trace功能的共享内存大小,默认为1G。如果指定的BUFFER_SIZE小于最小值2048,系统将自动调整为最小值。如果指定的BUFFER_SIZE不是2^N^(二的N次方),则向下对齐2^N^;例如:指定BUFFER_SIZE=3072,由于2^11^<3072<2^12^,系统将调整为2048。 |
## 示例
diff --git a/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md b/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md
index baff33aae2ff1c4b42570c11f800a0ed6b94cc9f..08e8b276597123c3355a842fd2b96e21e7f24fc5 100644
--- a/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md
+++ b/product/zh/docs-mogdb/v6.0/characteristic-description/high-performance/enhancement-of-wal-redo-performance.md
@@ -25,11 +25,11 @@ MogDB提升了WAL日志回放功能。
目前备库回放性能不佳,导致故障转移时间过长,或者在主备切换演练时切换操作时间过长。一方面会导致数据库长时间无法提供服务,从而导致用户业务长时间停止;另一方面,这会导致备库数据相较主库数据延迟过长的时间,致使备库WAL文件堆积占用磁盘空间。
-MogDB提供并行回放机制,使得在回放过程中多个线程同时工作。本特性主要对表级别并行回放进行优化,并提供回放性能观测视图,查看回放状态。具体优化点如下:
+MogDB提供并行回放机制,使得在回放过程中多个线程同时工作(需设置[recovery_max_workers](../../reference-guide/guc-parameters/write-ahead-log/log-replay.md#recovery_max_workers) = 4)。本特性主要对表级别并行回放进行优化,并提供回放性能观测视图,查看回放状态。具体优化点如下:
- 增加starup线程移交WAL日志的批次,减小WAL记录流转导致的性能下降。
- 更改表分发策略,使redo任务更均衡的分发到各个工作线程。
-- 观测视图:可查看redo过程各个阶段的耗时和各种WAL回放状态。
+- 观测视图:可查看redo过程各个阶段的耗时和各种WAL回放状态(仅在备机上有有效数据)。
## 相关页面
diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md b/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md
index 59bd2ff2ff0c85f29fa6f62f480484635e5b335c..6d9193397571483f18b795eaf5201d37a492ff68 100644
--- a/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md
+++ b/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/date-and-time-processing-functions-and-operators.md
@@ -684,7 +684,7 @@ date: 2021-04-20
- TZ_OFFSET(var)
- 描述:返回入参地址的时区偏移量。
+ 描述:返回入参地址的时区偏移量。(需安装[compat-tools](../../about-mogdb/open-source-components/compat-tools.md)或[whale插件](../../developer-guide/extension/whale.md))
返回值类型:interval
diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md b/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md
index 3a90ceba3756843f271321ef61c6667ed756d12d..85338bd8953f9bb157e9ea9f1ab25a4bd3a7a8ea 100644
--- a/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md
+++ b/product/zh/docs-mogdb/v6.0/reference-guide/functions-and-operators/statistics-information-functions/statistics-information-functions-3.md
@@ -404,22 +404,22 @@ date: 2021-04-20
- gs_session_memory
-描述:统计Session级别的内存使用情况,包含执行作业在数据节点上Postgres线程和Stream线程分配的所有内存。
+ 描述:统计Session级别的内存使用情况,包含执行作业在数据节点上Postgres线程和Stream线程分配的所有内存。
->  **说明**:
->
-> 若GUC参数enable_memory_limit=off,该函数不能使用。
+ >  **说明**:
+ >
+ > 若GUC参数enable_memory_limit=off,该函数不能使用。
-返回值类型:record
+ 返回值类型:record
-**表 8** 返回值说明
+ **表 8** 返回值说明
-| 名称 | 类型 | 描述 |
-| :------- | :------ | :------------------------------------------------- |
-| sessid | text | 线程启动时间+线程标识。 |
-| init_mem | integer | 当前正在执行作业进入执行器前已分配的内存,单位MB。 |
-| used_mem | integer | 当前正在执行作业已分配的内存,单位MB。 |
-| peak_mem | integer | 当前正在执行作业已分配的内存峰值,单位MB。 |
+ | 名称 | 类型 | 描述 |
+ | :------- | :------ | :------------------------------------------------- |
+ | sessid | text | 线程启动时间+线程标识。 |
+ | init_mem | integer | 当前正在执行作业进入执行器前已分配的内存,单位MB。 |
+ | used_mem | integer | 当前正在执行作业已分配的内存,单位MB。 |
+ | peak_mem | integer | 当前正在执行作业已分配的内存峰值,单位MB。 |
- gs_wlm_persistent_user_resource_info()
@@ -435,28 +435,28 @@ date: 2021-04-20
- GS_ALL_NODEGROUP_CONTROL_GROUP_INFO(text)
-描述:提供了所有逻辑数据库实例的控制组信息。该函数在调用的时候需要指定要查询逻辑数据库实例的名称。例如要查询'InstallationGuide'逻辑数据库实例的控制组信息:
+ 描述:提供了所有逻辑数据库实例的控制组信息。该函数在调用的时候需要指定要查询逻辑数据库实例的名称。例如要查询'InstallationGuide'逻辑数据库实例的控制组信息:
-```sql
-SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
-```
+ ```sql
+ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
+ ```
-返回值类型:record
+ 返回值类型:record
-函数返回字段如下:
+ 函数返回字段如下:
-| 名称 | 类型 | 描述 |
-| :------- | :----- | :---------------------------- |
-| name | text | 控制组的名称。 |
-| type | text | 控制组的类型。 |
-| gid | bigint | 控制组ID。 |
-| classgid | bigint | Workload所属Class的控制组ID。 |
-| class | text | Class控制组。 |
-| workload | text | Workload控制组。 |
-| shares | bigint | 控制组分配的CPU资源配额。 |
-| limits | bigint | 控制组分配的CPU资源限额。 |
-| wdlevel | bigint | Workload控制组层级。 |
-| cpucores | text | 控制组使用的CPU核的信息。 |
+ | 名称 | 类型 | 描述 |
+ | :------- | :----- | :---------------------------- |
+ | name | text | 控制组的名称。 |
+ | type | text | 控制组的类型。 |
+ | gid | bigint | 控制组ID。 |
+ | classgid | bigint | Workload所属Class的控制组ID。 |
+ | class | text | Class控制组。 |
+ | workload | text | Workload控制组。 |
+ | shares | bigint | 控制组分配的CPU资源配额。 |
+ | limits | bigint | 控制组分配的CPU资源限额。 |
+ | wdlevel | bigint | Workload控制组层级。 |
+ | cpucores | text | 控制组使用的CPU核的信息。 |
- gs_total_nodegroup_memory_detail
@@ -496,7 +496,7 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
- redo_stat_detail()
- 描述:用于查询在最近一段时间内,备库接受wal、flush wal、apply wal的速度。用户可以通过这个视图对备机的wal处理能力有一个直观的认知。
+ 描述:用于查询在最近一段时间内,备库接受wal、flush wal、apply wal的速度。用户可以通过这个视图对备机的wal处理能力有一个直观的认知(仅在备机上有有效数据)。
| 线程名 | 描述 |
| ----------- | ----------------------------------------- |
@@ -511,7 +511,7 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
- redo_time_detail()
- 描述:用于在客户现场出现redo慢问题时,为分析redo问题提供数据依据。
+ 描述:用于在客户现场出现redo慢问题时,为分析redo问题提供数据依据(仅在备机上有有效数据)。
| Thread_name | 线程名 |
| ----------- | ------------------------------------------------------------ |
@@ -537,7 +537,7 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
- dispatch_stat_detail()
- 描述:用于查询各个worker线程的redo负载, 以此判断各个redo worker的负载是否均衡。
+ 描述:用于查询各个worker线程的redo负载, 以此判断各个redo worker的负载是否均衡(仅在备机上有有效数据)。
| thread_name | 线程名 |
| ------------- | ------------------------------------------------------------ |
@@ -601,7 +601,7 @@ SELECT * FROM GS_ALL_NODEGROUP_CONTROL_GROUP_INFO('InstallationGuide')
示例:
- ```
+ ```sql
MogDB=# SELECT gs_stack(139663481165568);
gs_stack
--------------------------------------------------------------------
diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/thread-pool.md b/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/thread-pool.md
index f2757669b69ec0d396b2bf19974c162aea328c4d..61bca6c8fab45e44dde00ff5c17618f58fe55e48 100644
--- a/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/thread-pool.md
+++ b/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/thread-pool.md
@@ -16,7 +16,7 @@ date: 2021-06-07
- on表示开启线程池功能。
- off表示不开启线程池功能。
-说明: 在开启线程池下,应用程序连接数据库需要使用HA端口。
+说明: 在开启线程池下,逻辑复制连接数据库需要使用HA端口。
**默认值**:off
diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md b/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md
index a5795a031a6dc5a71916f89a1b2560b22f3b227e..a0faf4131bd61456683911fd38de0006162db15b 100644
--- a/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md
+++ b/product/zh/docs-mogdb/v6.0/reference-guide/guc-parameters/version-and-platform-compatibility/platform-and-client-compatibility.md
@@ -447,8 +447,8 @@ date: 2021-04-20
| **兼容性配置项** | **兼容性行为控制** |
| :--------------- | :----------------------------------------------------------- |
-| for_loop | 控制存储过程中FOR_LOOP查询语句行为设置此项时,在FOR rec IN query LOOP语句中,若rec已经定义,不会复用已经定义的rec变量,而且重新建立一个新的变量。否则,会复用已经定义的rec变量,不会建立新的变量。(与proc_implicit_for_loop_variable相同,后续进性收编) |
-| outparam | out重载条件下,有重载函数;将对out出参常量进性检查,禁止out出参为常量报错。 |
+| for_loop | 控制存储过程中FOR_LOOP查询语句行为设置此项时,在FOR rec IN query LOOP语句中,若rec已经定义,不会复用已经定义的rec变量,而且重新建立一个新的变量。否则,会复用已经定义的rec变量,不会建立新的变量。(与proc_implicit_for_loop_variable相同,后续进行收编) |
+| outparam | out重载条件下,有重载函数;将对out出参常量进行检查,禁止out出参为常量报错。 |
## plpgsql.variable_conflict
diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md b/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md
index d3bd059b0e44f9793392f1a78a009919efc423af..559fb993d3327b3f5cc0e261bb2dc62b9fd5aeee 100644
--- a/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md
+++ b/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gs_ctl.md
@@ -115,9 +115,12 @@ gs_ctl参数可分为如下几类:
**表 7** query参数
-| 参数 | 参数说明 | 取值范围 |
-| :--- | :---------------------- | :------- |
-| -L | 查询lsn并展示最大长度。 | 无参数 |
+| 参数 | 参数说明 | 取值范围 |
+| :------------------ | :----------------------------------------------------------- | :----------------------------------------------------------- |
+| -L | 查询lsn并展示最大长度。 | 无参数 |
+| -D /PATH/TO/DATADIR | 指定数据目录的位置,查询数据库状态,显示当前数据库的数据目录以及运行状态等信息。 | DATADIR的取值必须为有效的数据目录 |
+| -U USERNAME | 查询受密码保护的数据库集群,可以使用-U选项来指定用户名 | 取值范围:MogDB中存在的用户。
默认值:省略此参数则使用与当前操作系统用户同名的用户。 |
+| -P PASSWORD | 查询受密码保护的数据库集群,可以使用-P选项来指定密码,一般与-U配合使用 | - |
**表 8** member参数
diff --git a/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md b/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md
index 59176a7924495584f3c3c36366195930486739bd..122bc8d4966e4ec9893570dca2654c1c8f5943d3 100644
--- a/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md
+++ b/product/zh/docs-mogdb/v6.0/reference-guide/tool-reference/tools-used-in-the-internal-system/gstrace.md
@@ -43,26 +43,26 @@ gstrace [start|stop|config|dump|detailcodepath|analyze|analyze_sqltrace|dump_use
**表 1** gstrace参数说明
-| 参数 | 说明 |
-| :------------- | :----------------------------------------------------------- |
-| start | 开始记录trace。 |
-| stop | 停止trace,释放存储信息的共享内存trace buffer。注意:trace buffer中已捕获trace信息会丢失。 |
-| config | 显示trace的配置信息。 |
-| dump | 将共享内存中的trace信息写入指定文件。若没有启动trace将报错。 |
-| detail | 将dump出来的二进制文件解析成文本文件,显示trace点的线程、时间信息。 |
-| codepath | 提取dump文件中的函数调用信息,按照调用栈的方式显示。 |
-| analyze | 统计各个函数的执行次数、总耗时、平均耗时、最长耗时、最短耗时。 |
-| dump_lwlock | 表示导出轻量级锁数据信息,采用原始二进制格式。 |
-| analyze_lwlock | 表示分析并生成可阅读文件,采用文本可阅读格式。 |
-| -p PORT | 指定启动trace功能的实例侦听的端口号。 |
-| -f DUMP_FILE | 指定dump导出的trace文件。 |
-| -o OUTPUT_FILE | 指定写入的文件。 |
-| -q | 指定SQL追踪相关模块。 |
-| -sid | 指定一个或多个具体需要追踪的sessions的id(此处session ids可从pg_stat_activity表中获取)。多个session id 之间使用逗号分隔,最多可指定8个。-sid不能和-tid同时使用。 |
-| -tid | 指定一个或多个具体需要追踪的thread的id。多个thread id 之间使用逗号分隔,最多可指定8个。-tid不能和-sid同时使用。 |
-| -t STEP_SIZE | 指定分片分析的时间跨度(秒),可选。将生成单独的{OUTPUT_FILE}.step文件。 |
-| -m MASK | 指定哪些模块、函数需要追踪。参数不得为空。
格式: [,]*
描述:
- **** -> .
COMP_FUNC_PAIR 代表一组模块与函数组合。
- **COMP_NAME** 代表一个模块名。
- **** -> ALL\|[[&]*]
**FUNC_NAMES** 可由用户指定为ALL 或者一个及以上的函数名。由于FUNC_NAMES一定是与COMP_NAME组合,因此,ALL代表追踪以COMP_NAME为名的模块的所有函数;而如果用户指定的是一个及以上的函数名,则是追踪以COMP_NAME为名的模块中的这几个指定FUNC_NAME对应的函数名。
示例:
- **access.StartTransaction**: 追踪一个模块access中的函数StartTransaction。
- **executer.ExecutorStart&ExecInitExpr**: 追踪一个模块executer中的函数ExecutorStart和ExecInitExpr。
- **executer.ExecutorStart,tcop.PortalStart&PortalRun**: 追踪模块executer中的ExecutorStart函数和模块tcop中的函数 PortalStart和PortalRun。
- **executer.ALL,access.ALL**: 追踪模块executer和access中的所有函数。 |
-| -s BUFFER_SIZE | 指定用于trace功能的共享内存大小,默认为1G。如果指定的BUFFER_SIZE小于最小值2048,系统将自动调整为最小值。如果指定的BUFFER_SIZE不是2^N(二的N次方),则向下对齐2^N;例如:指定BUFFER_SIZE=3072,由于2^11<3072<2^12,系统将调整为2048。 |
+| 参数 | 说明 |
+| :---------------- | :----------------------------------------------------------- |
+| start | 开始记录trace。 |
+| stop | 停止trace,释放存储信息的共享内存trace buffer。注意:trace buffer中已捕获trace信息会丢失。 |
+| config | 显示trace的配置信息。 |
+| dump | 将共享内存中的trace信息写入指定文件。若没有启动trace将报错。 |
+| detail | 将dump出来的二进制文件解析成文本文件,显示trace点的线程、时间信息。 |
+| codepath | 提取dump文件中的函数调用信息,按照调用栈的方式显示。 |
+| analyze | 统计各个函数的执行次数、总耗时、平均耗时、最长耗时、最短耗时。 |
+| dump_lwlock | 表示导出轻量级锁数据信息,采用原始二进制格式。 |
+| analyze_lwlock | 表示分析并生成可阅读文件,采用文本可阅读格式。 |
+| -p PORT | 指定启动trace功能的实例侦听的端口号。 |
+| -f DUMP_FILE | 指定dump导出的trace文件。 |
+| -o OUTPUT_FILE | 指定写入的文件。 |
+| -q COMP_FUNC_PAIR | 指定哪些模块、函数需要追踪。参数不得为空。
使用语法格式及描述:
-> [,]\*
- COMP\_FUNC_PAIRS由一组及以上的模块与函数组合组成
-> .
- COMP_FUNC_PAIR代表一组模块与函数组合
- COMP\_NAME 代表一个模块名
-> ALL\|[[&]*]
\- FUNC_NAMES 可由用户指定为ALL 或者一个及以上的函数名。由于FUNC_NAMES一定是与COMP_NAME组合,因此,ALL代表追踪以COMP_NAME为名的模块的所有函数;而如果用户指定的是一个及以上的函数名,则是追踪以COMP_NAME为名的模块中的这几个指定FUNC_NAME对应的函数名
\- FUNC_NAME 代表一个函数
示例:
\- “access.StartTransaction”:追踪一个模块及一个对应函数
\- “executer.ExecutorStart&ExecInitExpr”: 追踪一个模块及多个对应函数
\- “executer.ExecutorStart,tcop.PortalStart&PortalRun”: 追踪多个模块及多个对应函数
\- “executer.ALL,access.ALL”:使用ALL关键字追踪所有executor和access两个模块中的全部函数
注意:如果需要追踪所有模块及函数,不使用-q参数即可。举例:gstrace start -p 8000 |
+| -sid | 指定一个或多个具体需要追踪的sessions的id(此处session ids可从pg_stat_activity表中获取)。多个session id 之间使用逗号分隔,最多可指定8个。-sid不能和-tid同时使用。 |
+| -tid | 指定一个或多个具体需要追踪的thread的id。多个thread id 之间使用逗号分隔,最多可指定8个。-tid不能和-sid同时使用。 |
+| -t STEP_SIZE | 指定分片分析的时间跨度(秒),可选。将生成单独的{OUTPUT_FILE}.step文件。 |
+| -m MASK | 指定哪些模块、函数需要追踪,如果参数为空,则追踪添加trace接口的所有模块的所有函数。
格式:[comp…][ALL].[func…][ALL]
描述:
- comp 是模块列表,使用‘,’分隔,例如:executer,mogdb。也可以使用序号,例如:executer,2。
- func 是function列表,使用‘,’ 分隔。 例如:sql_execute_ddl, sql_execute_dcl。也可以使用序号指代模块中第几个function,例如:2。
- 设置成ALL表示所有模块或所有function被trace。
示例:
- executer,mogdb.ALL :所有定义定义在executer和mogdb模块下的function被trace。
- executer,mogdb.sql_execute_ddl :定义在executer 下的Function sql_execute_ddl被trace. mogdb模块被忽略,因为下面没有该function 。
- executer,mogdb.1 :定义在模块executer和mogdb下的第一个function被trace。
ALL.1,2 :定义在所有模块下的第一,二个function被trace。 |
+| -s BUFFER_SIZE | 指定用于trace功能的共享内存大小,默认为1G。如果指定的BUFFER_SIZE小于最小值2048,系统将自动调整为最小值。如果指定的BUFFER_SIZE不是2^N^(二的N次方),则向下对齐2^N^;例如:指定BUFFER_SIZE=3072,由于2^11^<3072<2^12^,系统将调整为2048。 |
## 示例