K.4. Additional Modules#
K.4.1. Built-In Default Modules#
To provide support for1C solutions, thePostgres Pro distribution includes the following built-in modules that are enabled by default and do not require additional configuration:
fasttrun — provides a transaction-unsafe function to truncate temporary tables without growing the size of
pg_class.fulleq — provides an additional equivalence operator for compatibility withMicrosoft SQL Server.
mchar — provides additional
MCHARandMVARCHARdata types for compatibility withMicrosoft SQL Server.
K.4.2. dbcopies_decoding#
dbcopies_decoding is a1C module for updating database copies, which is enabled by default. To use the logical replication mechanism of this module, set thewal_level parameter tological.
For more information about this module, contact1C support.
K.4.3. plantuner#
Theplantuner module allows optimizing query execution plans. To configure it for1C solutions, do the following:
Add the library name to the
shared_preload_librariesvariable in thepostgresql.conffile.shared_preload_libraries = 'plantuner'
Set the
plantuner.fix_empty_tableparameter toonto improve planning for recently created empty tables.plantuner.fix_empty_table = on
K.4.4. online_analyze#
Theonline_analyze module provides a set of features that immediately update statistics afterINSERT,UPDATE,DELETE,SELECT INTO, orCOPY operations for the affected tables.
Note
It is not recommended to use this module with modern versions of1C.
However, you can enableonline_analyze if background updates do not provide the desired result or if the optimizer frequently fails to estimate the row count.
The instruction below is relevant only if you decide to use the module.
To configure this module, follow the steps below.
Add the library name to the
shared_preload_librariesvariable in thepostgresql.conffile.shared_preload_libraries = 'online_analyze'
Enable this module.
online_analyze.enable = on
Specify the minimum number of row updates before starting online analysis.
online_analyze.threshold = 50
Specify the fraction of the table size to start online analysis.
online_analyze.scale_factor = 0.1
Execute the
ANALYZEcommand withoutVERBOSE.online_analyze.verbose = off
Enable online analysis for temporary tables.
online_analyze.table_type = 'temporary'
Specify the minimum time interval between
ANALYZEcalls per table, in milliseconds.online_analyze.min_interval = 10000