You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by yi...@apache.org on 2024/02/28 05:09:20 UTC

(doris) 14/22: [fix](docs)Correcting spelling errors,add isolated file to siderbars. (#31409)

This is an automated email from the ASF dual-hosted git repository.

yiguolei pushed a commit to branch branch-2.1
in repository https://gitbox.apache.org/repos/asf/doris.git

commit c5e6e3d45fcf42b184e23a5670b2da7af986c791
Author: mq松鼠 <88...@users.noreply.github.com>
AuthorDate: Wed Feb 28 10:34:28 2024 +0800

    [fix](docs)Correcting spelling errors,add isolated file to siderbars. (#31409)
    
    Correcting spelling errors,add isolated file to siderbars
---
 docs/en/community/developer-guide/minidump.md      | 177 --------------------
 .../{bitshfitleft.md => bitshiftleft.md}           |   0
 .../{bitshfitright.md => bitshiftright.md}         |   0
 ...=> SHOW-CONVERT-LIGHT-SCHEMA-CHANGE-PROCESS.md} |   0
 docs/sidebars.json                                 |  35 +++-
 docs/zh-CN/community/developer-guide/minidump.md   | 185 ---------------------
 6 files changed, 28 insertions(+), 369 deletions(-)

diff --git a/docs/en/community/developer-guide/minidump.md b/docs/en/community/developer-guide/minidump.md
deleted file mode 100644
index 1203b753a20..00000000000
--- a/docs/en/community/developer-guide/minidump.md
+++ /dev/null
@@ -1,177 +0,0 @@
----
-{
-    "title": "Minidump",
-    "language": "en"
-}
----
-
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-# Minidump(removed)
-
-> Minidump has been removed, it's useless in real online environment and instead introduces additional bugs
-
-Minidump is a file format defined by Microsoft for reporting errors after program crashes. It includes thread information, register information, call stack information, etc. at the time of the crash, which helps developers quickly locate the problem.
-
-Unlike [Coredump](https://en.wikipedia.org/wiki/Core_dump), Minidump files are smaller and easier to report and network transmission. Coredump file will contain a complete memory image, so the volume may be dozens or hundreds of GB. The Minidump file only contains the call stack and register information of the key thread, so the size is usually only MB level.
-
-[Breakpad](https://github.com/google/breakpad) is a cross-platform crash dump and analysis framework and tool collection. Users can use Breakpad to conduct self-service analysis of Minidump files. You can also collect Minidump files and report them to Doris cluster operation and maintenance or developers.
-
-## How to enable Minidump
-
-Minidump function is a function introduced in Doris 0.15.0 or later. This function is controlled by the following configuration files of BE:
-
-* `disable_minidump`
-
-    Whether to enable Minidump function. The default is false, which means it is turned on.
-    
-* `minidump_dir`
-
-    The storage directory of the Minidump file. The default is `${DORIS_HOME}/Minidump/`
-    
-* `max_minidump_file_size_mb`
-
-    Minidump file size limit. The default is 200MB. If the size exceeds the threshold, breakpad will try to reduce the information recorded in the file, such as the number of threads and the number of registers to introduce the Minidump file size. But this is only an expected value, and the actual file size may be larger than the set value.
-    
-* `max_minidump_file_number`
-
-    The maximum number of Minidump files to keep. The default is 10, which means that the most recent 10 files are kept.
-    
-## How to generate Minidump
-
-There are two ways to generate Minidump:
-
-1. The program crashes
-
-    When the program encounters a problem and crashes, it will automatically generate a Minidump file. The following information will appear in be.out at this time:
-    
-    ```
-    Minidump created at: /doris/be/Minidump/4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp
-    *** Aborted at 1636970042 (unix time) try "date -d @1636970042" if you are using GNU date ***
-    PC: @ 0x1b184e4 doris::OlapScanNode::scanner_thread()
-    *** SIGSEGV (@0x0) received by PID 71567 (TID 0x7f173a5df700) from PID 0; stack trace: ***
-    @ 0x220c992 google::(anonymous namespace)::FailureSignalHandler()
-    @ 0x7f174fb5e1d0 (unknown)
-    @ 0x1b184e4 doris::OlapScanNode::scanner_thread()
-    @ 0x15a19af doris::PriorityThreadPool::work_thread()
-    @ 0x21d9107 thread_proxy
-    @ 0x7f174fb53f84 start_thread
-    @ 0x7f174f943ddf __GI___clone
-    @ 0x0 (unknown)
-    ```
-    
-    Among them, `/doris/be/Minidump/4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp` is the Minidump file. And the following stack is the call stack information where the program crashed.
-    
-2. Manual trigger
-
-    The user can actively send the SIGUSR1 signal to the BE process to trigger Minidump. For example, use the following command:
-    
-    ```
-    kill -s SIGUSR1 71567
-    ```
-    
-    71567 is the process id (pid) of BE. After that, the following information will appear in be.out:
-    
-    ```
-    Receive signal: SIGUSR1
-    Minidump created at: /doris/be/Minidump/1af8fe8f-3d5b-40ea-6b76ad8f-0cf6756f.dmp
-    ```
-
-    Among them, `Receive signal: SIGUSR1` means that this is a Minidump operation triggered by the user. Following is the location of the Minidump file.
-    
-    The Minidump operation manually triggered by the user will not kill the BE process and will not generate an error stack in be.out.
-    
-## How to analyze Minidump
-
-We can use various tools provided by breakpad to analyze Minidump to see the cause of the error.
-
-### Get the breakpad tool
-
-Users can go to [Breakpad](https://github.com/google/breakpad) code base to download and compile breakpad. For the compilation method, please refer to the `build_breakpad()` method in [thirdparty/vars.sh](https://github.com/apache/incubator-doris/blob/master/thirdparty/vars.sh) in the Doris source code library.
-
-You can also find various tools compiled by breakpad from the `/var/local/thirdparty/installed/bin` directory of the image container in the version 1.4.2 and above of the Docker compiled image provided by Doris.
-
-### Analyze Minidump
-
-We can use the following two methods to analyze Minidump files.
-
-1. Dump into coredump file
-
-    Use the `minidump-2-core` tool provided by breakpad to dump the Minidump file into a coredump file:
-    
-    ```
-    ./minidump-2-core /doris/be/Minidump/1af8fe8f-3d5b-40ea-6b76ad8f-0cf6756f.dmp> 1.coredump
-    ```
-    
-    Then we can use the gdb tool to analyze the coredump file:
-    
-    ```
-    gdb lib/doris_be -c 1.coredump
-    ```
-
-2. Generate a readable call stack
-
-    The Minidump file only contains the address of the call stack, and we need to map these addresses to the actual function file location. Therefore, we first need to generate the symbol table `doris_be.sym` of the BE binary file through `dump_syms`:
-    
-    ```
-    ./dump_syms ./lib/doris_be> doris_be.sym
-    ```
-
-    Next, we need the information in the first row of the symbol table to build a corresponding symbol table directory.
-    
-    ```
-    head -n1 doris_be.sym
-    ```
-    
-    The above command will print the first line of doris_be.sym as follows:
-    
-    ```
-    MODULE Linux x86_64 137706CC745F5EC3EABBF730D4B229370 doris_be
-    ```
-    
-    Then we create a directory structure:
-    
-    ```
-    mkdir -p ./symbols/doris_be/137706CC745F5EC3EABBF730D4B229370
-    ```
-    
-    The `doris_be` and `137706CC745F5EC3EABBF730D4B229370` in the directory path must be consistent with the first line of the doris_be.sym file. Then we move the doris_be.sym file to this directory:
-    
-    ```
-    cp doris_be.sym ./symbols/doris_be/137706CC745F5EC3EABBF730D4B229370
-    ```
-    
-    Finally, we can use `minidump_stackwalk` to produce readable call stack information:
-    
-    ```
-    minidump_stackwalk 4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp ./symbols/> readable.stack
-    ```
-    
-    Among them, `4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp` is a minidump file. `./symbols/` is the previously created directory containing doris_be.sym. `readable.stack` redirects the generated results to this file. At the same time, when this command is executed, some program running logs will be flashed on the screen, so you can ignore it.
-    
-    At this point, we have obtained a readable thread call stack file: readable.stack. It contains the call stack information of all threads when the BE program is writing the Minidump file, and the corresponding register information. Among them, `Crash reason` explains why the program crashed. If it is `DUMP_REQUESTED`, it means that this is a Minidump triggered by the user.
-    
-     We can filter out the register information with the following command to get a clear view of the call stack:
-    
-     ```
-     grep -v = readable.stack |grep -v "Found by" |vi-
-     ```
-    
-     The result is similar to the thread call stack information obtained through the pstack command.
diff --git a/docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshfitleft.md b/docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshiftleft.md
similarity index 100%
rename from docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshfitleft.md
rename to docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshiftleft.md
diff --git a/docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshfitright.md b/docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshiftright.md
similarity index 100%
rename from docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshfitright.md
rename to docs/en/docs/sql-manual/sql-functions/bitwise-functions/bitshiftright.md
diff --git a/docs/en/docs/sql-manual/sql-reference/Show-Statements/SHOW-CONVERT-LIGHR-SCHEMA-CHANGE-PROCESS.md b/docs/en/docs/sql-manual/sql-reference/Show-Statements/SHOW-CONVERT-LIGHT-SCHEMA-CHANGE-PROCESS.md
similarity index 100%
rename from docs/en/docs/sql-manual/sql-reference/Show-Statements/SHOW-CONVERT-LIGHR-SCHEMA-CHANGE-PROCESS.md
rename to docs/en/docs/sql-manual/sql-reference/Show-Statements/SHOW-CONVERT-LIGHT-SCHEMA-CHANGE-PROCESS.md
diff --git a/docs/sidebars.json b/docs/sidebars.json
index 8c749b25ece..0f421b936e1 100644
--- a/docs/sidebars.json
+++ b/docs/sidebars.json
@@ -95,6 +95,7 @@
                             "type": "category",
                             "label": "Import Way",
                             "items": [
+                                "data-operate/import/import-way/binlog-load-manual",
                                 "data-operate/import/import-way/broker-load-manual",
                                 "data-operate/import/import-way/routine-load-manual",
                                 "data-operate/import/import-way/spark-load-manual",
@@ -183,13 +184,15 @@
                 "advanced/orthogonal-bitmap-manual",
                 "advanced/using-hll",
                 "advanced/variables",
+                "advanced/variables-template",
                 "advanced/time-zone",
                 "advanced/sql-mode",
                 "advanced/small-file-mgr",
                 "advanced/cold-hot-separation",
                 "advanced/is-being-synced",
                 "advanced/lateral-view",
-                "advanced/auto-increment"
+                "advanced/auto-increment",
+                "advanced/is-being-synced"
             ]
         },
         {
@@ -354,6 +357,7 @@
                                 "sql-manual/sql-functions/array-functions/array-last",
                                 "sql-manual/sql-functions/array-functions/arrays-overlap",
                                 "sql-manual/sql-functions/array-functions/array-count",
+                                "sql-manual/sql-functions/array-functions/array-apply",
                                 "sql-manual/sql-functions/array-functions/countequal",
                                 "sql-manual/sql-functions/array-functions/element-at",
                                 "sql-manual/sql-functions/array-functions/sequence"
@@ -408,6 +412,9 @@
                                 "sql-manual/sql-functions/date-time-functions/date-trunc",
                                 "sql-manual/sql-functions/date-time-functions/date-format",
                                 "sql-manual/sql-functions/date-time-functions/datediff",
+                                "sql-manual/sql-functions/date-time-functions/date_floor",
+                                "sql-manual/sql-functions/date-time-functions/date_ceil",
+                                "sql-manual/sql-functions/date-time-functions/microsecond",
                                 "sql-manual/sql-functions/date-time-functions/microseconds-add",
                                 "sql-manual/sql-functions/date-time-functions/microseconds-diff",
                                 "sql-manual/sql-functions/date-time-functions/microseconds-sub",
@@ -656,6 +663,8 @@
                                 "sql-manual/sql-functions/bitmap-functions/orthogonal-bitmap-expr-calculate",
                                 "sql-manual/sql-functions/bitmap-functions/orthogonal-bitmap-expr-calculate-count",
                                 "sql-manual/sql-functions/bitmap-functions/bitmap-hash64",
+                                "sql-manual/sql-functions/bitmap-functions/bitmap-from-base64",
+                                "sql-manual/sql-functions/bitmap-functions/bitmap-to-base64",
                                 "sql-manual/sql-functions/bitmap-functions/bitmap-remove"
                             ]
                         },
@@ -666,7 +675,10 @@
                                 "sql-manual/sql-functions/bitwise-functions/bitand",
                                 "sql-manual/sql-functions/bitwise-functions/bitor",
                                 "sql-manual/sql-functions/bitwise-functions/bitxor",
-                                "sql-manual/sql-functions/bitwise-functions/bitnot"
+                                "sql-manual/sql-functions/bitwise-functions/bitnot",
+                                "sql-manual/sql-functions/bitwise-functions/bitcount",
+                                "sql-manual/sql-functions/bitwise-functions/bitshiftleft",
+                                "sql-manual/sql-functions/bitwise-functions/bitshiftright"
                             ]
                         },
                         {
@@ -765,7 +777,8 @@
                                 "sql-manual/sql-functions/numeric-functions/least",
                                 "sql-manual/sql-functions/numeric-functions/random",
                                 "sql-manual/sql-functions/numeric-functions/mod",
-                                "sql-manual/sql-functions/numeric-functions/running-difference"
+                                "sql-manual/sql-functions/numeric-functions/running-difference",
+                                "sql-manual/sql-functions/numeric-functions/uuid_numeric"
                             ]
                         },
                         {
@@ -789,6 +802,7 @@
                                 "sql-manual/sql-functions/table-functions/explode-json-array",
                                 "sql-manual/sql-functions/table-functions/explode",
                                 "sql-manual/sql-functions/table-functions/explode-split",
+                                "sql-manual/sql-functions/table-functions/explode_map",
                                 "sql-manual/sql-functions/table-functions/explode-bitmap",
                                 "sql-manual/sql-functions/table-functions/numbers",
                                 "sql-manual/sql-functions/table-functions/explode-numbers",
@@ -803,10 +817,10 @@
                                 "sql-manual/sql-functions/table-functions/catalogs",
                                 "sql-manual/sql-functions/table-functions/frontends_disks",
                                 "sql-manual/sql-functions/table-functions/active_queries",
+                                "sql-manual/sql-functions/table-functions/job",
                                 "sql-manual/sql-functions/table-functions/jobs",
                                 "sql-manual/sql-functions/table-functions/mv_infos",
-                                "sql-manual/sql-functions/table-functions/tasks",
-                                "sql-manual/sql-functions/table-functions/job"
+                                "sql-manual/sql-functions/table-functions/tasks"
                             ]
                         },
                         {
@@ -1084,7 +1098,8 @@
                                         "sql-manual/sql-reference/Data-Manipulation-Statements/Load/RESUME-SYNC-JOB",
                                         "sql-manual/sql-reference/Data-Manipulation-Statements/Load/STOP-SYNC-JOB",
                                         "sql-manual/sql-reference/Data-Manipulation-Statements/Load/CANCEL-LOAD",
-                                        "sql-manual/sql-reference/Data-Manipulation-Statements/Load/CLEAN-LABEL"
+                                        "sql-manual/sql-reference/Data-Manipulation-Statements/Load/CLEAN-LABEL",
+                                        "sql-manual/sql-reference/Data-Manipulation-Statements/Load/CLEAN-PROFILE"
                                     ]
                                 },
                                 {
@@ -1127,12 +1142,14 @@
                                 "sql-manual/sql-reference/Show-Statements/SHOW-COLUMNS",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-COLUMN-STATS",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-COLLATION",
+                                "sql-manual/sql-reference/Show-Statements/SHOW-CONVERT-LIGHT-SCHEMA-CHANGE-PROCESS",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-DATABASES",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-DATA-SKEW",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-DATABASE-ID",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-DYNAMIC-PARTITION",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-DELETE",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-DATA",
+                                "sql-manual/sql-reference/Show-Statements/SHOW-DATA-TYPES",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-ENGINES",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-EVENTS",
                                 "sql-manual/sql-reference/Show-Statements/SHOW-EXPORT",
@@ -1211,7 +1228,8 @@
                                 "sql-manual/sql-reference/Utility-Statements/CANCEL-MATERIALIZED-VIEW-TASK",
                                 "sql-manual/sql-reference/Utility-Statements/PAUSE-MATERIALIZED-VIEW",
                                 "sql-manual/sql-reference/Utility-Statements/REFRESH-MATERIALIZED-VIEW",
-                                "sql-manual/sql-reference/Utility-Statements/RESUME-MATERIALIZED-VIEW"
+                                "sql-manual/sql-reference/Utility-Statements/RESUME-MATERIALIZED-VIEW",
+                                "sql-manual/sql-reference/Utility-Statements/REFRESH-LDAP"
                             ]
                         }
                     ]
