Runtime Configuration

PLV8 has some configuration variables that can be set either in postgresql.conf or at runtime using SET.

Variable Description Default
plv8.start_proc PLV8 function to run once when PLV8 is first used none
plv8.icu_data ICU data file directory (when compiled with ICU support) none
plv8.v8_flags V8 engine initialization flags (e.g. –harmony for all current harmony features) none
plv8.execution_timeout V8 execution timeout (when compiled with EXECUTION_TIMEOUT) 300 seconds
plv8.boot_proc Like start_proc above, but can be set by superuser only none
plv8.memory_limit Memory limit for the per-user heap usage on each connection, in MB 256
plv8.context Users can switch to a different global object (globalThis) by using an arbitrary context string none
plv8.context_cache_size Size of the per-user LRU cache for custom contexts 8
plv8.max_eval_size Control how eval() can be used, -1 = no limits, 0 = eval() disabled, any other number = max length of the eval-able string in bytes 2MB