18.17. ÐаÑамеÑÑÑ Ð´Ð»Ñ ÑазÑабоÑÑиков
СледÑÑÑие паÑамеÑÑÑ Ð¿ÑедназнаÑÐµÐ½Ñ Ð´Ð»Ñ ÑабоÑÑ Ð½Ð°Ð´ иÑÑ
однÑм кодом Postgres Pro, а в некоÑоÑÑÑ
ÑлÑÑаÑÑ
они могÑÑ Ð¿Ð¾Ð¼Ð¾ÑÑ Ð²Ð¾ÑÑÑановиÑÑ ÑилÑно повÑеждÑннÑе Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ
. ÐÐ»Ñ Ð¸ÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ñ
в пÑоизводÑÑвенной ÑÑеде не должно бÑÑÑ Ð¿ÑиÑин, поÑÑÐ¾Ð¼Ñ Ð¾Ð½Ð¸ иÑклÑÑÐµÐ½Ñ Ð¸Ð· пÑимеÑа Ñайла postgresql.conf. ÐамеÑÑÑе, ÑÑо Ð´Ð»Ñ ÑабоÑÑ Ñо многими из ÑÑиÑ
паÑамеÑÑов ÑÑебÑÑÑÑÑ ÑпеÑиалÑнÑе Ñлаги компилÑÑии.
allow_in_place_tablespaces(boolean)ÐозволÑÐµÑ ÑоздаваÑÑ ÑаблиÑнÑе пÑоÑÑÑанÑÑва как каÑалоги в
pg_tblspc, когда в командеCREATE TABLESPACEне Ñказано ÑаÑположение каÑалога. ÐÑо пÑедназнаÑено Ð´Ð»Ñ ÑеÑÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÑÑенаÑиев ÑепликаÑии, когда ведÑÑий и ведомÑй ÑеÑвеÑÑ ÑабоÑаÑÑ Ð½Ð° одном компÑÑÑеÑе. СÑедÑÑва ÑезеÑвного копиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¾Ð¶Ð¸Ð´Ð°ÑÑ Ð¿Ð¾Ð»ÑÑиÑÑ ÑимволиÑеÑкие ÑÑÑлки в ÑÑом меÑÑе, поÑÑÐ¾Ð¼Ñ Ð¸Ñ ÑабоÑа Ð¼Ð¾Ð¶ÐµÑ Ð½Ð°ÑÑÑиÑÑÑÑ. ÐзменÑÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð³ÑÑ ÑолÑко ÑÑпеÑполÑзоваÑели.allow_system_table_mods(boolean)РазÑеÑÐ°ÐµÑ Ð¼Ð¾Ð´Ð¸ÑикаÑÐ¸Ñ ÑÑÑÑкÑÑÑÑ ÑиÑÑемнÑÑ ÑаблиÑ. ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¸ÑполÑзÑеÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹
initdb. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко пÑи запÑÑке ÑеÑвеÑа.ignore_system_indexes(boolean)ÐÑклÑÑÐ°ÐµÑ Ð¸ÑполÑзование индекÑов пÑи ÑÑении ÑиÑÑемнÑÑ ÑÐ°Ð±Ð»Ð¸Ñ (пÑи ÑÑом индекÑÑ Ð²ÑÑ Ð¶Ðµ бÑдÑÑ Ð¸Ð·Ð¼ÐµÐ½ÑÑÑÑÑ Ð¿Ñи запиÑи в ÑÑи ÑаблиÑÑ). ÐÑо полезно Ð´Ð»Ñ Ð²Ð¾ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑабоÑоÑпоÑобноÑÑи пÑи повÑеждÑннÑÑ ÑиÑÑемнÑÑ Ð¸Ð½Ð´ÐµÐºÑÐ°Ñ . ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð½ÐµÐ»ÑÐ·Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸ÑÑ Ð¿Ð¾Ñле запÑÑка ÑеанÑа.
post_auth_delay(integer)ÐÑи ненÑлевом знаÑении ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð·Ð°Ð´Ð°ÑÑ Ð·Ð°Ð´ÐµÑÐ¶ÐºÑ (в ÑекÑÐ½Ð´Ð°Ñ ) пÑи запÑÑке нового ÑеÑвеÑного пÑоÑеÑÑа поÑле вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿ÑоÑедÑÑÑ Ð°ÑÑенÑиÑикаÑии. Ðн пÑедназнаÑен Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ ÑазÑабоÑÑики имели возможноÑÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑиÑÑ Ð¾ÑладÑик к ÑеÑвеÑÐ½Ð¾Ð¼Ñ Ð¿ÑоÑеÑÑÑ. ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð½ÐµÐ»ÑÐ·Ñ Ð¸Ð·Ð¼ÐµÐ½Ð¸ÑÑ Ð¿Ð¾Ñле наÑала ÑеанÑа.
pre_auth_delay(integer)ÐÑи ненÑлевом знаÑении ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð·Ð°Ð´Ð°ÑÑ Ð·Ð°Ð´ÐµÑÐ¶ÐºÑ (в ÑекÑÐ½Ð´Ð°Ñ ), добавлÑемÑÑ ÑÑÐ°Ð·Ñ Ð¿Ð¾Ñле поÑÐ¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ ÑеÑвеÑного пÑоÑеÑÑа, до вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿ÑоÑедÑÑÑ Ð°ÑÑенÑиÑикаÑии. Ðн пÑедназнаÑен Ð´Ð»Ñ Ñого, ÑÑÐ¾Ð±Ñ ÑазÑабоÑÑики имели возможноÑÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑиÑÑ Ð¾ÑладÑик к ÑеÑвеÑÐ½Ð¾Ð¼Ñ Ð¿ÑоÑеÑÑÑ Ð¿Ñи ÑеÑении пÑоблем Ñ Ð°ÑÑенÑиÑикаÑией. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко в
postgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.trace_notify(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод оÑÐµÐ½Ñ Ð¿Ð¾Ð´Ñобной оÑладоÑной инÑоÑмаÑии пÑи вÑполнении команд
LISTENиNOTIFY. ЧÑÐ¾Ð±Ñ ÑÑи ÑообÑÐµÐ½Ð¸Ñ Ð¿ÐµÑедавалиÑÑ ÐºÐ»Ð¸ÐµÐ½ÑÑ Ð¸Ð»Ð¸ в жÑÑнал ÑеÑвеÑа, паÑамеÑÑ client_min_messages или log_min_messages, ÑооÑвеÑÑÑвенно, должен имеÑÑ Ð·Ð½Ð°ÑениеDEBUG1или ниже.trace_recovery_messages(enum)ÐклÑÑÐ°ÐµÑ Ð²Ñвод в жÑÑнал оÑладоÑнÑÑ ÑообÑений, ÑвÑзаннÑÑ Ñ Ð²Ð¾ÑÑÑановлением, коÑоÑÑе инаÑе не вÑводÑÑÑÑ. ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¿Ð¾Ð·Ð²Ð¾Ð»ÑÐµÑ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ð¿ÐµÑеопÑеделиÑÑ Ð¾Ð±ÑÑное знаÑение log_min_messages, но ÑолÑко Ð´Ð»Ñ ÑпеÑиÑиÑеÑÐºÐ¸Ñ ÑообÑений. Ðн пÑедназнаÑен Ð´Ð»Ñ Ð¾Ñладки Ñежима гоÑÑÑего ÑезеÑва. ÐопÑÑÑимÑе знаÑениÑ:
DEBUG5,DEBUG4,DEBUG3,DEBUG2,DEBUG1иLOG. ÐнаÑение по ÑмолÑаниÑ,LOG, никак не влиÑÐµÑ Ð½Ð° запиÑÑ ÑÑÐ¸Ñ ÑообÑений в жÑÑнал. С дÑÑгими знаÑениÑми оÑладоÑнÑе ÑообÑениÑ, ÑвÑзаннÑе Ñ Ð²Ð¾ÑÑÑановлением, имеÑÑие заданнÑй пÑиоÑиÑÐµÑ Ð¸Ð»Ð¸ вÑÑе, вÑводÑÑÑÑ, как еÑли Ð±Ñ Ð¾Ð½Ð¸ имели пÑиоÑиÑеÑLOG; пÑи ÑÑандаÑÑнÑÑ Ð·Ð½Ð°ÑениÑÑlog_min_messagesÑÑо ознаÑаеÑ, ÑÑо они бÑдÑÑ ÑикÑиÑоваÑÑÑÑ Ð² жÑÑнале ÑеÑвеÑа. ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко вpostgresql.confили в командной ÑÑÑоке пÑи запÑÑке ÑеÑвеÑа.trace_sort(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод инÑоÑмаÑии об иÑполÑзовании ÑеÑÑÑÑов во вÑÐµÐ¼Ñ Ð¾Ð¿ÐµÑаÑий ÑоÑÑиÑовки. ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи ÑбоÑке Postgres Pro бÑл опÑеделÑн макÑоÑ
TRACE_SORT. (Ðо ÑмолÑÐ°Ð½Ð¸Ñ Ð¼Ð°ÐºÑоÑTRACE_SORTопÑеделÑн.)trace_locks(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод подÑобнÑÑ Ñведений о блокиÑÐ¾Ð²ÐºÐ°Ñ . Ð ÑÑи ÑÐ²ÐµÐ´ÐµÐ½Ð¸Ñ Ð²Ñ Ð¾Ð´Ð¸Ñ Ð²Ð¸Ð´ опеÑаÑии блокиÑовки, Ñип блокиÑовки и ÑникалÑнÑй иденÑиÑикаÑÐ¾Ñ Ð¾Ð±ÑекÑа, коÑоÑÑй блокиÑÑеÑÑÑ Ð¸Ð»Ð¸ ÑазблокиÑÑеÑÑÑ. ÐÑоме Ñого, в Ð¸Ñ ÑоÑÑаве вÑводÑÑÑÑ Ð±Ð¸ÑовÑе маÑки Ð´Ð»Ñ Ñипов блокиÑовок, Ñже полÑÑеннÑÑ Ð´Ð»Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ обÑекÑа, и Ð´Ð»Ñ Ñипов блокиÑовок, ожидаÑÑÐ¸Ñ ÐµÐ³Ð¾ оÑвобождениÑ. Рдополнение к ÑÑÐ¾Ð¼Ñ Ð²ÑводиÑÑÑ ÐºÐ¾Ð»Ð¸ÑеÑÑво полÑÑеннÑÑ Ð¸ ожидаÑÑÐ¸Ñ Ð±Ð»Ð¾ÐºÐ¸Ñовок Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ Ñипа блокиÑовок, а Ñакже Ð¸Ñ Ð¾Ð±Ñее колиÑеÑÑво. Ðиже показан пÑÐ¸Ð¼ÐµÑ Ð²Ñвода в жÑÑнал:
LOG: LockAcquire: new: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(0) req(0,0,0,0,0,0,0)=0 grant(0,0,0,0,0,0,0)=0 wait(0) type(AccessShareLock) LOG: GrantLock: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(2) req(1,0,0,0,0,0,0)=1 grant(1,0,0,0,0,0,0)=1 wait(0) type(AccessShareLock) LOG: UnGrantLock: updated: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(0) req(0,0,0,0,0,0,0)=0 grant(0,0,0,0,0,0,0)=0 wait(0) type(AccessShareLock) LOG: CleanUpLock: deleting: lock(0xb7acd844) id(24688,24696,0,0,0,1) grantMask(0) req(0,0,0,0,0,0,0)=0 grant(0,0,0,0,0,0,0)=0 wait(0) type(INVALID)ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
LOCK_DEBUG.trace_lwlocks(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод инÑоÑмаÑии об иÑполÑзовании легковеÑнÑÑ Ð±Ð»Ð¾ÐºÐ¸Ñовок. Такие блокиÑовки пÑедназнаÑÐµÐ½Ñ Ð² оÑновном Ð´Ð»Ñ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð¸ÑклÑÑаÑÑего доÑÑÑпа к обÑим ÑÑÑÑкÑÑÑам даннÑÑ Ð² памÑÑи.
ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
LOCK_DEBUG.trace_userlocks(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод инÑоÑмаÑии об иÑполÑзовании полÑзоваÑелÑÑÐºÐ¸Ñ Ð±Ð»Ð¾ÐºÐ¸Ñовок. Ðна вÑводиÑÑÑ Ð² Ñом же ÑоÑмаÑе, ÑÑо и Ñ
trace_locks, но по ÑекомендаÑелÑнÑм блокиÑовкам.ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
LOCK_DEBUG.trace_lock_oidmin(integer)ÐÑли ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ ÑÑÑановлен, пÑи ÑÑаÑÑиÑовке блокиÑовок не бÑдÑÑ Ð¾ÑÑлеживаÑÑÑÑ ÑаблиÑÑ Ñ OID менÑÑе заданного (ÑÑо иÑполÑзÑеÑÑÑ Ð´Ð»Ñ Ð¸ÑклÑÑÐµÐ½Ð¸Ñ Ð¸Ð· ÑÑаÑÑиÑовки ÑиÑÑемнÑÑ ÑаблиÑ).
ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
LOCK_DEBUG.trace_lock_table(integer)ÐезÑÑловно ÑÑаÑÑиÑоваÑÑ Ð±Ð»Ð¾ÐºÐ¸Ñовки Ð´Ð»Ñ ÑаблиÑÑ Ñ Ð·Ð°Ð´Ð°Ð½Ð½Ñм OID.
ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
LOCK_DEBUG.debug_deadlocks(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод инÑоÑмаÑии обо вÑÐµÑ ÑекÑÑÐ¸Ñ Ð±Ð»Ð¾ÐºÐ¸ÑÐ¾Ð²ÐºÐ°Ñ Ð¿Ñи Ñайм-аÑÑе взаимоблокиÑовки.
ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
LOCK_DEBUG.log_btree_build_stats(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод ÑÑаÑиÑÑики иÑполÑÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ ÑиÑÑемнÑÑ ÑеÑÑÑÑов (памÑÑи и пÑоÑеÑÑоÑа) пÑи ÑазлиÑнÑÑ Ð¾Ð¿ÐµÑаÑиÑÑ Ñ B-деÑевом.
ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
BTREE_BUILD_STATS.wal_consistency_checking(string)ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¿ÑедназнаÑен Ð´Ð»Ñ Ð¿ÑовеÑки оÑибок в пÑоÑедÑÑÐ°Ñ Ð²Ð¾ÑпÑÐ¾Ð¸Ð·Ð²ÐµÐ´ÐµÐ½Ð¸Ñ WAL. Ðогда он вклÑÑÑн, в запиÑи WAL добавлÑÑÑÑÑ Ð¿Ð¾Ð»Ð½Ñе обÑÐ°Ð·Ñ ÑÑÑÐ°Ð½Ð¸Ñ Ð²ÑÐµÑ Ð¸Ð·Ð¼ÐµÐ½ÑемÑÑ Ð±ÑÑеÑов, Ðогда запиÑÑ Ð²Ð¿Ð¾ÑледÑÑвии воÑпÑоизводиÑÑÑ, ÑиÑÑема ÑнаÑала пÑименÑÐµÑ ÑÑÑ Ð·Ð°Ð¿Ð¸ÑÑ, а заÑем пÑовеÑÑеÑ, ÑооÑвеÑÑÑвÑÑÑ Ð»Ð¸ бÑÑеÑÑ, изменÑннÑе запиÑÑÑ, ÑÐ¾Ñ ÑанÑннÑм обÑазам. РопÑеделÑннÑÑ ÑлÑÑаÑÑ (напÑимеÑ, во вÑпомогаÑелÑнÑÑ Ð±Ð¸ÑÐ°Ñ ) неболÑÑие Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿ÑÑкаÑÑÑÑ Ð¸ бÑдÑÑ Ð¸Ð³Ð½Ð¾ÑиÑоваÑÑÑÑ. ÐÑли вÑÑвлÑÑÑÑÑ Ð½ÐµÐ¾Ð¶Ð¸Ð´Ð°Ð½Ð½Ñе ÑазлиÑиÑ, ÑÑо ÑÑиÑаеÑÑÑ ÐºÑиÑиÑеÑкой оÑибкой и воÑÑÑановление пÑеÑÑваеÑÑÑ.
Ðо ÑмолÑÐ°Ð½Ð¸Ñ Ð·Ð½Ð°Ñение ÑÑого паÑамеÑÑа â пÑÑÑÐ°Ñ ÑÑÑока, Ñак ÑÑо ÑÑа ÑÑнкÑионалÑноÑÑÑ Ð¾ÑклÑÑена. Ðго знаÑением Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ
all(бÑдÑÑ Ð¿ÑовеÑÑÑÑÑÑ Ð²Ñе запиÑи) или ÑпиÑок имÑн менеджеÑов ÑеÑÑÑÑов ÑеÑез запÑÑÑÑ (бÑдÑÑ Ð¿ÑовеÑÑÑÑÑÑ Ð·Ð°Ð¿Ð¸Ñи, вÑдаваемÑе ÑÑими менеджеÑами). РнаÑÑоÑÑее вÑÐµÐ¼Ñ Ð¿Ð¾Ð´Ð´ÐµÑживаÑÑÑÑ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑÑheap,heap2,btree,hash,gin,gist,sequence,spgist,brinиgeneric. ÐзменÑÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð³ÑÑ ÑолÑко ÑÑпеÑполÑзоваÑели.wal_debug(boolean)ÐклÑÑÐ°ÐµÑ Ð²Ñвод оÑладоÑной инÑоÑмаÑии, ÑвÑзанной Ñ WAL. ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´Ð¾ÑÑÑпен, ÑолÑко еÑли пÑи компилÑÑии Postgres Pro бÑл опÑеделÑн макÑоÑ
WAL_DEBUG.ignore_checksum_failure(boolean)ÐÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð´ÐµÐ¹ÑÑвÑеÑ, ÑолÑко еÑли вклÑÑÑн ÐонÑÑолÑнÑе ÑÑÐ¼Ð¼Ñ Ð´Ð°Ð½Ð½ÑÑ .
ÐÑи обнаÑÑжении оÑибок конÑÑолÑнÑÑ ÑÑмм пÑи ÑÑении Postgres Pro обÑÑно ÑообÑÐ°ÐµÑ Ð¾Ð± оÑибке и пÑеÑÑÐ²Ð°ÐµÑ ÑекÑÑÑÑ ÑÑанзакÑиÑ. ÐÑли паÑамеÑÑ
ignore_checksum_failureвклÑÑÑн, ÑиÑÑема игноÑиÑÑÐµÑ Ð¿ÑÐ¾Ð±Ð»ÐµÐ¼Ñ (но вÑÑ Ð¶Ðµ пÑедÑпÑÐµÐ¶Ð´Ð°ÐµÑ Ð¾ ней) и пÑÐ¾Ð´Ð¾Ð»Ð¶Ð°ÐµÑ Ð¾Ð±ÑабоÑкÑ. ÐÑо поведение Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑивеÑÑи к кÑÐ°Ñ Ñ, ÑаÑпÑоÑÑÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ ÑокÑÑÑÐ¸Ñ Ð¿Ð¾Ð²ÑÐµÐ¶Ð´ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ Ð¸ дÑÑгим ÑеÑÑÑзнÑми пÑоблемам. Ðднако вклÑÑив его, Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе обойÑи оÑÐ¸Ð±ÐºÑ Ð¸ полÑÑиÑÑ Ð½ÐµÐ¿Ð¾Ð²ÑеждÑннÑе даннÑе, коÑоÑÑе могÑÑ Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑÑ Ð² ÑаблиÑе, еÑли Ñел заголовок блока. ÐÑли же повÑеждÑн заголовок, бÑÐ´ÐµÑ Ð²Ñдана оÑибка, даже когда ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð²ÐºÐ»ÑÑÑн. Ðо ÑмолÑÐ°Ð½Ð¸Ñ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¾ÑклÑÑÑн (Ð¸Ð¼ÐµÐµÑ Ð·Ð½Ð°Ñениеoff) и измениÑÑ ÐµÐ³Ð¾ ÑоÑÑоÑние Ð¼Ð¾Ð¶ÐµÑ ÑолÑко ÑÑпеÑполÑзоваÑелÑ.zero_damaged_pages(boolean)ÐÑи вÑÑвлении повÑеждÑнного заголовка ÑÑÑаниÑÑ Postgres Pro обÑÑно ÑообÑÐ°ÐµÑ Ð¾Ð± оÑибке и пÑеÑÑÐ²Ð°ÐµÑ ÑекÑÑÑÑ ÑÑанзакÑиÑ. ÐÑли паÑамеÑÑ
zero_damaged_pagesвклÑÑÑн, вмеÑÑо ÑÑого ÑиÑÑема вÑдаÑÑ Ð¿ÑедÑпÑеждение, обнÑлÑÐµÑ Ð¿Ð¾Ð²ÑеждÑннÑÑ ÑÑÑаниÑÑ Ð² памÑÑи и пÑÐ¾Ð´Ð¾Ð»Ð¶Ð°ÐµÑ Ð¾Ð±ÑабоÑкÑ. ÐÑо поведение ÑазÑÑÑÐ°ÐµÑ Ð´Ð°Ð½Ð½Ñе, а именно вÑе ÑÑÑоки в повÑеждÑнной ÑÑÑаниÑе. Ðднако вклÑÑив его, Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе обойÑи оÑÐ¸Ð±ÐºÑ Ð¸ полÑÑиÑÑ ÑÑÑоки из неповÑеждÑннÑÑ ÑÑÑаниÑ, коÑоÑÑе могÑÑ Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑÑ Ð² ÑаблиÑе. ÐÑо бÑÐ²Ð°ÐµÑ Ð¿Ð¾Ð»ÐµÐ·Ð½Ð¾ Ð´Ð»Ñ Ð²Ð¾ÑÑÑÐ°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ , иÑпоÑÑеннÑÑ Ð² ÑезÑлÑÑаÑе аппаÑаÑной или пÑогÑаммной оÑибки. ÐбÑÑно вклÑÑаÑÑ ÐµÐ³Ð¾ ÑледÑÐµÑ ÑолÑко Ñогда, когда не оÑÑалоÑÑ Ð½Ð¸ÐºÐ°ÐºÐ¾Ð¹ дÑÑгой Ð½Ð°Ð´ÐµÐ¶Ð´Ñ Ð½Ð° воÑÑÑановление даннÑÑ Ð² повÑеждÑннÑÑ ÑÑÑаниÑÐ°Ñ ÑаблиÑÑ. ÐбнÑлÑннÑе ÑÑÑаниÑÑ Ð½Ðµ ÑÐ¾Ñ ÑанÑÑÑÑÑ Ð½Ð° диÑк, поÑÑÐ¾Ð¼Ñ Ð¿Ñежде Ñем вÑклÑÑаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ, ÑекомендÑеÑÑÑ Ð¿ÐµÑеÑоздаÑÑ Ð¿ÑоблемнÑе ÑаблиÑÑ Ð¸Ð»Ð¸ индекÑÑ. Ðо ÑмолÑÐ°Ð½Ð¸Ñ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¾ÑклÑÑÑн (Ð¸Ð¼ÐµÐµÑ Ð·Ð½Ð°Ñениеoff) и измениÑÑ ÐµÐ³Ð¾ ÑоÑÑоÑние Ð¼Ð¾Ð¶ÐµÑ ÑолÑко ÑÑпеÑполÑзоваÑелÑ.jit_debugging_support(boolean)ÐÑи налиÑии ÑÑебÑемой ÑÑнкÑионалÑноÑÑи LLVM ÑегиÑÑÑиÑоваÑÑ Ð³ÐµÐ½ÐµÑиÑÑемÑе ÑÑнкÑии в GDB. ÐÑо позволÑÐµÑ ÑпÑоÑÑиÑÑ Ð¾ÑладкÑ. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â
off(вÑкл.). ÐзмениÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко пÑи запÑÑке ÑеÑвеÑа.jit_dump_bitcode(boolean)ÐапиÑÑваÑÑ ÑгенеÑиÑованнÑй LLVM IR-код в ÑайловÑÑ ÑиÑÑемÑ, в каÑалог data_directory. ÐÑо полезно ÑолÑко Ð´Ð»Ñ ÑабоÑÑ Ñ Ð²Ð½ÑÑÑенним Ð¼ÐµÑ Ð°Ð½Ð¸Ð·Ð¼Ð¾Ð¼ JIT. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â
off(вÑкл.). ÐзмениÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶ÐµÑ ÑолÑко ÑÑпеÑполÑзоваÑелÑ.jit_expressions(boolean)ÐпÑеделÑеÑ, бÑдÑÑ Ð»Ð¸ JIT-компилиÑоваÑÑÑÑ Ð²ÑÑажениÑ, когда JIT-компилÑÑÐ¸Ñ Ð²ÐºÐ»ÑÑена (Ñм. Раздел 31.2). ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â
on(вкл.).jit_profiling_support(boolean)ÐÑи налиÑии ÑÑебÑемой ÑÑнкÑионалÑноÑÑи LLVM вÑдаваÑÑ Ð´Ð°Ð½Ð½Ñе, Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ñе Ð´Ð»Ñ Ð¿ÑоÑилиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ perf ÑÑнкÑий, коÑоÑÑе генеÑиÑÑÐµÑ JIT. ÐÑÑ Ð¾Ð´Ð½Ñе ÑÐ°Ð¹Ð»Ñ Ð·Ð°Ð¿Ð¸ÑÑваÑÑÑÑ Ð² каÑалог
$HOME/.debug/jit/; ÑдалÑÑÑ Ð¸Ñ Ð¿Ñи желании должен Ñам полÑзоваÑелÑ. ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ âoff(вÑкл.). ÐадаÑÑ ÑÑÐ¾Ñ Ð¿Ð°ÑамеÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко пÑи запÑÑке ÑеÑвеÑа.jit_tuple_deforming(boolean)ÐпÑеделÑеÑ, бÑÐ´ÐµÑ Ð»Ð¸ JIT-компилиÑоваÑÑÑÑ Ð¿ÑеобÑазование коÑÑежей, когда JIT-компилÑÑÐ¸Ñ Ð²ÐºÐ»ÑÑена (Ñм. Раздел 31.2). ÐнаÑение по ÑмолÑÐ°Ð½Ð¸Ñ â
on(вкл.).