@@ -1284,6 +1302,7 @@
                         "admin-manual/config/config-dir",
                         "admin-manual/config/fe-config",
                         "admin-manual/config/be-config",
+                        "admin-manual/config/fe-config-template",
                         "admin-manual/config/user-property"
                     ]
                 },
@@ -1422,6 +1441,8 @@
                 "releasenotes/release-2.0.2",
                 "releasenotes/release-2.0.1",
                 "releasenotes/release-2.0.0",
+                "releasenotes/release-2.0-Beta",
+                "releasenotes/release-2.0-Alpha",
                 "releasenotes/release-1.2.7",
                 "releasenotes/release-1.2.6",
                 "releasenotes/release-1.2.5",
diff --git a/docs/zh-CN/community/developer-guide/minidump.md b/docs/zh-CN/community/developer-guide/minidump.md
deleted file mode 100644
index dd15d8d7e91..00000000000
--- a/docs/zh-CN/community/developer-guide/minidump.md
+++ /dev/null
@@ -1,185 +0,0 @@
----
-{
-    "title": "Minidump",
-    "language": "zh-CN"
-}
----
-
-<!--
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing,
-software distributed under the License is distributed on an
-"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-KIND, either express or implied. See the License for the
-specific language governing permissions and limitations
-under the License.
--->
-
-# Minidump(removed)
-
-> Minidump 已经被移除,它在实际线上环境中没有用处,反而会引入额外的错误。
-
-Minidump 是微软定义的一种用于程序崩溃后错误上报的文件格式。其中包括了崩溃时的线程信息、寄存器信息、调用栈信息等等,这有助于开发人员快速定位问题。
-
-不同于 [Coredump](https://en.wikipedia.org/wiki/Core_dump),Minidump 文件体积更小,更易于上报和网络传输。Coredump 文件会包含完整的内存镜像,因此体积可能有几十上百GB。而 Minidump 文件仅包含关键线程的调用栈和寄存器信息,因此体积通常只有 MB 级别。
-
-[Breakpad](https://github.com/google/breakpad) 是一个跨平台的崩溃转储和分析框架和工具集合。用户可以借助 Breakpad 来对 Minidump 文件进行自助分析。也可以收集 Minidump 文件并上报给 Doris 集群运维或开发人员。
-
-## 如何开启 Minidump
-
-Minidump 功能是在 Doris 0.15.0 之后的版本中引入的功能。该功能由 BE 的以下配置文件控制:
-
-* `disable_minidump`
-
-    是否开启 Minidump 功能。默认为 false,即开启。
-    
-* `minidump_dir`
-
-    Minidump 文件的存储目录。默认为 `${DORIS_HOME}/Minidump/`
-    
-* `max_minidump_file_size_mb`
-
-    Minidump 文件的大小限制。默认为 200MB。如果大小超过阈值,breakpad 会尝试减少文件中记录的信息,比如线程数量和寄存器数量来介绍 Minidump 的文件大小。但这只是一个期望值,实际文件大小可能比设定的大。
-    
-* `max_minidump_file_number`
-
-    最多保留多少个 Minidump 文件。默认为 10,既保留最近的 10 个文件。
-    
-## 如何生成 Minidump
-
-Minidump 的生成有两种方式:
-
-1. 程序崩溃
-
-    当程序遇到问题崩溃后,会自动生成 Minidump 文件。此时会在 be.out 中出现如下信息:
-    
-    ```
-    Minidump created at: /doris/be/Minidump/4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp
-    *** Aborted at 1636970042 (unix time) try "date -d @1636970042" if you are using GNU date ***
-    PC: @          0x1b184e4 doris::OlapScanNode::scanner_thread()
-    *** SIGSEGV (@0x0) received by PID 71567 (TID 0x7f173a5df700) from PID 0; stack trace: ***
-    @          0x220c992 google::(anonymous namespace)::FailureSignalHandler()
-    @     0x7f174fb5e1d0 (unknown)
-    @          0x1b184e4 doris::OlapScanNode::scanner_thread()
-    @          0x15a19af doris::PriorityThreadPool::work_thread()
-    @          0x21d9107 thread_proxy
-    @     0x7f174fb53f84 start_thread
-    @     0x7f174f943ddf __GI___clone
-    @                0x0 (unknown)
-    ```
-    
-    其中 `/doris/be/Minidump/4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp` 为 Minidump 文件。而其后的堆栈是程序崩溃点所在的调用栈信息。
-    
-2. 手动触发
-
-    用户可以主动地向 BE 进程发送 SIGUSR1 信号来触发 Minidump。如使用以下命令:
-    
-    ```
-    kill -s SIGUSR1 71567
-    ```
-    
-    其中 71567 是 BE 的进程id(pid)。之后,会在 be.out 中出现如下信息:
-    
-    ```
-    Receive signal: SIGUSR1
-    Minidump created at: /doris/be/Minidump/1af8fe8f-3d5b-40ea-6b76ad8f-0cf6756f.dmp
-    ```
-
-    其中 `Receive signal: SIGUSR1` 表示这是用户触发的 Minidump 操作。后面是 Minidump 文件位置。
-    
-    用户手动触发的 Minidump 操作不会杀死 BE 进程,并且不会在 be.out 产生错误堆栈。
-    
-## 如何分析 Minidump
-
-我们可以使用 breakpad 提供的各类工具来分析 Minidump,从而查看错误原因。
-
-### 获取 breakpad 工具
-
-用户可以自行前往 [Breakpad](https://github.com/google/breakpad) 代码库下载并编译 breakpad。编译方式可以参考 Doris 源码库中的 [thirdparty/vars.sh](https://github.com/apache/incubator-doris/blob/master/thirdparty/vars.sh) 中的 `build_breakpad()` 方法。
-
-也可以在 Doris 提供的 Docker 编译镜像 1.4.2 以上版本中,从镜像容器的 `/var/local/thirdparty/installed/bin` 目录下找到 breakpad 编译产出的各类工具。
-
-### 分析 Minidump
-
-我们可以使用以下两种方式来分析 Minidump 文件。
-
-1. 转储成 coredump 文件
-
-    使用 breakpad 提供的 `minidump-2-core` 工具将 Minidump 文件转储成 coredump 文件:
-    
-    ```
-    ./minidump-2-core /doris/be/Minidump/1af8fe8f-3d5b-40ea-6b76ad8f-0cf6756f.dmp > 1.coredump
-    ```
-    
-    之后我们可以使用 gdb 工具来分析这个 coredump 文件了:
-    
-    ```
-    gdb lib/doris_be -c 1.coredump
-    ```
-
-2. 生成可读调用栈
-
-    Minidump 文件中只包含调用栈的地址,我们需要把这些地址对应到实际的函数文件位置。因此,我们首先需要通过 `dump_syms ` 生成 BE 二进制文件的符号表 `doris_be.sym`:
-    
-    ```
-    ./dump_syms ./lib/doris_be > doris_be.sym
-    ```
-
-    接下来,我们需要符号表第一行的信息,构建一个对应的符号表目录。
-    
-    ```
-    head -n1 doris_be.sym
-    ```
-    
-    以上命令会打印 doris_be.sym 的第一行内容如下:
-    
-    ```
-    MODULE Linux x86_64 137706CC745F5EC3EABBF730D4B229370 doris_be
-    ```
-    
-    之后我们创建一个目录结构:
-    
-    ```
-    mkdir -p ./symbols/doris_be/137706CC745F5EC3EABBF730D4B229370
-    ```
-    
-    目录路径中的 `doris_be` 和 `137706CC745F5EC3EABBF730D4B229370` 需和 doris_be.sym 文件的第一行内容一致。然后我们将 doris_be.sym 文件移动到该目录中:
-    
-    ```
-    cp doris_be.sym ./symbols/doris_be/137706CC745F5EC3EABBF730D4B229370
-    ```
-    
-    最后,我们可以使用 `minidump_stackwalk` 来产出可读的调用栈信息:
-    
-    ```
-    minidump_stackwalk 4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp ./symbols/ > readable.stack
-    ```
-    
-    其中 `4f8d4fe5-15f8-40a3-843109b3-d49993f3.dmp` 为 minidump 文件。`./symbols/` 为之前创建的包含 doris_be.sym 的目录。`readable.stack` 是将生成的结果重定向到这个文件中。同时,在执行这个命令时,屏幕上也会刷一些程序运行日志,可以不用理会。
-    
-    至此,我们就获取了一个可读的线程调用栈文件:readable.stack。其中包含了 BE 程序在写 Minidump 文件时的所有线程的调用栈信息,以及对应的寄存器信息。
-    
-    其中 `Crash reason` 说明了程序崩溃的原因。如果是 `DUMP_REQUESTED`,则表示这是一次用户主动触发的 Minidump。
-    
-    我们可以通过以下命令过滤掉寄存器信息,从而获取一个比较清晰的调用栈视图:
-    
-    ```
-    grep -v = readable.stack |grep -v "Found by" |vi -
-    ```
-    
-    其结果比较类似于通过 pstack 命令获取到的线程调用栈信息。
-
-
-
-
-
-


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org