Kernel Resource Usage
This section describes kernel resource parameters. Whether these parameters take effect depends on OS settings.
max_files_per_process
Parameter description: Specifies the maximum number of simultaneously open files allowed by each database thread.
Parameter type: Integer
Unit: None
Value range: 25 to 2147483647
Default value: 1024
Setting method: This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Setting suggestion: If the kernel is enforcing a proper limit, setting this parameter is not required. However, on some platforms, such as most Berkeley Software Distribution (BSD) systems, the kernel allows individual processes to open many more files than the system can support. If the message "Too many open files" is displayed, set this parameter to a smaller value. Generally, the system must meet this requirement: Number of file descriptors ≥ Maximum number of concurrent statements x Number of database nodes x max_files_per_process x 3.
Risks and impacts of improper settings: Set this parameter according to the actual situation. If the value is too small, the number of valid security file handles may be small. As a result, the database status is abnormal.
shared_preload_libraries
Parameter description: Specifies one or more shared libraries that need to be preloaded before the database is started. If multiple libraries are to be loaded, separate their names using commas (,). For example, '$libdir/mylib' will cause mylib.so (or mylib.sl on some platforms) to be preloaded before the standard library directory is loaded. Currently, only the SYSADMIN user can access and set this parameter.

- If a specified library is not found, the GaussDB service will fail to start.
- Each GaussDB-supported library has a special mark that is checked to guarantee compatibility. Therefore, libraries that do not support GaussDB cannot be loaded in this way.
Parameter type: String
Unit: None
Value range: a string.
Default value: ''platform_compatibility_b,security_plugin''
Setting method: This is a POSTMASTER parameter. Set it based on instructions provided in Table 1.
Setting suggestion: You can preinstall the stored procedure library of GaussDB using the '$libdir/plXXX' syntax as described in the preceding text. XXX can only be pgsql, perl, tcl, or python.
By preloading a shared library and initializing it as required, the library startup time is avoided when the library is first used. However, the time to start each new server process may increase, even if that process never uses the library. Therefore, set this parameter only for libraries that will be used in most sessions.
Risks and impacts of improper settings: Change the parameter value after fully understanding the parameter meaning and verifying it through testing.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot