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线程分配的所有内存。 -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明**: -> -> 若GUC参数enable_memory_limit=off,该函数不能使用。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明**: + > + > 若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线程分配的所有内存。 -> ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明**: -> -> 若GUC参数enable_memory_limit=off,该函数不能使用。 + > ![img](https://cdn-mogdb.enmotech.com/docs-media/icon/icon-note.gif) **说明**: + > + > 若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。 | ## 示例