This article provides best practice on how to manage GPText.
1. Upgrade GPDB to latest version to use UDPIFC interconnect type.
There is a known issue that GPText functions may hang in UDP interconnect type.
How to check current GPDB interconnect type:
How to change the interconnect type:
2. When executing GPText search queries, use TABLE(select 1 scatter by 1) as the table function to leverage the index scan.
3. Consider GPText memory usage when setting gp_vmem_protect_limit of GPDB.
Per GPDB Admin Guide, gp_vmem_protect_limit should be set to:
Above calculation does not consider GPText memory usage.
If your cluster has GPText running on segments, above "physical_memory" should deduct sum of the max memory used by all GPText processes on each segment server.
If one segment server has 48 GB physical memory and 6 primary segment instances are running on each server.
Assume GPText is using default memory setting which is "-Xms1024M -Xmx2048M", so above "physical_memory" for GPDB should be 48G - 6 * 2GB(-Xmx) = 36GB.
4. Upgrade GPText to 126.96.36.199 or above version to avoid GPText search query hang issue.
5. Use "gptext-state --healthcheck" to check GPText inconsistency issues.
6. Use "gptext-detective" to collect logs when opening case to support.
Note that gptext-detectiv
7. Remember to create 2 soft links when GPDB is upgraded.
Please refer to article What needs to be done after upgrading GPDB.