CINXE.COM
Node-specific settings - CrateDB: Reference
<!doctype html> <html class="no-js" lang="en" data-content_root=""> <head><meta charset="utf-8"/> <meta name="viewport" content="width=device-width,initial-scale=1"/> <meta name="color-scheme" content="light dark"><meta name="generator" content="Docutils 0.18.1: http://docutils.sourceforge.net/" /> <meta property="og:title" content="Node-specific settings" /> <meta property="og:type" content="website" /> <meta property="og:url" content="https://cratedb.com/docs/crate/reference/en/latest/config/node.html" /> <meta property="og:site_name" content="CrateDB Documentation" /> <meta property="og:description" content="Table of contents Basics, Node types, General, Networking- Hosts, Ports, Advanced TCP settings, Transport settings., Paths, Plug-ins, CPU, Memory, Garbage collection, Authentication- Trust authentication, Host-based authentication- JWT Based Authentication, HBA entries.., Secured communications (..." /> <meta property="og:image" content="https://crate-docs-theme.readthedocs.io/en/latest/_static/images/cratedb-logo-h630.png" /> <meta name="description" content="Table of contents Basics, Node types, General, Networking- Hosts, Ports, Advanced TCP settings, Transport settings., Paths, Plug-ins, CPU, Memory, Garbage collection, Authentication- Trust authentication, Host-based authentication- JWT Based Authentication, HBA entries.., Secured communications (..." /> <link rel="search" title="Search" href="../search.html" /><link rel="next" title="Cluster-wide settings" href="cluster.html" /><link rel="prev" title="Configuration" href="index.html" /> <link rel="shortcut icon" type="image/png" href="../_static/images/favicon.png"/> <!-- Algolia DNS Prefetch --> <link rel="preconnect" href="https://az1nev7cg0-dsn.algolia.net" crossorigin /> <!-- Algolia stylesheet --> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@docsearch/css@3" /> <!-- Google Tag Manager --> <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-WHMDSK');</script> <!-- End Google Tag Manager --> <noscript> <style> .cr-nojs-hide { display: none; } </style> </noscript> <!-- Always link to the latest version, as canonical. https://docs.readthedocs.io/en/stable/canonical-urls.html --> <link rel="canonical" href="https://cratedb.com/docs/crate/reference/en/latest/config/node.html" /> <title>Node-specific settings - CrateDB: Reference</title> <link rel="stylesheet" href="../_static/skeleton.css" type="text/css" /><link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=20074c1a" /> <link rel="stylesheet" type="text/css" href="../_static/css/components.css?v=c502da3f" /> <link rel="stylesheet" type="text/css" href="../_static/mystnb.4510f1fc1dee50b3e5859aac5469c37c29e427902b24a333a5f9fcb2f0b3ac41.css" /> <link rel="stylesheet" type="text/css" href="../_static/copybutton.css?v=76b2166b" /> <link rel="stylesheet" type="text/css" href="../_static/tabs.css?v=4c969af8" /> <link rel="stylesheet" type="text/css" href="../_static/togglebutton.css?v=13237357" /> <link rel="stylesheet" type="text/css" href="../_static/graphviz.css?v=eafc0fe6" /> <link rel="stylesheet" type="text/css" href="../_static/sphinx-design.min.css?v=87e54e7c" /> <link rel="stylesheet" type="text/css" href="../_static/design-elements.e5416f61bae5d36adc6d722a2b6f8cff.css?v=452a8e97" /> <link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css" /> <style> html { --color-code-background: #f8f8f8; --color-code-foreground: black; } @media not print { html[data-theme="dark"] { --color-code-background: #202020; --color-code-foreground: #d0d0d0; } @media (prefers-color-scheme: dark) { html:not([data-theme="light"]) { --color-code-background: #202020; --color-code-foreground: #d0d0d0; } } } </style><script src="../_static/bundle/main.js?ver=0.38.0"></script><script async type="text/javascript" src="/_/static/javascript/readthedocs-addons.js"></script><meta name="readthedocs-project-slug" content="crate" /><meta name="readthedocs-version-slug" content="latest" /><meta name="readthedocs-resolver-filename" content="/config/node.html" /><meta name="readthedocs-http-status" content="200" /></head> <body> <script> document.documentElement.dataset.theme = localStorage.getItem("theme") || "auto"; </script> <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <symbol id="svg-toc" viewBox="0 0 24 24"> <title>Contents</title> <svg stroke="currentColor" fill="currentColor" stroke-width="0" viewBox="0 0 1024 1024"> <path d="M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM115.4 518.9L271.7 642c5.8 4.6 14.4.5 14.4-6.9V388.9c0-7.4-8.5-11.5-14.4-6.9L115.4 505.1a8.74 8.74 0 0 0 0 13.8z"/> </svg> </symbol> <symbol id="svg-menu" viewBox="0 0 24 24"> <title>Menu</title> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather-menu"> <line x1="3" y1="12" x2="21" y2="12"></line> <line x1="3" y1="6" x2="21" y2="6"></line> <line x1="3" y1="18" x2="21" y2="18"></line> </svg> </symbol> <symbol id="svg-arrow-right" viewBox="0 0 24 24"> <title>Expand</title> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather-chevron-right"> <polyline points="9 18 15 12 9 6"></polyline> </svg> </symbol> <symbol id="svg-sun" viewBox="0 0 24 24"> <title>Light mode</title> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="feather-sun"> <circle cx="12" cy="12" r="5"></circle> <line x1="12" y1="1" x2="12" y2="3"></line> <line x1="12" y1="21" x2="12" y2="23"></line> <line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line> <line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line> <line x1="1" y1="12" x2="3" y2="12"></line> <line x1="21" y1="12" x2="23" y2="12"></line> <line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line> <line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line> </svg> </symbol> <symbol id="svg-moon" viewBox="0 0 24 24"> <title>Dark mode</title> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" class="icon-tabler-moon"> <path stroke="none" d="M0 0h24v24H0z" fill="none" /> <path d="M12 3c.132 0 .263 0 .393 0a7.5 7.5 0 0 0 7.92 12.446a9 9 0 1 1 -8.313 -12.454z" /> </svg> </symbol> </svg> <a class="skip-to-content muted-link" href="#main-content">Skip to content</a> <div class="sb-announcement"> <link rel="stylesheet" href="https://cratedb.com/hs-fs/hub/19927462/hub_generated/module_assets/55523967869/1722426745670/module_55523967869_Header_Notif_Bar.min.css"> <!--<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css" rel="stylesheet">--> <style>.notification-banner.new { left: 0; width: 100%; box-sizing: border-box; }.page-center #notif-close::before,.page-center #notif-close::after {display: none;} .page-center #notif-close { top: 30%; transform: none; height: auto; }</style> <div id="hs_cos_wrapper_Header_Notif_Bar" class="hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_module" style="" data-hs-cos-general-type="widget" data-hs-cos-type="module"> <style> .notification-banner { background-color:#19c0ea; color:#FFFFFF; } .notification-banner p{ color:#FFFFFF; } .notification-banner__button { color:#FFFFFF; background-color:#005980; } .notification-banner__button:hover { color:#FFFFFF; background-color:#009DC7; opacity: 1; } #notif-close svg { fill: #000000; } .notif-bar-enabled .w-canvas { margin-top: 32px; } .sd-summary-title .fa.fa-gear.fa-fw { line-height: inherit; } </style> <script> $(document).ready(function(){ $('body').removeClass('notif-bottom'); var stateKey = "notifSilenceb98c002b99bee96bfc9be4972ceb8efa"; if (!localStorage[stateKey] || (new Date().getTime() > parseInt(localStorage[stateKey], 10))) { $('body').addClass('notif-bar-enabled'); } var notifbarHeight = $('.notification-banner').outerHeight(); var menuHeight = $('#top').outerHeight(); var totalHeight = menuHeight + notifbarHeight; var headerPadding = notifbarHeight + 80; if($('body.notif-bar-enabled')){ $('.notif-bar-enabled header.header').css('margin-top',notifbarHeight+"px"); $('.notif-bar-enabled header.header-nav:not(.sb-header)').css('margin-top',notifbarHeight+"px"); $('.notif-bar-enabled .body-container-wrapper').css('padding-top',totalHeight+"px"); //$('.notif-bar-enabled #cr-header-resources').css('padding-top',headerPadding+"px"); $('.notif-bar-enabled .cr-clusters-items-wrapper').css('padding-top',notifbarHeight+"px"); if($('body.cr-home')){ $('.notif-bar-enabled .cr-header-full-height').css('padding-top',totalHeight+"px"); } if($('body.notif-bar-enabled .cr-sticky-submenu')){ $('.notif-bar-enabled .cr-sticky-submenu').attr('style', "margin-top: -" + notifbarHeight + "px !important; padding-top: " + notifbarHeight + "px !important;"); } /*if($('.cr-header-full-height')) { //$('.notif-bar-enabled .cr-header-full-height').css('padding-top',totalHeight+"px"); //$('.notif-bar-enabled .cr-header-full-height').attr('style', 'padding-top: calc(' + totalHeight + 'px + 40px) !important') }*/ } $('#notif-close').click(function() { $('.notification-banner').hide(); $('body').removeClass('notif-bar-enabled'); var silenceTime = parseInt('86400000', 10) || 0; if (silenceTime) { localStorage.setItem(stateKey, String(new Date().getTime() + silenceTime)); } $('header.header').css('margin-top',"0"); $('header.header-nav').css('margin-top',"0"); $('.body-container-wrapper').css('padding-top',menuHeight+"px"); $('#cr-header-resources').css('padding-top', "80px"); $('.cr-clusters-items-wrapper').css('padding-top', "0px"); if($('.w-canvas')){ $('.w-canvas').css('padding-top',"65px"); } if($('body.cr-home')){ $('.cr-header-full-height').css('padding-top',"80px"); } if($('.cr-sticky-submenu')){ $('.cr-sticky-submenu').attr('style', "margin-top: -0px !important; padding-top: 0px !important;"); } }); window.dispatchEvent(new Event('resize')); }); </script> <div class="notification-banner row-fluid new"> <div class="page-center"> <p>Webinar on Mar 19th: Emergency Response & Wildfire Real-Time Analysis </p> <a class="notification-banner__button" href="https://cratedb.com/resources/webinars/lp-wb-wildfire-real-time-analysis-with-datamax" target="_blank">Register now</a> <div id="notif-close" class=""> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 352 512" width="11"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M242.7 256l100.1-100.1c12.3-12.3 12.3-32.2 0-44.5l-22.2-22.2c-12.3-12.3-32.2-12.3-44.5 0L176 189.3 75.9 89.2c-12.3-12.3-32.2-12.3-44.5 0L9.2 111.5c-12.3 12.3-12.3 32.2 0 44.5L109.3 256 9.2 356.1c-12.3 12.3-12.3 32.2 0 44.5l22.2 22.2c12.3 12.3 32.2 12.3 44.5 0L176 322.7l100.1 100.1c12.3 12.3 32.2 12.3 44.5 0l22.2-22.2c12.3-12.3 12.3-32.2 0-44.5L242.7 256z"></path></svg> </div> </div> </div> </div> </div> <header class="sb-header header-nav" id="top"> <div class="sb-header__inner sb-page-width"> <div class="container-fluid"> <div class="navbar w-nav" data-animation="default" data-collapse="small" data-contain="1" data-duration="400"> <a class="brand w-nav-brand" href="/" title="cratedb.com"> <svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 218 36" width="218" height="36" alt="CrateDB Logo" loading="lazy" class="cr-cratedb-logo"> <defs> <clipPath clipPathUnits="userSpaceOnUse" id="crp1"> <path d="m1.49 3.63h7.31v7.31h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp2"> <path d="m1.49 14.6h18.28v7.31h-18.28z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp3"> <path d="m12.46 3.63h7.31v7.31h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp4"> <path d="m1.49 25.57h29.25v7.31h-29.25z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp5"> <path d="m23.43 3.63h7.31v18.28h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp6"> <path d="m45.37 6.07h24.45v24.46h-24.45z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp7"> <path d="m45.37 12.16v12.19c0 1.62 0.64 3.17 1.78 4.31 1.15 1.14 2.7 1.78 4.31 1.78h18.29v-4.87h-19.5v-14.63h19.5v-4.87h-18.29c-1.61 0-3.16 0.64-4.31 1.78-1.14 1.14-1.78 2.69-1.78 4.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp8"> <path d="m75.23 12.15h14.06v18.38h-14.06z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp9"> <path d="m80.08 15.21h-0.58l-0.61-3.05h-3.66v18.28h4.88v-11.58c0-0.64 0.26-1.26 0.71-1.72 0.46-0.46 1.08-0.71 1.73-0.71h6.7v-4.27h-6.09q-0.61-0.01-1.18 0.22-0.57 0.23-1 0.66-0.43 0.43-0.67 0.99-0.23 0.57-0.23 1.18z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp10"> <path d="m91.51 12.15h20.15v18.38h-20.15z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp11"> <path d="m108.58 12.52q0.9 0.36 1.6 1.05 0.69 0.69 1.07 1.59 0.38 0.9 0.38 1.88v13.4h-3.66l-0.61-2.43h-0.61c0 0.64-0.25 1.26-0.71 1.72-0.46 0.46-1.08 0.71-1.73 0.71h-7.02q-1.11 0.05-2.16-0.34-1.05-0.39-1.87-1.15-0.81-0.77-1.27-1.79-0.46-1.02-0.48-2.14c0.03-1.42 0.62-2.76 1.64-3.74 1.02-0.99 2.39-1.53 3.8-1.5h9.75v-3.66h-12.79v-3.96h12.78q0.98-0.01 1.89 0.36zm-3.72 14.27c0.49 0 0.96-0.2 1.3-0.54 0.34-0.34 0.54-0.81 0.54-1.29v-1.83h-8.83c-0.49 0-0.95 0.19-1.3 0.54-0.34 0.34-0.53 0.8-0.53 1.29 0 0.48 0.19 0.94 0.53 1.29 0.34 0.34 0.8 0.53 1.29 0.54h7z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp12"> <path d="m115.46 6.07h15.93v24.46h-15.93z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp13"> <path d="m125.21 6.07h-4.88v6.09h-4.87v4.27h4.87v8.53c0.05 1.48 0.67 2.88 1.75 3.91 1.07 1.02 2.5 1.58 3.98 1.55h5.24v-4.24h-6.09v-9.75h6.09v-4.27h-6.09z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp14"> <path d="m134.96 12.16h20.15v18.37h-20.15z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp15"> <path d="m153.29 13.95c1.14 1.14 1.78 2.69 1.78 4.3v4.88h-15.23v3.35h14.01v3.96h-12.8c-1.61 0-3.16-0.64-4.31-1.78-1.14-1.14-1.78-2.69-1.78-4.31v-6.1c0-1.61 0.64-3.16 1.78-4.3 1.15-1.15 2.7-1.79 4.31-1.79h7.93c1.61 0 3.16 0.64 4.31 1.79zm-2.47 5.83v-1.84c-0.01-0.48-0.2-0.95-0.54-1.29-0.35-0.34-0.81-0.53-1.29-0.53h-7.32c-0.48 0-0.94 0.2-1.29 0.54-0.34 0.34-0.53 0.81-0.53 1.29v1.83z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp16"> <path d="m159.95 6.07h25.58v24.46h-25.58z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp17"> <path d="m183.04 8.56c1.61 1.61 2.5 3.78 2.5 6.04v7.31c0 2.26-0.9 4.43-2.5 6.03-1.59 1.61-3.77 2.5-6.03 2.5h-17.06v-24.37h17.06c2.26 0 4.43 0.89 6.03 2.49zm-2.37 6.04c0-0.97-0.38-1.9-1.07-2.59-0.69-0.68-1.62-1.07-2.59-1.07h-12.19v14.63h12.19c0.97 0 1.9-0.39 2.59-1.07 0.68-0.69 1.07-1.62 1.07-2.59v-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp18"> <path d="m190.42 6.13h26.82v24.4h-26.82z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="crp19"> <path d="m216.99 21.36c0.37 1.44 0.29 2.97-0.22 4.37-0.52 1.4-1.45 2.6-2.68 3.46-1.22 0.85-2.68 1.31-4.17 1.32h-19.5v-24.38h18.28c1.34 0 2.65 0.37 3.8 1.06 1.14 0.7 2.07 1.7 2.69 2.88 0.61 1.19 0.89 2.53 0.8 3.86-0.09 1.34-0.55 2.62-1.31 3.72 1.13 0.97 1.93 2.26 2.31 3.71zm-21.69-5.54h13.4c0.65 0 1.27-0.26 1.73-0.72 0.46-0.45 0.71-1.07 0.71-1.72 0-0.65-0.26-1.27-0.71-1.72-0.46-0.46-1.08-0.72-1.73-0.72h-13.4zm16.34 8.83c0.44-0.5 0.68-1.15 0.68-1.82 0-0.67-0.24-1.32-0.68-1.82-0.44-0.51-1.05-0.83-1.72-0.92h-14.62v5.48h14.62c0.67-0.09 1.28-0.41 1.72-0.92z" /> </clipPath> </defs> <style> .a { fill: #19c0ea } </style> <g clip-path="url(#crp1)"> <path class="a" d="m1.5 3.6h7.3v7.3h-7.3z" /> </g> <g clip-path="url(#crp2)"> <path class="a" d="m1.5 14.6h18.3v7.3h-18.3z" /> </g> <g clip-path="url(#crp3)"> <path class="a" d="m12.5 3.6h7.2v7.3h-7.2z" /> </g> <g clip-path="url(#crp4)"> <path class="a" d="m1.5 25.6h29.3v7.2h-29.3z" /> </g> <g clip-path="url(#crp5)"> <path class="a" d="m23.4 3.6h7.3v18.3h-7.3z" /> </g> <g class="cratedb"> <g clip-path="url(#crp6)"> <g clip-path="url(#crp7)"> <path d="m45.4 6.1h24.3v24.3h-24.3z" /> </g> </g> <g clip-path="url(#crp8)"> <g clip-path="url(#crp9)"> <path d="m75.2 12.2h14.1v18.2h-14.1z" /> </g> </g> <g clip-path="url(#crp10)"> <g clip-path="url(#crp11)"> <path d="m91.5 12.2h20.2v18.2h-20.2z" /> </g> </g> <g clip-path="url(#crp12)"> <g clip-path="url(#crp13)"> <path d="m115.5 6.1h15.8v24.3h-15.8z" /> </g> </g> <g clip-path="url(#crp14)"> <g clip-path="url(#crp15)"> <path d="m135 12.2h20.1v18.2h-20.1z" /> </g> </g> <g clip-path="url(#crp16)"> <g clip-path="url(#crp17)"> <path d="m159.9 6.1h25.6v24.3h-25.6z" /> </g> </g> <g clip-path="url(#crp18)"> <g clip-path="url(#crp19)"> <path d="m190.4 6.1h27v24.4h-27z" /> </g> </g> </g> </svg> </a> <nav class="w-nav-menu main-nav" role="navigation"> <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-WHMDSK" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> <ul id="menu-main-navigation" class="menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children navlink w-nav-link"> <a class="menu-link" href="javascript:;">Product</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children navlink w-nav-link"> <a class="menu-link" href="javascript:;">Database</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/database">Overview</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/database/sql-examples">SQL examples</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/database/integrations">Integrations</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/database/security">Security</a> </li> </ul> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children navlink w-nav-link"> <a class="menu-link" href="javascript:;">Data models</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/data-model/time-series">Time-series</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/data-model/json">Document/JSON</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/data-model/vector">Vector</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/data-model/full-text">Full-text</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/data-model/geospatial">Spatial</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/data-model/relational">Relational</a> </li> </ul> </li> </ul> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children navlink w-nav-link"> <a class="menu-link" href="javascript:;">Use cases</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/use-cases/real-time-analytics-database">Real-time analytics</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/use-cases/hybrid-search">Hybrid search</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/use-cases/ai-ml-database">AI/ML integration</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/use-cases/chatbots">AI-powered chatbots</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/use-cases/iot-database">Internet of Things</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/use-cases/geospatial-analytics">Geospatial analytics</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/use-cases/log-database">Log & event analysis</a> </li> </ul> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children navlink w-nav-link"> <a class="menu-link" href="javascript:;">Industries</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/energy">Energy</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/financial-services">Financial Services</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/fmcg">FMCG</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/logistics">Logistics</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/manufacturing">Manufacturing</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/oil-gas-mining">Oil, gas & mining</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/smart-cities">Smart city solutions</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/tech-platforms">Technology platforms</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/telco">Telco</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/industries/transportation">Transportation</a> </li> </ul> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children navlink w-nav-link"> <a class="menu-link" href="javascript:;">Resources</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/stories">Customer stories</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/academy">Academy</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/library">Asset library</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/blog">Blog</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/event">Events</a> </li> </ul> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children navlink w-nav-link"> <a class="menu-link" href="javascript:;">Developer</a> <ul class="sub-menu"> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="/docs/guide/home/">Documentation</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/database/drivers-tools">Drivers and tools</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/community">Community</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://github.com/crate/crate/" target="_blank" rel="noopener">GitHub</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/support">Support</a> </li> </ul> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/pricing">Pricing</a> </li> <li class="menu-item menu-item-type-post_type menu-item-object-page navlink w-nav-link"> <a class="menu-link" target="_blank" rel="noreferrer" href="https://console.cratedb.cloud/?utm_source=website&utm_medium=mainnav&utm_campaign=cratedbcloud">Login</a> </li> <li class="nav-highlight cr-menu-btn menu-item navlink w-nav-link"> <a class="menu-link" href="https://cratedb.com/product/get-started/">Get Started</a> </li> </ul> </nav> </div> </div> </div> </header> <input type="checkbox" class="sb-sidebar-toggle" name="sb-sidebar-toggle--primary" id="sb-sidebar-toggle--primary"> <input type="checkbox" class="sb-sidebar-toggle" name="sb-sidebar-toggle--secondary" id="sb-sidebar-toggle--secondary"> <label class="sb-sidebar-overlay" for="sb-sidebar-toggle--primary"></label> <label class="sb-sidebar-overlay" for="sb-sidebar-toggle--secondary"></label> <div class="sb-container"> <div class="sb-container__inner sb-page-width"> <aside class="sb-sidebar-primary"> <div class="sidebar-drawer"> <div class="sidebar-container"> <div class="sidebar-sticky"> <!-- Section 1 <div class="sidebar-tree"> </div> --> <!-- Section 2 --> <div role="complementary" class="bs-docs-sidebar hidden-print"> <nav class="bs-docs-sidenav bs-sidenav nav" role="complementary"> <ul class="toctree nav nav-list"> <!-- Search. --> <li> <div class="search-link"> <div id="docsearch" style="min-height: 36px; margin-bottom: 20px;"></div> </div> </li> <!-- Home. --> <li class="navleft-item"><a href="/docs/guide/home/">Docs Home</a></li> <!-- Section A. --> <li class="navleft-item"><a href="/docs/cloud/">CrateDB Cloud</a></li> <li class="navleft-item"><a href="/docs/guide/">Guides and Tutorials</a></li> <li class="current"> <a class="current-active" href="../index.html">Reference Manual</a> <ul class="current"> <li class="toctree-l1"><a class="reference internal" href="../concepts/index.html">Concepts</a></li> <li class="toctree-l1"><a class="reference internal" href="../cli-tools.html">CLI tools</a></li> <li class="toctree-l1 current"><a class="reference internal" href="index.html">Configuration</a><ul class="current"> <li class="toctree-l2 current"><a class="current reference internal" href="#">Node-specific settings</a><ul> <li class="toctree-l3"><a class="reference internal" href="#basics">Basics</a></li> <li class="toctree-l3"><a class="reference internal" href="#node-types">Node types</a></li> <li class="toctree-l3"><a class="reference internal" href="#general">General</a></li> <li class="toctree-l3"><a class="reference internal" href="#networking">Networking</a></li> <li class="toctree-l3"><a class="reference internal" href="#paths">Paths</a></li> <li class="toctree-l3"><a class="reference internal" href="#plug-ins">Plug-ins</a></li> <li class="toctree-l3"><a class="reference internal" href="#cpu">CPU</a></li> <li class="toctree-l3"><a class="reference internal" href="#memory">Memory</a></li> <li class="toctree-l3"><a class="reference internal" href="#garbage-collection">Garbage collection</a></li> <li class="toctree-l3"><a class="reference internal" href="#authentication">Authentication</a></li> <li class="toctree-l3"><a class="reference internal" href="#secured-communications-ssl-tls">Secured communications (SSL/TLS)</a></li> <li class="toctree-l3"><a class="reference internal" href="#cross-origin-resource-sharing-cors">Cross-origin resource sharing (CORS)</a></li> <li class="toctree-l3"><a class="reference internal" href="#blobs">Blobs</a></li> <li class="toctree-l3"><a class="reference internal" href="#repositories">Repositories</a></li> <li class="toctree-l3"><a class="reference internal" href="#queries">Queries</a></li> <li class="toctree-l3"><a class="reference internal" href="#legacy">Legacy</a></li> <li class="toctree-l3"><a class="reference internal" href="#javascript-language">JavaScript language</a></li> <li class="toctree-l3"><a class="reference internal" href="#foreign-data-wrappers">Foreign Data Wrappers</a></li> <li class="toctree-l3"><a class="reference internal" href="#custom-attributes">Custom attributes</a></li> </ul> </li> <li class="toctree-l2"><a class="reference internal" href="cluster.html">Cluster-wide settings</a></li> <li class="toctree-l2"><a class="reference internal" href="session.html">Session settings</a></li> <li class="toctree-l2"><a class="reference internal" href="logging.html">Logging</a></li> <li class="toctree-l2"><a class="reference internal" href="environment.html">Environment variables</a></li> </ul> </li> <li class="toctree-l1"><a class="reference internal" href="../general/index.html">General use</a></li> <li class="toctree-l1"><a class="reference internal" href="../admin/index.html">Administration</a></li> <li class="toctree-l1"><a class="reference internal" href="../sql/index.html">SQL syntax</a></li> <li class="toctree-l1"><a class="reference internal" href="../interfaces/index.html">Client interfaces</a></li> <li class="toctree-l1"><a class="reference internal" href="../appendices/index.html">Appendices</a></li> </ul> </li> <!-- Section B. --> <li class="navleft-item border-top"><a href="/docs/crate/admin-ui/">Admin UI</a></li> <li class="navleft-item"><a href="/docs/crate/crash/">CrateDB CLI</a></li> <li class="navleft-item"><a href="/docs/cloud/cli/">Cloud CLI</a></li> <li class="navleft-item"> <a href="/docs/crate/clients-tools/">Drivers and Integrations</a> </li> <!-- Section D. --> <li class="navleft-item border-top"><a target="_blank" href="/support/">Support</a></li> <li class="navleft-item"><a target="_blank" href="https://community.cratedb.com/">Community</a></li> <li class="navleft-item"><a target="_blank" href="https://community.cratedb.com/t/overview-of-cratedb-integration-tutorials/1015">Integration Tutorials</a></li> <li class="navleft-item"><a target="_blank" href="https://github.com/crate/crate-sample-apps">Sample Applications</a></li> <li class="navleft-item"><a target="_blank" href="https://learn.cratedb.com">Academy</a></li> <!-- Section E. --> </ul> <ul class="toctree"> <li></li> </ul> </nav> </div> </div> </div> </div> </aside> <main class="sb-main"> <header class="sb-header-content"> <div class="sb-header-content__inner"> <div class="container-header"> <header class="mobile-header"> <div class="header-center"> <a class="brand w-nav-brand" href="/" title="cratedb.com"> <svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 218 36" width="218" height="36" alt="CrateDB Logo" class="cr-cratedb-logo"> <defs> <clipPath clipPathUnits="userSpaceOnUse" id="cp1"> <path d="m1.49 3.63h7.31v7.31h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp2"> <path d="m1.49 14.6h18.28v7.31h-18.28z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp3"> <path d="m12.46 3.63h7.31v7.31h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp4"> <path d="m1.49 25.57h29.25v7.31h-29.25z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp5"> <path d="m23.43 3.63h7.31v18.28h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp6"> <path d="m45.37 6.07h24.45v24.46h-24.45z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp7"> <path d="m45.37 12.16v12.19c0 1.62 0.64 3.17 1.78 4.31 1.15 1.14 2.7 1.78 4.31 1.78h18.29v-4.87h-19.5v-14.63h19.5v-4.87h-18.29c-1.61 0-3.16 0.64-4.31 1.78-1.14 1.14-1.78 2.69-1.78 4.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp8"> <path d="m75.23 12.15h14.06v18.38h-14.06z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp9"> <path d="m80.08 15.21h-0.58l-0.61-3.05h-3.66v18.28h4.88v-11.58c0-0.64 0.26-1.26 0.71-1.72 0.46-0.46 1.08-0.71 1.73-0.71h6.7v-4.27h-6.09q-0.61-0.01-1.18 0.22-0.57 0.23-1 0.66-0.43 0.43-0.67 0.99-0.23 0.57-0.23 1.18z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp10"> <path d="m91.51 12.15h20.15v18.38h-20.15z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp11"> <path d="m108.58 12.52q0.9 0.36 1.6 1.05 0.69 0.69 1.07 1.59 0.38 0.9 0.38 1.88v13.4h-3.66l-0.61-2.43h-0.61c0 0.64-0.25 1.26-0.71 1.72-0.46 0.46-1.08 0.71-1.73 0.71h-7.02q-1.11 0.05-2.16-0.34-1.05-0.39-1.87-1.15-0.81-0.77-1.27-1.79-0.46-1.02-0.48-2.14c0.03-1.42 0.62-2.76 1.64-3.74 1.02-0.99 2.39-1.53 3.8-1.5h9.75v-3.66h-12.79v-3.96h12.78q0.98-0.01 1.89 0.36zm-3.72 14.27c0.49 0 0.96-0.2 1.3-0.54 0.34-0.34 0.54-0.81 0.54-1.29v-1.83h-8.83c-0.49 0-0.95 0.19-1.3 0.54-0.34 0.34-0.53 0.8-0.53 1.29 0 0.48 0.19 0.94 0.53 1.29 0.34 0.34 0.8 0.53 1.29 0.54h7z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp12"> <path d="m115.46 6.07h15.93v24.46h-15.93z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp13"> <path d="m125.21 6.07h-4.88v6.09h-4.87v4.27h4.87v8.53c0.05 1.48 0.67 2.88 1.75 3.91 1.07 1.02 2.5 1.58 3.98 1.55h5.24v-4.24h-6.09v-9.75h6.09v-4.27h-6.09z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp14"> <path d="m134.96 12.16h20.15v18.37h-20.15z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp15"> <path d="m153.29 13.95c1.14 1.14 1.78 2.69 1.78 4.3v4.88h-15.23v3.35h14.01v3.96h-12.8c-1.61 0-3.16-0.64-4.31-1.78-1.14-1.14-1.78-2.69-1.78-4.31v-6.1c0-1.61 0.64-3.16 1.78-4.3 1.15-1.15 2.7-1.79 4.31-1.79h7.93c1.61 0 3.16 0.64 4.31 1.79zm-2.47 5.83v-1.84c-0.01-0.48-0.2-0.95-0.54-1.29-0.35-0.34-0.81-0.53-1.29-0.53h-7.32c-0.48 0-0.94 0.2-1.29 0.54-0.34 0.34-0.53 0.81-0.53 1.29v1.83z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp16"> <path d="m159.95 6.07h25.58v24.46h-25.58z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp17"> <path d="m183.04 8.56c1.61 1.61 2.5 3.78 2.5 6.04v7.31c0 2.26-0.9 4.43-2.5 6.03-1.59 1.61-3.77 2.5-6.03 2.5h-17.06v-24.37h17.06c2.26 0 4.43 0.89 6.03 2.49zm-2.37 6.04c0-0.97-0.38-1.9-1.07-2.59-0.69-0.68-1.62-1.07-2.59-1.07h-12.19v14.63h12.19c0.97 0 1.9-0.39 2.59-1.07 0.68-0.69 1.07-1.62 1.07-2.59v-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp18"> <path d="m190.42 6.13h26.82v24.4h-26.82z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cp19"> <path d="m216.99 21.36c0.37 1.44 0.29 2.97-0.22 4.37-0.52 1.4-1.45 2.6-2.68 3.46-1.22 0.85-2.68 1.31-4.17 1.32h-19.5v-24.38h18.28c1.34 0 2.65 0.37 3.8 1.06 1.14 0.7 2.07 1.7 2.69 2.88 0.61 1.19 0.89 2.53 0.8 3.86-0.09 1.34-0.55 2.62-1.31 3.72 1.13 0.97 1.93 2.26 2.31 3.71zm-21.69-5.54h13.4c0.65 0 1.27-0.26 1.73-0.72 0.46-0.45 0.71-1.07 0.71-1.72 0-0.65-0.26-1.27-0.71-1.72-0.46-0.46-1.08-0.72-1.73-0.72h-13.4zm16.34 8.83c0.44-0.5 0.68-1.15 0.68-1.82 0-0.67-0.24-1.32-0.68-1.82-0.44-0.51-1.05-0.83-1.72-0.92h-14.62v5.48h14.62c0.67-0.09 1.28-0.41 1.72-0.92z" /> </clipPath> </defs> <style> .a { fill: #19c0ea } </style> <g clip-path="url(#cp1)"> <path class="a" d="m1.5 3.6h7.3v7.3h-7.3z" /> </g> <g clip-path="url(#cp2)"> <path class="a" d="m1.5 14.6h18.3v7.3h-18.3z" /> </g> <g clip-path="url(#cp3)"> <path class="a" d="m12.5 3.6h7.2v7.3h-7.2z" /> </g> <g clip-path="url(#cp4)"> <path class="a" d="m1.5 25.6h29.3v7.2h-29.3z" /> </g> <g clip-path="url(#cp5)"> <path class="a" d="m23.4 3.6h7.3v18.3h-7.3z" /> </g> <g class="cratedb"> <g clip-path="url(#cp6)"> <g clip-path="url(#cp7)"> <path d="m45.4 6.1h24.3v24.3h-24.3z" /> </g> </g> <g clip-path="url(#cp8)"> <g clip-path="url(#cp9)"> <path d="m75.2 12.2h14.1v18.2h-14.1z" /> </g> </g> <g clip-path="url(#cp10)"> <g clip-path="url(#cp11)"> <path d="m91.5 12.2h20.2v18.2h-20.2z" /> </g> </g> <g clip-path="url(#cp12)"> <g clip-path="url(#cp13)"> <path d="m115.5 6.1h15.8v24.3h-15.8z" /> </g> </g> <g clip-path="url(#cp14)"> <g clip-path="url(#cp15)"> <path d="m135 12.2h20.1v18.2h-20.1z" /> </g> </g> <g clip-path="url(#cp16)"> <g clip-path="url(#cp17)"> <path d="m159.9 6.1h25.6v24.3h-25.6z" /> </g> </g> <g clip-path="url(#cp18)"> <g clip-path="url(#cp19)"> <path d="m190.4 6.1h27v24.4h-27z" /> </g> </g> </g> </svg> </a> </div> </header> </div> </div> </header> <div class="sb-content"> <div class="sb-article-container container-fluid"> <header class="sb-header-article"> <div class="sidebar-container-primary"> <label for="sb-sidebar-toggle--primary" class="hide-when-primary-sidebar-shown" role="button"> <i class="icon" title="Toggle site navigation sidebar"><svg><use href="#svg-menu"></use></svg></i> </label> </div> <div class="sidebar-container-secondary"> <label for="sb-sidebar-toggle--secondary" class="hide-when-secondary-sidebar-shown" role="button"> <i class="icon" title="Toggle table of contents sidebar"><svg><use href="#svg-toc"></use></svg></i> </label> </div> </header> <article class="sb-article" role="main" id="main-content"> <section id="node-specific-settings"> <span id="conf-node-settings"></span><h1>Node-specific settings<a class="headerlink" href="#node-specific-settings" title="Permalink to this heading">露</a></h1> <p class="rubric">Table of contents</p> <nav class="contents local" id="contents"> <ul class="simple"> <li><p><a class="reference internal" href="#basics" id="id1">Basics</a></p></li> <li><p><a class="reference internal" href="#node-types" id="id2">Node types</a></p></li> <li><p><a class="reference internal" href="#general" id="id3">General</a></p></li> <li><p><a class="reference internal" href="#networking" id="id4">Networking</a></p> <ul> <li><p><a class="reference internal" href="#hosts" id="id5">Hosts</a></p></li> <li><p><a class="reference internal" href="#ports" id="id6">Ports</a></p></li> <li><p><a class="reference internal" href="#advanced-tcp-settings" id="id7">Advanced TCP settings</a></p></li> <li><p><a class="reference internal" href="#transport-settings" id="id8">Transport settings</a></p></li> </ul> </li> <li><p><a class="reference internal" href="#paths" id="id9">Paths</a></p></li> <li><p><a class="reference internal" href="#plug-ins" id="id10">Plug-ins</a></p></li> <li><p><a class="reference internal" href="#cpu" id="id11">CPU</a></p></li> <li><p><a class="reference internal" href="#memory" id="id12">Memory</a></p></li> <li><p><a class="reference internal" href="#garbage-collection" id="id13">Garbage collection</a></p></li> <li><p><a class="reference internal" href="#authentication" id="id14">Authentication</a></p> <ul> <li><p><a class="reference internal" href="#trust-authentication" id="id15">Trust authentication</a></p></li> <li><p><a class="reference internal" href="#host-based-authentication" id="id16">Host-based authentication</a></p> <ul> <li><p><a class="reference internal" href="#jwt-based-authentication" id="id17">JWT Based Authentication</a></p></li> <li><p><a class="reference internal" href="#hba-entries" id="id18">HBA entries</a></p></li> </ul> </li> </ul> </li> <li><p><a class="reference internal" href="#secured-communications-ssl-tls" id="id19">Secured communications (SSL/TLS)</a></p></li> <li><p><a class="reference internal" href="#cross-origin-resource-sharing-cors" id="id20">Cross-origin resource sharing (CORS)</a></p></li> <li><p><a class="reference internal" href="#blobs" id="id21">Blobs</a></p></li> <li><p><a class="reference internal" href="#repositories" id="id22">Repositories</a></p></li> <li><p><a class="reference internal" href="#queries" id="id23">Queries</a></p></li> <li><p><a class="reference internal" href="#legacy" id="id24">Legacy</a></p></li> <li><p><a class="reference internal" href="#javascript-language" id="id25">JavaScript language</a></p></li> <li><p><a class="reference internal" href="#foreign-data-wrappers" id="id26">Foreign Data Wrappers</a></p></li> <li><p><a class="reference internal" href="#custom-attributes" id="id27">Custom attributes</a></p></li> </ul> </nav> <section id="basics"> <h2><a class="toc-backref" href="#id1" role="doc-backlink">Basics</a><a class="headerlink" href="#basics" title="Permalink to this heading">露</a></h2> <dl id="cluster-name"> <dt><strong>cluster.name</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">crate</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The name of the CrateDB cluster the node should join to.</p> </dd> </dl> <dl id="node-name"> <dt><strong>node.name</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The name of the node. If no name is configured a random one will be generated.</p> <div class="admonition note"> <p class="admonition-title">Note</p> <p>Node names must be unique in a CrateDB cluster.</p> </div> </dd> </dl> <dl id="node-store-allow-mmap"> <dt><strong>node.store.allow_mmap</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">true</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The setting indicates whether or not memory-mapping is allowed.</p> </dd> </dl> </section> <section id="node-types"> <h2><a class="toc-backref" href="#id2" role="doc-backlink">Node types</a><a class="headerlink" href="#node-types" title="Permalink to this heading">露</a></h2> <p>CrateDB supports different types of nodes.</p> <p>The following settings can be used to differentiate nodes upon startup:</p> <dl id="node-master"> <dt><strong>node.master</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">true</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Whether or not this node is able to get elected as <em>master</em> node in the cluster.</p> </dd> </dl> <dl id="node-data"> <dt><strong>node.data</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">true</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Whether or not this node will store data.</p> </dd> </dl> <p>Using different combinations of these two settings, you can create four different types of node. Each type of node is differentiated by what types of load it will handle.</p> <p>Tabulating the truth values for <code class="docutils literal notranslate"><span class="pre">node.master</span></code> and <code class="docutils literal notranslate"><span class="pre">node.data</span></code> produces a truth table outlining the four different types of node:</p> <table class="docutils align-default"> <tbody> <tr class="row-odd"><td></td> <td><p><strong>Master</strong></p></td> <td><p><strong>No master</strong></p></td> </tr> <tr class="row-even"><td><p><strong>Data</strong></p></td> <td><p>Handle all loads.</p></td> <td><p>Handles client requests and query execution.</p></td> </tr> <tr class="row-odd"><td><p><strong>No data</strong></p></td> <td><p>Handles cluster management.</p></td> <td><p>Handles client requests.</p></td> </tr> </tbody> </table> <p>Nodes marked as <code class="docutils literal notranslate"><span class="pre">node.master</span></code> will only handle cluster management if they are elected as the cluster master. All other loads are shared equally.</p> </section> <section id="general"> <h2><a class="toc-backref" href="#id3" role="doc-backlink">General</a><a class="headerlink" href="#general" title="Permalink to this heading">露</a></h2> <dl id="node-sql-read-only"> <dt><strong>node.sql.read_only</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>If set to <code class="docutils literal notranslate"><span class="pre">true</span></code>, the node will only allow SQL statements which are resulting in read operations.</p> </dd> </dl> <dl id="statement-timeout"> <dt><strong>statement_timeout</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">0</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">yes</span></code></div> </div> <p>The maximum duration of any statement before it gets cancelled.</p> <p>This value is used as default value for the <a class="reference internal" href="session.html#conf-session-statement-timeout"><span class="std std-ref">statement_timeout session setting</span></a></p> <p>If <code class="docutils literal notranslate"><span class="pre">0</span></code> queries are allowed to run infinitely and don鈥檛 get cancelled automatically.</p> </dd> </dl> <div class="admonition note"> <p class="admonition-title">Note</p> <p>Updating this setting won鈥檛 affect existing sessions, it will only take effect for new sessions.</p> </div> </section> <section id="networking"> <h2><a class="toc-backref" href="#id4" role="doc-backlink">Networking</a><a class="headerlink" href="#networking" title="Permalink to this heading">露</a></h2> <section id="hosts"> <span id="conf-hosts"></span><h3><a class="toc-backref" href="#id5" role="doc-backlink">Hosts</a><a class="headerlink" href="#hosts" title="Permalink to this heading">露</a></h3> <dl id="network-host"> <dt><strong>network.host</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">_local_</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The IP address CrateDB will bind itself to. This setting sets both the <a class="reference internal" href="#network-bind-host">network.bind_host</a> and <a class="reference internal" href="#network-publish-host">network.publish_host</a> values.</p> </dd> </dl> <dl id="network-bind-host"> <dt><strong>network.bind_host</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">_local_</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>This setting determines to which address CrateDB should bind itself to.</p> </dd> </dl> <dl id="network-publish-host"> <dt><strong>network.publish_host</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">_local_</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>This setting is used by a CrateDB node to publish its own address to the rest of the cluster.</p> </dd> </dl> <div class="admonition tip"> <p class="admonition-title">Tip</p> <p>Apart from IPv4 and IPv6 addresses there are some special values that can be used for all above settings:</p> <table class="docutils align-default"> <tbody> <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">_local_</span></code></p></td> <td><p>Any loopback addresses on the system, for example <code class="docutils literal notranslate"><span class="pre">127.0.0.1</span></code>.</p></td> </tr> <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">_site_</span></code></p></td> <td><p>Any site-local addresses on the system, for example <code class="docutils literal notranslate"><span class="pre">192.168.0.1</span></code>.</p></td> </tr> <tr class="row-odd"><td><p><code class="docutils literal notranslate"><span class="pre">_global_</span></code></p></td> <td><p>Any globally-scoped addresses on the system, for example <code class="docutils literal notranslate"><span class="pre">8.8.8.8</span></code>.</p></td> </tr> <tr class="row-even"><td><p><code class="docutils literal notranslate"><span class="pre">_[INTERFACE]_</span></code></p></td> <td><p>Addresses of a network interface, for example <code class="docutils literal notranslate"><span class="pre">_en0_</span></code>.</p></td> </tr> </tbody> </table> </div> </section> <section id="ports"> <span id="conf-ports"></span><h3><a class="toc-backref" href="#id6" role="doc-backlink">Ports</a><a class="headerlink" href="#ports" title="Permalink to this heading">露</a></h3> <dl id="http-port"> <dt><strong>http.port</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>This defines the TCP port range to which the CrateDB HTTP service will be bound to. It defaults to <code class="docutils literal notranslate"><span class="pre">4200-4300</span></code>. Always the first free port in this range is used. If this is set to an integer value it is considered as an explicit single port.</p> <p>The HTTP protocol is used for the REST endpoint which is used by all clients except the Java client.</p> </dd> </dl> <dl id="http-publish-port"> <dt><strong>http.publish_port</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The port HTTP clients should use to communicate with the node. It is necessary to define this setting if the bound HTTP port (<code class="docutils literal notranslate"><span class="pre">http.port</span></code>) of the node is not directly reachable from outside, e.g. running it behind a firewall or inside a Docker container.</p> </dd> </dl> <dl id="transport-tcp-port"> <dt><strong>transport.tcp.port</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>This defines the TCP port range to which the CrateDB transport service will be bound to. It defaults to <code class="docutils literal notranslate"><span class="pre">4300-4400</span></code>. Always the first free port in this range is used. If this is set to an integer value it is considered as an explicit single port.</p> <p>The transport protocol is used for internal node-to-node communication.</p> </dd> </dl> <dl id="transport-publish-port"> <dt><strong>transport.publish_port</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The port that the node publishes to the cluster for its own discovery. It is necessary to define this setting when the bound tranport port (<code class="docutils literal notranslate"><span class="pre">transport.tcp.port</span></code>) of the node is not directly reachable from outside, e.g. running it behind a firewall or inside a Docker container.</p> </dd> </dl> <dl id="psql-port"> <dt><strong>psql.port</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>This defines the TCP port range to which the CrateDB Postgres service will be bound to. It defaults to <code class="docutils literal notranslate"><span class="pre">5432-5532</span></code>. Always the first free port in this range is used. If this is set to an integer value it is considered as an explicit single port.</p> </dd> </dl> </section> <section id="advanced-tcp-settings"> <h3><a class="toc-backref" href="#id7" role="doc-backlink">Advanced TCP settings</a><a class="headerlink" href="#advanced-tcp-settings" title="Permalink to this heading">露</a></h3> <p>Any interface that uses TCP (Postgres wire, HTTP & Transport protocols) shares the following settings:</p> <dl id="network-tcp-no-delay"> <dt><strong>network.tcp.no_delay</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">true</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Enable or disable the <a class="reference external" href="https://en.wikipedia.org/wiki/Nagle%27s_algorithm">Nagle鈥檚 algorithm</a> for buffering TCP packets. Buffering is disabled by default.</p> </dd> </dl> <dl id="network-tcp-keep-alive"> <dt><strong>network.tcp.keep_alive</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">true</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Configures the <code class="docutils literal notranslate"><span class="pre">SO_KEEPALIVE</span></code> option for sockets, which determines whether they send TCP keepalive probes.</p> </dd> </dl> <dl id="network-tcp-reuse-address"> <dt><strong>network.tcp.reuse_address</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">true</span></code> on non-windows machines and <code class="docutils literal notranslate"><span class="pre">false</span></code> otherwise</div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <blockquote> <div><p>Configures the <code class="docutils literal notranslate"><span class="pre">SO_REUSEADDRS</span></code> option for sockets, which determines whether they should reuse the address.</p> </div></blockquote> </dd> </dl> <dl id="network-tcp-send-buffer-size"> <dt><strong>network.tcp.send_buffer_size</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">-1</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The size of the TCP send buffer (<a class="reference external" href="https://docs.oracle.com/javase/7/docs/api/java/net/StandardSocketOptions.html#SO_SNDBUF">SO_SNDBUF</a> socket option). By default not explicitly set.</p> </dd> </dl> <dl id="network-tcp-receive-buffer-size"> <dt><strong>network.tcp.receive_buffer_size</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">-1</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The size of the TCP receive buffer (<a class="reference external" href="https://docs.oracle.com/javase/7/docs/api/java/net/StandardSocketOptions.html#SO_RCVBUF">SO_RCVBUF</a> socket option). By default not explicitly set.</p> </dd> </dl> <div class="admonition note"> <p class="admonition-title">Note</p> <p>Each setting in this section has its counterpart for HTTP and transport. To provide a protocol specific setting, remove <code class="docutils literal notranslate"><span class="pre">network</span></code> prefix and use either <code class="docutils literal notranslate"><span class="pre">http</span></code> or <code class="docutils literal notranslate"><span class="pre">transport</span></code> instead. For example, no_delay can be configured as <code class="docutils literal notranslate"><span class="pre">http.tcp.no_delay</span></code> and <code class="docutils literal notranslate"><span class="pre">transport.tcp.no_delay</span></code>. Please note, that PG interface takes its settings from transport.</p> </div> </section> <section id="transport-settings"> <h3><a class="toc-backref" href="#id8" role="doc-backlink">Transport settings</a><a class="headerlink" href="#transport-settings" title="Permalink to this heading">露</a></h3> <dl id="transport-connect-timeout"> <dt><strong>transport.connect_timeout</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">30s</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The connect timeout for initiating a new connection.</p> </dd> </dl> <dl id="transport-compress"> <dt><strong>transport.compress</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Set to <cite>true</cite> to enable compression (DEFLATE) between all nodes.</p> </dd> </dl> <dl id="transport-ping-schedule"> <dt><strong>transport.ping_schedule</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">-1</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Schedule a regular application-level ping message to ensure that transport connections between nodes are kept alive. Defaults to <cite>-1</cite> (disabled). It is preferable to correctly configure TCP keep-alives instead of using this feature, because TCP keep-alives apply to all kinds of long-lived connections and not just to transport connections.</p> </dd> </dl> </section> </section> <section id="paths"> <h2><a class="toc-backref" href="#id9" role="doc-backlink">Paths</a><a class="headerlink" href="#paths" title="Permalink to this heading">露</a></h2> <div class="admonition note"> <p class="admonition-title">Note</p> <p>Relative paths are relative to <a class="reference internal" href="environment.html#conf-env-crate-home"><span class="std std-ref">CRATE_HOME</span></a>. Absolute paths override this behavior.</p> </div> <dl id="path-conf"> <dt><strong>path.conf</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">config</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Filesystem path to the directory containing the configuration files <code class="docutils literal notranslate"><span class="pre">crate.yml</span></code> and <code class="docutils literal notranslate"><span class="pre">log4j2.properties</span></code>.</p> </dd> </dl> <dl id="path-data"> <dt><strong>path.data</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">data</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Filesystem path to the directory where this CrateDB node stores its data (table data and cluster metadata).</p> <p>Multiple paths can be set by using a comma separated list and each of these paths will hold full shards (instead of striping data across them). For example:</p> <div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">path.data</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/path/to/data1,/path/to/data2</span> </pre></div> </div> <p>When CrateDB finds striped shards at the provided locations (from CrateDB <0.55.0), these shards will be migrated automatically on startup.</p> </dd> </dl> <dl id="path-logs"> <dt><strong>path.logs</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">logs</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Filesystem path to a directory where log files should be stored.</p> <p>Can be used as a variable inside <code class="docutils literal notranslate"><span class="pre">log4j2.properties</span></code>.</p> <p>For example:</p> <div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">appender</span><span class="p">:</span> <span class="w"> </span><span class="nt">file</span><span class="p">:</span> <span class="w"> </span><span class="nt">file</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">${path.logs}/${cluster.name}.log</span> </pre></div> </div> </dd> </dl> <dl id="path-repo"> <dt><strong>path.repo</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>A list of filesystem or UNC paths where repositories of type <a class="reference internal" href="../sql/statements/create-repository.html#sql-create-repo-fs"><span class="std std-ref">fs</span></a> may be stored.</p> <p>Without this setting a CrateDB user could write snapshot files to any directory that is writable by the CrateDB process. To safeguard against this security issue, the possible paths have to be whitelisted here.</p> <p>See also <a class="reference internal" href="../sql/statements/create-repository.html#sql-create-repo-fs-location"><span class="std std-ref">location</span></a> setting of repository type <code class="docutils literal notranslate"><span class="pre">fs</span></code>.</p> </dd> </dl> <div class="admonition seealso"> <p class="admonition-title">See also</p> <p><a class="reference internal" href="#blobs-path"><span class="std std-ref">blobs.path</span></a></p> </div> </section> <section id="plug-ins"> <h2><a class="toc-backref" href="#id10" role="doc-backlink">Plug-ins</a><a class="headerlink" href="#plug-ins" title="Permalink to this heading">露</a></h2> <dl id="plugin-mandatory"> <dt><strong>plugin.mandatory</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>A list of plug-ins that are required for a node to startup.</p> <p>If any plug-in listed here is missing, the CrateDB node will fail to start.</p> </dd> </dl> </section> <section id="cpu"> <h2><a class="toc-backref" href="#id11" role="doc-backlink">CPU</a><a class="headerlink" href="#cpu" title="Permalink to this heading">露</a></h2> <dl id="processors"> <dt><strong>processors</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The number of processors is used to set the size of the thread pools CrateDB is using appropriately. If not set explicitly, CrateDB will infer the number from the available processors on the system.</p> <p>In environments where the CPU amount can be restricted (like Docker) or when multiple CrateDB instances are running on the same hardware, the inferred number might be too high. In such a case, it is recommended to set the value explicitly.</p> </dd> </dl> </section> <section id="memory"> <h2><a class="toc-backref" href="#id12" role="doc-backlink">Memory</a><a class="headerlink" href="#memory" title="Permalink to this heading">露</a></h2> <dl id="bootstrap-memory-lock"> <dt><strong>bootstrap.memory_lock</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>CrateDB performs poorly when the JVM starts swapping: you should ensure that it <em>never</em> swaps. If set to <code class="docutils literal notranslate"><span class="pre">true</span></code>, CrateDB will use the <code class="docutils literal notranslate"><span class="pre">mlockall</span></code> system call on startup to ensure that the memory pages of the CrateDB process are locked into RAM.</p> </dd> </dl> </section> <section id="garbage-collection"> <h2><a class="toc-backref" href="#id13" role="doc-backlink">Garbage collection</a><a class="headerlink" href="#garbage-collection" title="Permalink to this heading">露</a></h2> <p>CrateDB logs if JVM garbage collection on different memory pools takes too long. The following settings can be used to adjust these timeouts:</p> <dl id="monitor-jvm-gc-collector-young-warn"> <dt><strong>monitor.jvm.gc.collector.young.warn</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">1000ms</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>CrateDB will log a warning message if it takes more than the configured timespan to collect the <em>Eden Space</em> (heap).</p> </dd> </dl> <dl id="monitor-jvm-gc-collector-young-info"> <dt><strong>monitor.jvm.gc.collector.young.info</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">700ms</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>CrateDB will log an info message if it takes more than the configured timespan to collect the <em>Eden Space</em> (heap).</p> </dd> </dl> <dl id="monitor-jvm-gc-collector-young-debug"> <dt><strong>monitor.jvm.gc.collector.young.debug</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">400ms</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>CrateDB will log a debug message if it takes more than the configured timespan to collect the <em>Eden Space</em> (heap).</p> </dd> </dl> <dl id="monitor-jvm-gc-collector-old-warn"> <dt><strong>monitor.jvm.gc.collector.old.warn</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">10000ms</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>CrateDB will log a warning message if it takes more than the configured timespan to collect the <em>Old Gen</em> / <em>Tenured Gen</em> (heap).</p> </dd> </dl> <dl id="monitor-jvm-gc-collector-old-info"> <dt><strong>monitor.jvm.gc.collector.old.info</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">5000ms</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>CrateDB will log an info message if it takes more than the configured timespan to collect the <em>Old Gen</em> / <em>Tenured Gen</em> (heap).</p> </dd> </dl> <dl id="monitor-jvm-gc-collector-old-debug"> <dt><strong>monitor.jvm.gc.collector.old.debug</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">2000ms</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>CrateDB will log a debug message if it takes more than the configured timespan to collect the <em>Old Gen</em> / <em>Tenured Gen</em> (heap).</p> </dd> </dl> </section> <section id="authentication"> <h2><a class="toc-backref" href="#id14" role="doc-backlink">Authentication</a><a class="headerlink" href="#authentication" title="Permalink to this heading">露</a></h2> <section id="trust-authentication"> <span id="host-based-auth"></span><h3><a class="toc-backref" href="#id15" role="doc-backlink">Trust authentication</a><a class="headerlink" href="#trust-authentication" title="Permalink to this heading">露</a></h3> <dl id="auth-trust-http-default-user"> <dt><strong>auth.trust.http_default_user</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">crate</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The default user that should be used for authentication when clients connect to CrateDB via HTTP protocol and they do not specify a user via the <code class="docutils literal notranslate"><span class="pre">Authorization</span></code> request header.</p> </dd> </dl> <dl id="auth-trust-http-support-x-real-ip"> <dt><strong>auth.trust.http_support_x_real_ip</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>If enabled, the HTTP transport will trust the <code class="docutils literal notranslate"><span class="pre">X-Real-IP</span></code> header sent by the client to determine the client鈥檚 IP address. This is useful when CrateDB is running behind a reverse proxy or load-balancer. For improved security, any <code class="docutils literal notranslate"><span class="pre">_local_</span></code> IP address (<code class="docutils literal notranslate"><span class="pre">127.0.0.1</span></code> and <code class="docutils literal notranslate"><span class="pre">::1</span></code>) defined in this header will be ignored.</p> </dd> </dl> <div class="admonition warning"> <p class="admonition-title">Warning</p> <p>Enabling this setting can be a security risk, as it allows clients to impersonate other clients by sending a fake <code class="docutils literal notranslate"><span class="pre">X-Real-IP</span></code> header.</p> </div> </section> <section id="host-based-authentication"> <h3><a class="toc-backref" href="#id16" role="doc-backlink">Host-based authentication</a><a class="headerlink" href="#host-based-authentication" title="Permalink to this heading">露</a></h3> <p>Authentication settings (<code class="docutils literal notranslate"><span class="pre">auth.host_based.*</span></code>) are node settings, which means that their values apply only to the node where they are applied and different nodes may have different authentication settings.</p> <dl id="auth-host-based-enabled"> <dt><strong>auth.host_based.enabled</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Setting to enable or disable Host Based Authentication (HBA). It is disabled by default.</p> </dd> </dl> <section id="jwt-based-authentication"> <span id="jwt-defaults"></span><h4><a class="toc-backref" href="#id17" role="doc-backlink">JWT Based Authentication</a><a class="headerlink" href="#jwt-based-authentication" title="Permalink to this heading">露</a></h4> <p>Default global settings for the <a class="reference internal" href="../admin/auth/methods.html#auth-jwt"><span class="std std-ref">JWT authentication</span></a>.</p> <dl id="auth-host-based-jwt-iss"> <dt><strong>auth.host_based.jwt.iss</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Default value for the <code class="docutils literal notranslate"><span class="pre">iss</span></code> <a class="reference internal" href="../sql/statements/create-user.html#create-user-jwt"><span class="std std-ref">JWT property</span></a>. If <code class="docutils literal notranslate"><span class="pre">iss</span></code> is set, user specific JWT properties are ignored.</p> </dd> </dl> <dl id="auth-host-based-jwt-aud"> <dt><strong>auth.host_based.jwt.aud</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Default value for the <code class="docutils literal notranslate"><span class="pre">aud</span></code> <a class="reference internal" href="../sql/statements/create-user.html#create-user-jwt"><span class="std std-ref">JWT property</span></a>. If <code class="docutils literal notranslate"><span class="pre">aud</span></code> is set but <code class="docutils literal notranslate"><span class="pre">iss</span></code> is not, then global config is not complete and user specific JWT properties are used.</p> </dd> </dl> </section> <section id="hba-entries"> <h4><a class="toc-backref" href="#id18" role="doc-backlink">HBA entries</a><a class="headerlink" href="#hba-entries" title="Permalink to this heading">露</a></h4> <p>The <code class="docutils literal notranslate"><span class="pre">auth.host_based.config.</span></code> setting is a group setting that can have zero, one or multiple groups that are defined by their group key (<code class="docutils literal notranslate"><span class="pre">${order}</span></code>) and their fields (<code class="docutils literal notranslate"><span class="pre">user</span></code>, <code class="docutils literal notranslate"><span class="pre">address</span></code>, <code class="docutils literal notranslate"><span class="pre">method</span></code>, <code class="docutils literal notranslate"><span class="pre">protocol</span></code>, <code class="docutils literal notranslate"><span class="pre">ssl</span></code>).</p> <dl id="order"> <dt><strong>${order}:</strong></dt><dd><div class="line-block"> <div class="line">An identifier that is used as a natural order key when looking up the host</div> <div class="line">based configuration entries. For example, an order key of <code class="docutils literal notranslate"><span class="pre">a</span></code> will be</div> <div class="line">looked up before an order key of <code class="docutils literal notranslate"><span class="pre">b</span></code>. This key guarantees that the entry</div> <div class="line">lookup order will remain independent from the insertion order of the</div> <div class="line">entries.</div> </div> </dd> </dl> <p>The <a class="reference internal" href="../admin/auth/hba.html#admin-hba"><span class="std std-ref">Host-Based Authentication (HBA)</span></a> setting is a list of predicates that users can specify to restrict or allow access to CrateDB.</p> <p>The meaning of the fields of the are as follows:</p> <dl id="auth-host-based-config-order-user"> <dt><strong>auth.host_based.config.${order}.user</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <div class="line-block"> <div class="line">Specifies an existing CrateDB username, only <code class="docutils literal notranslate"><span class="pre">crate</span></code> user (superuser) is</div> <div class="line">available. If no user is specified in the entry, then all existing users</div> <div class="line">can have access.</div> </div> </dd> </dl> <dl id="auth-host-based-config-order-address"> <dt><strong>auth.host_based.config.${order}.address</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <div class="line-block"> <div class="line">The client machine addresses that the client matches, and which are allowed</div> <div class="line">to authenticate. This field may contain an IPv4 address, an IPv6 address or</div> <div class="line">an IPv4 CIDR mask. For example: <code class="docutils literal notranslate"><span class="pre">127.0.0.1</span></code> or <code class="docutils literal notranslate"><span class="pre">127.0.0.1/32</span></code>. It also</div> <div class="line">may contain a hostname or the special <code class="docutils literal notranslate"><span class="pre">_local_</span></code> notation which will match</div> <div class="line">both IPv4 and IPv6 connections from localhost. A hostname specification</div> <div class="line">that starts with a dot (.) matches a suffix of the actual hostname.</div> <div class="line">So .crate.io would match foo.crate.io but not just crate.io. If no address</div> <div class="line">is specified in the entry, then access to CrateDB is open for all hosts.</div> </div> </dd> </dl> <dl id="auth-host-based-config-order-method"> <dt><strong>auth.host_based.config.${order}.method</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <div class="line-block"> <div class="line">The authentication method to use when a connection matches this entry.</div> <div class="line">Valid values are <code class="docutils literal notranslate"><span class="pre">trust</span></code>, <code class="docutils literal notranslate"><span class="pre">cert</span></code>, <code class="docutils literal notranslate"><span class="pre">password</span></code> and <code class="docutils literal notranslate"><span class="pre">jwt</span></code>. If no</div> <div class="line">method is specified, the <code class="docutils literal notranslate"><span class="pre">trust</span></code> method is used by default.</div> <div class="line">See <a class="reference internal" href="../admin/auth/methods.html#auth-trust"><span class="std std-ref">Trust method</span></a>, <a class="reference internal" href="../admin/auth/methods.html#auth-cert"><span class="std std-ref">Client certificate authentication method</span></a>, <a class="reference internal" href="../admin/auth/methods.html#auth-password"><span class="std std-ref">Password authentication method</span></a> and</div> <div class="line"><a class="reference internal" href="../admin/auth/methods.html#auth-jwt"><span class="std std-ref">JWT authentication method</span></a> for more information about these methods.</div> </div> </dd> </dl> <dl id="auth-host-based-config-order-protocol"> <dt><strong>auth.host_based.config.${order}.protocol</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <div class="line-block"> <div class="line">Specifies the protocol for which the authentication entry should be used.</div> <div class="line">If no protocol is specified, then this entry will be valid for all</div> <div class="line">protocols that rely on host based authentication see <a class="reference internal" href="../admin/auth/methods.html#auth-trust"><span class="std std-ref">Trust method</span></a>).</div> </div> </dd> </dl> <dl id="auth-host-based-config-order-ssl"> <dt><strong>auth.host_based.config.${order}.ssl</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">optional</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <div class="line-block"> <div class="line">Specifies whether the client must use SSL/TLS to connect to the cluster.</div> <div class="line">If set to <code class="docutils literal notranslate"><span class="pre">on</span></code> then the client must be connected through SSL/TLS</div> <div class="line">otherwise is not authenticated. If set to <code class="docutils literal notranslate"><span class="pre">off</span></code> then the client must</div> <div class="line"><em>not</em> be connected via SSL/TLS otherwise is not authenticated. Finally</div> <div class="line"><code class="docutils literal notranslate"><span class="pre">optional</span></code>, which is the value when the option is completely skipped,</div> <div class="line">means that the client can be authenticated regardless of SSL/TLS is used</div> <div class="line">or not.</div> </div> </dd> </dl> <p>Example of config groups:</p> <div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">auth.host_based.config</span><span class="p">:</span> <span class="w"> </span><span class="nt">entry_a</span><span class="p">:</span> <span class="w"> </span><span class="nt">user</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">crate</span> <span class="w"> </span><span class="nt">address</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">127.16.0.0/16</span> <span class="w"> </span><span class="nt">entry_b</span><span class="p">:</span> <span class="w"> </span><span class="nt">method</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">trust</span> <span class="w"> </span><span class="nt">entry_3</span><span class="p">:</span> <span class="w"> </span><span class="nt">user</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">crate</span> <span class="w"> </span><span class="nt">address</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">172.16.0.0/16</span> <span class="w"> </span><span class="nt">method</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">trust</span> <span class="w"> </span><span class="nt">protocol</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">pg</span> <span class="w"> </span><span class="nt">ssl</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">on</span> </pre></div> </div> </section> </section> </section> <section id="secured-communications-ssl-tls"> <span id="ssl-config"></span><h2><a class="toc-backref" href="#id19" role="doc-backlink">Secured communications (SSL/TLS)</a><a class="headerlink" href="#secured-communications-ssl-tls" title="Permalink to this heading">露</a></h2> <p>Secured communications via SSL allows you to encrypt traffic between CrateDB nodes and clients connecting to them. Connections are secured using Transport Layer Security (TLS).</p> <dl id="ssl-http-enabled"> <dt><strong>ssl.http.enabled</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Set this to true to enable secure communication between the CrateDB node and the client through SSL via the HTTPS protocol.</p> </dd> </dl> <dl id="ssl-psql-enabled"> <dt><strong>ssl.psql.enabled</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Set this to true to enable secure communication between the CrateDB node and the client through SSL via the PostgreSQL wire protocol.</p> </dd> </dl> <dl id="ssl-transport-mode"> <dt><strong>ssl.transport.mode</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">legacy</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>For communication between nodes, choose:</p> <dl class="simple"> <dt><code class="docutils literal notranslate"><span class="pre">off</span></code></dt><dd><p>SSL cannot be used</p> </dd> <dt><code class="docutils literal notranslate"><span class="pre">legacy</span></code></dt><dd><p>SSL is not used. If HBA is enabled, transport connections won鈥檛 be verified Any reachable host can establish a connection.</p> </dd> <dt><code class="docutils literal notranslate"><span class="pre">on</span></code></dt><dd><p>SSL must be used</p> </dd> </dl> </dd> </dl> <dl id="ssl-keystore-filepath"> <dt><strong>ssl.keystore_filepath</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The full path to the node keystore file.</p> </dd> </dl> <dl id="ssl-keystore-password"> <dt><strong>ssl.keystore_password</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The password used to decrypt the keystore file defined with <code class="docutils literal notranslate"><span class="pre">ssl.keystore_filepath</span></code>.</p> </dd> </dl> <dl id="ssl-keystore-key-password"> <dt><strong>ssl.keystore_key_password</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The password entered at the end of the <code class="docutils literal notranslate"><span class="pre">keytool</span> <span class="pre">-genkey</span> <span class="pre">command</span></code>.</p> </dd> </dl> <div class="admonition note"> <p class="admonition-title">Note</p> <p>Optionally trusted CA certificates can be stored separately from the node鈥檚 keystore into a truststore for CA certificates.</p> </div> <dl id="ssl-truststore-filepath"> <dt><strong>ssl.truststore_filepath</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The full path to the node truststore file. If not defined, then only a keystore will be used.</p> </dd> </dl> <dl id="ssl-truststore-password"> <dt><strong>ssl.truststore_password</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The password used to decrypt the truststore file defined with <code class="docutils literal notranslate"><span class="pre">ssl.truststore_filepath</span></code>.</p> </dd> </dl> <dl id="ssl-resource-poll-interval"> <dt><strong>ssl.resource_poll_interval</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">5m</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>The frequency at which SSL files such as keystore and truststore are polled for changes.</p> </dd> </dl> </section> <section id="cross-origin-resource-sharing-cors"> <h2><a class="toc-backref" href="#id20" role="doc-backlink">Cross-origin resource sharing (CORS)</a><a class="headerlink" href="#cross-origin-resource-sharing-cors" title="Permalink to this heading">露</a></h2> <p>Many browsers support the <a class="reference external" href="https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy">same-origin policy</a> which requires web applications to explicitly allow requests across origins. The <a class="reference external" href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS">cross-origin resource sharing</a> settings in CrateDB allow for configuring these.</p> <dl id="http-cors-enabled"> <dt><strong>http.cors.enabled</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Enable or disable <a class="reference external" href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS">cross-origin resource sharing</a>.</p> </dd> </dl> <dl id="http-cors-allow-origin"> <dt><strong>http.cors.allow-origin</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre"><empty></span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Define allowed origins of a request. <code class="docutils literal notranslate"><span class="pre">*</span></code> allows <em>any</em> origin (which can be a substantial security risk) and by prepending a <code class="docutils literal notranslate"><span class="pre">/</span></code> the string will be treated as a <a class="reference internal" href="../appendices/glossary.html#gloss-regular-expression"><span class="std std-ref">regular expression</span></a>. For example <code class="docutils literal notranslate"><span class="pre">/https?:\/\/crate.io/</span></code> will allow requests from <code class="docutils literal notranslate"><span class="pre">https://crate.io</span></code> and <code class="docutils literal notranslate"><span class="pre">https://crate.io</span></code>. This setting disallows any origin by default.</p> </dd> </dl> <dl id="http-cors-max-age"> <dt><strong>http.cors.max-age</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">1728000</span></code> (20 days)</div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Max cache age of a preflight request in seconds.</p> </dd> </dl> <dl id="http-cors-allow-methods"> <dt><strong>http.cors.allow-methods</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">OPTIONS,</span> <span class="pre">HEAD,</span> <span class="pre">GET,</span> <span class="pre">POST,</span> <span class="pre">PUT,</span> <span class="pre">DELETE</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Allowed HTTP methods.</p> </dd> </dl> <dl id="http-cors-allow-headers"> <dt><strong>http.cors.allow-headers</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">X-Requested-With,</span> <span class="pre">Content-Type,</span> <span class="pre">Content-Length</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Allowed HTTP headers.</p> </dd> </dl> <dl id="http-cors-allow-credentials"> <dt><strong>http.cors.allow-credentials</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Add the <code class="docutils literal notranslate"><span class="pre">Access-Control-Allow-Credentials</span></code> header to responses.</p> </dd> </dl> </section> <section id="blobs"> <h2><a class="toc-backref" href="#id21" role="doc-backlink">Blobs</a><a class="headerlink" href="#blobs" title="Permalink to this heading">露</a></h2> <dl id="blobs-path"> <dt><strong>blobs.path</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Path to a filesystem directory where to store blob data allocated for this node.</p> <p>By default blobs will be stored under the same path as normal data. A relative path value is interpreted as relative to <code class="docutils literal notranslate"><span class="pre">CRATE_HOME</span></code>.</p> </dd> </dl> </section> <section id="repositories"> <span id="ref-configuration-repositories"></span><h2><a class="toc-backref" href="#id22" role="doc-backlink">Repositories</a><a class="headerlink" href="#repositories" title="Permalink to this heading">露</a></h2> <p>Repositories are used to <a class="reference internal" href="../admin/snapshots.html#snapshot-restore"><span class="std std-ref">backup</span></a> a CrateDB cluster.</p> <dl id="repositories-url-allowed-urls"> <dt><strong>repositories.url.allowed_urls</strong></dt><dd><div class="line-block"> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>This setting only applies to repositories of type <a class="reference internal" href="../sql/statements/create-repository.html#sql-create-repo-url"><span class="std std-ref">url</span></a>.</p> <p>With this setting a list of urls can be specified which are allowed to be used if a repository of type <code class="docutils literal notranslate"><span class="pre">url</span></code> is created.</p> <p>Wildcards are supported in the host, path, query and fragment parts.</p> <p>This setting is a security measure to prevent access to arbitrary resources.</p> <p>In addition, the supported protocols can be restricted using the <a class="reference internal" href="#repositories-url-supported-protocols"><span class="std std-ref">repositories.url.supported_protocols</span></a> setting.</p> </dd> </dl> <dl id="repositories-url-supported-protocols"> <dt><strong>repositories.url.supported_protocols</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">http</span></code>, <code class="docutils literal notranslate"><span class="pre">https</span></code>, <code class="docutils literal notranslate"><span class="pre">ftp</span></code>, <code class="docutils literal notranslate"><span class="pre">file</span></code> and <code class="docutils literal notranslate"><span class="pre">jar</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>A list of protocols that are supported by repositories of type <a class="reference internal" href="../sql/statements/create-repository.html#sql-create-repo-url"><span class="std std-ref">url</span></a>.</p> <p>The <code class="docutils literal notranslate"><span class="pre">jar</span></code> protocol is used to access the contents of jar files. For more info, see the java <a class="reference external" href="https://docs.oracle.com/javase/8/docs/api/java/net/JarURLConnection.html">JarURLConnection documentation</a>.</p> </dd> </dl> <p>See also the <a class="reference internal" href="#path-repo"><span class="std std-ref">path.repo</span></a> Setting.</p> </section> <section id="queries"> <h2><a class="toc-backref" href="#id23" role="doc-backlink">Queries</a><a class="headerlink" href="#queries" title="Permalink to this heading">露</a></h2> <dl id="indices-query-bool-max-clause-count"> <dt><strong>indices.query.bool.max_clause_count</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">8192</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>This setting limits the number of boolean clauses that can be generated by <code class="docutils literal notranslate"><span class="pre">!=</span> <span class="pre">ANY()</span></code>, <code class="docutils literal notranslate"><span class="pre">LIKE</span> <span class="pre">ANY()</span></code>, <code class="docutils literal notranslate"><span class="pre">ILIKE</span> <span class="pre">ANY()</span></code>, <code class="docutils literal notranslate"><span class="pre">NOT</span> <span class="pre">LIKE</span> <span class="pre">ANY()</span></code> and <code class="docutils literal notranslate"><span class="pre">NOT</span> <span class="pre">ILIKE</span> <span class="pre">ANY()</span></code> <a class="reference internal" href="../appendices/glossary.html#gloss-operator"><span class="std std-ref">operators</span></a> on arrays in order to prevent users from executing queries that may result in heavy memory consumption causing nodes to crash with <code class="docutils literal notranslate"><span class="pre">OutOfMemory</span></code> exceptions. Throws <code class="docutils literal notranslate"><span class="pre">TooManyClauses</span></code> errors when the limit is exceeded.</p> <div class="admonition note"> <p class="admonition-title">Note</p> <p>You can avoid <code class="docutils literal notranslate"><span class="pre">TooManyClauses</span></code> errors by increasing this setting. The number of boolean clauses used can be larger than the elements of the array .</p> </div> </dd> </dl> </section> <section id="legacy"> <h2><a class="toc-backref" href="#id24" role="doc-backlink">Legacy</a><a class="headerlink" href="#legacy" title="Permalink to this heading">露</a></h2> <dl id="legacy-table-function-column-naming"> <dt><strong>legacy.table_function_column_naming</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Since CrateDB 5.0.0, if the table function is not aliased and is returning a single base data typed column, the table function name is used as the column name. This setting can be set in order to use the naming convention prior to 5.0.0.</p> <p>The following table functions are affected by this setting:</p> <ul class="simple"> <li><p><a class="reference internal" href="../general/builtins/table-functions.html#unnest"><span class="std std-ref">unnest</span></a></p></li> <li><p><a class="reference internal" href="../general/builtins/table-functions.html#table-functions-regexp-matches"><span class="std std-ref">regexp_matches</span></a></p></li> <li><p><a class="reference internal" href="../general/builtins/table-functions.html#table-functions-generate-series"><span class="std std-ref">generate_series</span></a></p></li> </ul> <p>When the setting is set and a single column is expected to be returned, the returned column will be named <code class="docutils literal notranslate"><span class="pre">col1</span></code>, <code class="docutils literal notranslate"><span class="pre">groups</span></code>, or <code class="docutils literal notranslate"><span class="pre">col1</span></code> respectively.</p> <div class="admonition note"> <p class="admonition-title">Note</p> <p>Beware that if not all nodes in the cluster are consistently set or unset, the behaviour will depend on the node handling the query.</p> </div> </dd> </dl> </section> <section id="javascript-language"> <span id="conf-node-lang-js"></span><h2><a class="toc-backref" href="#id25" role="doc-backlink">JavaScript language</a><a class="headerlink" href="#javascript-language" title="Permalink to this heading">露</a></h2> <dl id="lang-js-enabled"> <dt><strong>lang.js.enabled</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">true</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Setting to enable or disable <a class="reference internal" href="../general/user-defined-functions.html#udf-js"><span class="std std-ref">JavaScript UDF</span></a> support.</p> </dd> </dl> </section> <section id="foreign-data-wrappers"> <span id="conf-fdw"></span><h2><a class="toc-backref" href="#id26" role="doc-backlink">Foreign Data Wrappers</a><a class="headerlink" href="#foreign-data-wrappers" title="Permalink to this heading">露</a></h2> <dl id="fdw-allow-local"> <dt><strong>fdw.allow_local</strong></dt><dd><div class="line-block"> <div class="line"><em>Default:</em> <code class="docutils literal notranslate"><span class="pre">false</span></code></div> <div class="line"><em>Runtime:</em> <code class="docutils literal notranslate"><span class="pre">no</span></code></div> </div> <p>Allow access to local addresses via <a class="reference internal" href="../admin/fdw.html#administration-fdw"><span class="std std-ref">Foreign data wrappers</span></a> for all users.</p> <p>By default, only the <code class="docutils literal notranslate"><span class="pre">crate</span></code> superuser is allowed to access foreign servers that point to <code class="docutils literal notranslate"><span class="pre">localhost</span></code>.</p> </dd> </dl> <div class="admonition warning"> <p class="admonition-title">Warning</p> <p>Changing this to <code class="docutils literal notranslate"><span class="pre">true</span></code> can pose a security risk if you do not trust the users with <code class="docutils literal notranslate"><span class="pre">AL</span></code> permissions on the system. They can create foreign servers, foreign tables and user mappings that allow them to access services running on the same machine as CrateDB as if connected locally - effectively bypassing any restrictions set up via <a class="reference internal" href="../admin/auth/hba.html#admin-hba"><span class="std std-ref">Host-Based Authentication (HBA)</span></a>.</p> <p>Do <strong>not</strong> change this if you don鈥檛 understand the implications.</p> </div> </section> <section id="custom-attributes"> <span id="conf-node-attributes"></span><h2><a class="toc-backref" href="#id27" role="doc-backlink">Custom attributes</a><a class="headerlink" href="#custom-attributes" title="Permalink to this heading">露</a></h2> <p>The <code class="docutils literal notranslate"><span class="pre">node.attr</span></code> namespace is a bag of custom attributes. Custom attributes can be <a class="reference internal" href="cluster.html#conf-routing-allocation-awareness"><span class="std std-ref">used to control shard allocation</span></a>.</p> <p>You can create any attribute you want under this namespace, like <code class="docutils literal notranslate"><span class="pre">node.attr.key:</span> <span class="pre">value</span></code>. These attributes use the <code class="docutils literal notranslate"><span class="pre">node.attr</span></code> namespace to distinguish them from core node attribute like <code class="docutils literal notranslate"><span class="pre">node.name</span></code>.</p> <p>Custom attributes are not validated by CrateDB, unlike core node attributes.</p> </section> </section> </article> <footer class="sb-footer-article"> <div class="related-pages"> <a class="next-page" href="cluster.html"> <div class="page-info"> <div class="context"> <span>Next</span> </div> <div class="title">Cluster-wide settings</div> </div> <svg class="furo-related-icon"><use href="#svg-arrow-right"></use></svg> </a> <a class="prev-page" href="index.html"> <svg class="furo-related-icon"><use href="#svg-arrow-right"></use></svg> <div class="page-info"> <div class="context"> <span>Previous</span> </div> <div class="title">Configuration</div> </div> </a> </div> </footer> </div> <aside class="sb-sidebar-secondary"> <div class="toc-drawer"> <div class="toc-sticky toc-scroll"> <div class="page-tools dropdown-group"> <!-- GitHub feedback component: Links to report issue, and source/edit links --> <div class="feedback-compact-container"> <details class="sd-sphinx-override sd-dropdown sd-card sd-mb-0 sd-fade-in feedback-compact-content"> <!-- open="" --> <summary class="sd-summary-title sd-card-header"> <span class="fa fa-gear fa-fw"></span> <span class="feedback-compact-title"> Feedback</span> <span class="sd-summary-state-marker sd-summary-chevron-right"> <svg version="1.1" width="1.5em" height="1.5em" class="sd-octicon sd-octicon-chevron-right" viewBox="0 0 24 24" aria-hidden="true"> <path d="M8.72 18.78a.75.75 0 0 1 0-1.06L14.44 12 8.72 6.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018l6.25 6.25a.75.75 0 0 1 0 1.06l-6.25 6.25a.75.75 0 0 1-1.06 0Z"></path> </svg> </span> </summary> <div class="sd-summary-content sd-card-body docutils"> <p class="sd-card-text"> <span class="fab fa-github fa-fw"></span> <a id="docs-feedback-open-issue" rel="noopener" class="feedback-compact-link" href="https://github.com/crate/crate/issues/new?title=Documentation%20feedback%20on%20/docs/config/node.rst&labels=team:%20tech%20writing,triage&body=%23%23%23%20Documentation%20feedback%0A%0A%3C%21--%20Please%20do%20not%20edit%20or%20remove%20the%20following%20information%20--%3E%0A %0A- Page title: Node-specific%20settings%0A- Page URL: https%3A//cratedb.com/docs/crate/reference/en/latest/config/node.html%0A-%20Source%3A%20https%3A//github.com/crate/crate/blob/5.10/docs/config/node.rst%0A%0A---%0A%0A%3C%21--%20Please%20add%20your%20comments%20here%20--%3E%0A%0A" target="_blank" title="Suggest improvement">Suggest improvement</a> </p> <p class="sd-card-text"> <span class="fa fa-edit fa-fw"></span> <a id="docs-feedback-edit-document" class="feedback-compact-link" href="https://github.com/crate/crate/edit/5.10/docs/config/node.rst" rel="noopener" target="_blank" title="Edit on GitHub">Edit page</a> </p> <p class="sd-card-text"> <span class="fa fa-code fa-fw"></span> <a id="docs-feedback-open-github" class="feedback-compact-link" href="https://github.com/crate/crate/blob/5.10/docs/config/node.rst?plain=1" rel="noopener" target="_blank" title="View page source on GitHub">View page source</a> </p> </div> </details> </div> <script> /** * Keyboard navigation for GitHub. CTRL+G will navigate to * the edit page on GitHub for the corresponding document. **/ document.addEventListener('keydown', (event) => { if (event.key === 'g' && event.ctrlKey) { location.href = "https://github.com/crate/crate/edit/5.10/docs/config/node.rst"; } }); </script> <!-- Version chooser component --> <div class="version-chooser-container"> <script> // Sphinx version chooser JavaScript helpers by Daniel McCloy, derived from pydata-sphinx-theme. // BSD 3-Clause License; Copyright (c) 2018, pandas; All rights reserved. // See `version-switcher.html` and `pydata-sphinx-theme.js`. async function checkPageExistsAndRedirect(event) { // Make sure not to follow the original link. event.preventDefault(); const currentFilePath = `config/node.html`, tryUrl = event.currentTarget.getAttribute("href"); let otherDocsHomepage = tryUrl.replace(currentFilePath, ""); try { let head = await fetch(tryUrl, { method: "HEAD" }); if (head.ok) { location.href = tryUrl; // the page exists, go there } else { location.href = otherDocsHomepage; } } catch (err) { // something went wrong, probably CORS restriction, fallback to other docs homepage location.href = otherDocsHomepage; } } function versionChooserAppendItem(slug, url) { // Create the link node. const node = document.createElement("a"); node.setAttribute( "class", "version-chooser-link" ); node.setAttribute("href", `https://cratedb.com/docs/crate/reference/en/${slug}/config/node.html`); node.textContent = slug; // On navigation, AJAX calls will check if the linked page exists before // trying to redirect, and if not, will redirect to the homepage // for that version of the docs. node.onclick = checkPageExistsAndRedirect; // Wrap link element into container node. const container = document.createElement("p"); container.setAttribute("class", "sd-card-text"); container.appendChild(node); // Populate HTML DOM. document.querySelector(".version-chooser__menu").append(container); } </script> <details class="sd-sphinx-override sd-dropdown sd-card sd-fade-in version-chooser-content"> <!-- open="" --> <summary class="sd-summary-title sd-card-header version-chooser-title"> <span>latest</span> <span class="sd-summary-state-marker sd-summary-chevron-right"> <svg version="1.1" width="1.5em" height="1.5em" class="sd-octicon sd-octicon-chevron-right" viewBox="0 0 24 24" aria-hidden="true"> <path d="M8.72 18.78a.75.75 0 0 1 0-1.06L14.44 12 8.72 6.28a.751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018l6.25 6.25a.75.75 0 0 1 0 1.06l-6.25 6.25a.75.75 0 0 1-1.06 0Z"></path> </svg> </span> </summary> <div class="sd-summary-content sd-card-body docutils version-chooser__menu"> <script> versionChooserAppendItem('master', '/en/master/'); </script> <script> versionChooserAppendItem('latest', '/en/latest/'); </script> <script> versionChooserAppendItem('5.9', '/en/5.9/'); </script> <script> versionChooserAppendItem('5.10', '/en/5.10/'); </script> <script> versionChooserAppendItem('4.8', '/en/4.8/'); </script> <script> versionChooserAppendItem('3.3', '/en/3.3/'); </script> </div> </details> </div> <div class="theme-toggle-container theme-toggle-header"> <button class="theme-toggle"> <div class="visually-hidden">Toggle Light / Dark color theme</div> <svg class="theme-icon-when-dark"><use href="#svg-moon"></use></svg> <svg class="theme-icon-when-light"><use href="#svg-sun"></use></svg> </button> </div> </div> <div class="toc-title-container"> <span class="toc-title"> On this page </span> </div> <div class="toc-tree-container"> <div class="toc-tree"> <ul> <li><a class="reference internal" href="#">Node-specific settings</a><ul> <li><a class="reference internal" href="#basics">Basics</a></li> <li><a class="reference internal" href="#node-types">Node types</a></li> <li><a class="reference internal" href="#general">General</a></li> <li><a class="reference internal" href="#networking">Networking</a><ul> <li><a class="reference internal" href="#hosts">Hosts</a></li> <li><a class="reference internal" href="#ports">Ports</a></li> <li><a class="reference internal" href="#advanced-tcp-settings">Advanced TCP settings</a></li> <li><a class="reference internal" href="#transport-settings">Transport settings</a></li> </ul> </li> <li><a class="reference internal" href="#paths">Paths</a></li> <li><a class="reference internal" href="#plug-ins">Plug-ins</a></li> <li><a class="reference internal" href="#cpu">CPU</a></li> <li><a class="reference internal" href="#memory">Memory</a></li> <li><a class="reference internal" href="#garbage-collection">Garbage collection</a></li> <li><a class="reference internal" href="#authentication">Authentication</a><ul> <li><a class="reference internal" href="#trust-authentication">Trust authentication</a></li> <li><a class="reference internal" href="#host-based-authentication">Host-based authentication</a><ul> <li><a class="reference internal" href="#jwt-based-authentication">JWT Based Authentication</a></li> <li><a class="reference internal" href="#hba-entries">HBA entries</a></li> </ul> </li> </ul> </li> <li><a class="reference internal" href="#secured-communications-ssl-tls">Secured communications (SSL/TLS)</a></li> <li><a class="reference internal" href="#cross-origin-resource-sharing-cors">Cross-origin resource sharing (CORS)</a></li> <li><a class="reference internal" href="#blobs">Blobs</a></li> <li><a class="reference internal" href="#repositories">Repositories</a></li> <li><a class="reference internal" href="#queries">Queries</a></li> <li><a class="reference internal" href="#legacy">Legacy</a></li> <li><a class="reference internal" href="#javascript-language">JavaScript language</a></li> <li><a class="reference internal" href="#foreign-data-wrappers">Foreign Data Wrappers</a></li> <li><a class="reference internal" href="#custom-attributes">Custom attributes</a></li> </ul> </li> </ul> </div> </div> </div> </div> </aside> </div> </main> </div> </div> <script data-url_root="../" id="documentation_options" src="../_static/documentation_options.js?v=b3ba4146"></script> <script src="../_static/doctools.js?v=888ff710"></script> <script src="../_static/sphinx_highlight.js?v=4825356b"></script> <script src="../_static/clipboard.min.js?v=a7894cd8"></script> <script src="../_static/copybutton.js?v=54a48adb"></script> <script> </script> <script src="../_static/tabs.js?v=3ee01567"></script> <script>let toggleHintShow = 'Click to show';</script> <script>let toggleHintHide = 'Click to hide';</script> <script>let toggleOpenOnPrint = 'true';</script> <script src="../_static/togglebutton.js?v=4a39c7ea"></script> <script src="../_static/design-tabs.js?v=f930bc37"></script> <script src="../_static/design-elements.bbdccc18c4abea9397628f9fea3d48c2.js?v=03c7770e"></script> <script>var togglebuttonSelector = '.toggle, .admonition.dropdown';</script> <footer class="sb-footer"> <div class="footer-subscription cr-nojs-hide"> <div class="content-wrapper container"> <div class="row"> <div class="col-md-3"> <h4>Subscribe to the CrateDB Newsletter now</h4> </div> <div class="col-md-9"> <div class="footer-subs-form"> <!--[if lte IE 8]> <script charset="utf-8" type="text/javascript" src="//js.hsforms.net/forms/v2-legacy.js"></script> <![endif]--> <script charset="utf-8" type="text/javascript" src="//js.hsforms.net/forms/v2.js"></script> <script> hbspt.forms.create({ region: "na1", portalId: "19927462", formId: "76d1441f-eef8-4e8e-950d-9b66bf24bd8e" }); </script> </div> </div> </div> </div> </div> <div class="sb-footer__inner sb-page-width"> <div class="footer"> <div class="container-fluid"> <div class="w-clearfix"> <div class="w-row mobileAlign"> <div class="row"> <div class="col-md-4 text-md-center"> <a class="w-inline-block" href="/" title="cratedb.com"> <svg version="1.2" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 218 36" width="218" height="36" alt="CrateDB Logo" loading="lazy" class="cr-cratedb-logo"> <defs> <clipPath clipPathUnits="userSpaceOnUse" id="cfp1"> <path d="m1.49 3.63h7.31v7.31h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp2"> <path d="m1.49 14.6h18.28v7.31h-18.28z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp3"> <path d="m12.46 3.63h7.31v7.31h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp4"> <path d="m1.49 25.57h29.25v7.31h-29.25z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp5"> <path d="m23.43 3.63h7.31v18.28h-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp6"> <path d="m45.37 6.07h24.45v24.46h-24.45z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp7"> <path d="m45.37 12.16v12.19c0 1.62 0.64 3.17 1.78 4.31 1.15 1.14 2.7 1.78 4.31 1.78h18.29v-4.87h-19.5v-14.63h19.5v-4.87h-18.29c-1.61 0-3.16 0.64-4.31 1.78-1.14 1.14-1.78 2.69-1.78 4.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp8"> <path d="m75.23 12.15h14.06v18.38h-14.06z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp9"> <path d="m80.08 15.21h-0.58l-0.61-3.05h-3.66v18.28h4.88v-11.58c0-0.64 0.26-1.26 0.71-1.72 0.46-0.46 1.08-0.71 1.73-0.71h6.7v-4.27h-6.09q-0.61-0.01-1.18 0.22-0.57 0.23-1 0.66-0.43 0.43-0.67 0.99-0.23 0.57-0.23 1.18z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp10"> <path d="m91.51 12.15h20.15v18.38h-20.15z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp11"> <path d="m108.58 12.52q0.9 0.36 1.6 1.05 0.69 0.69 1.07 1.59 0.38 0.9 0.38 1.88v13.4h-3.66l-0.61-2.43h-0.61c0 0.64-0.25 1.26-0.71 1.72-0.46 0.46-1.08 0.71-1.73 0.71h-7.02q-1.11 0.05-2.16-0.34-1.05-0.39-1.87-1.15-0.81-0.77-1.27-1.79-0.46-1.02-0.48-2.14c0.03-1.42 0.62-2.76 1.64-3.74 1.02-0.99 2.39-1.53 3.8-1.5h9.75v-3.66h-12.79v-3.96h12.78q0.98-0.01 1.89 0.36zm-3.72 14.27c0.49 0 0.96-0.2 1.3-0.54 0.34-0.34 0.54-0.81 0.54-1.29v-1.83h-8.83c-0.49 0-0.95 0.19-1.3 0.54-0.34 0.34-0.53 0.8-0.53 1.29 0 0.48 0.19 0.94 0.53 1.29 0.34 0.34 0.8 0.53 1.29 0.54h7z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp12"> <path d="m115.46 6.07h15.93v24.46h-15.93z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp13"> <path d="m125.21 6.07h-4.88v6.09h-4.87v4.27h4.87v8.53c0.05 1.48 0.67 2.88 1.75 3.91 1.07 1.02 2.5 1.58 3.98 1.55h5.24v-4.24h-6.09v-9.75h6.09v-4.27h-6.09z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp14"> <path d="m134.96 12.16h20.15v18.37h-20.15z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp15"> <path d="m153.29 13.95c1.14 1.14 1.78 2.69 1.78 4.3v4.88h-15.23v3.35h14.01v3.96h-12.8c-1.61 0-3.16-0.64-4.31-1.78-1.14-1.14-1.78-2.69-1.78-4.31v-6.1c0-1.61 0.64-3.16 1.78-4.3 1.15-1.15 2.7-1.79 4.31-1.79h7.93c1.61 0 3.16 0.64 4.31 1.79zm-2.47 5.83v-1.84c-0.01-0.48-0.2-0.95-0.54-1.29-0.35-0.34-0.81-0.53-1.29-0.53h-7.32c-0.48 0-0.94 0.2-1.29 0.54-0.34 0.34-0.53 0.81-0.53 1.29v1.83z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp16"> <path d="m159.95 6.07h25.58v24.46h-25.58z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp17"> <path d="m183.04 8.56c1.61 1.61 2.5 3.78 2.5 6.04v7.31c0 2.26-0.9 4.43-2.5 6.03-1.59 1.61-3.77 2.5-6.03 2.5h-17.06v-24.37h17.06c2.26 0 4.43 0.89 6.03 2.49zm-2.37 6.04c0-0.97-0.38-1.9-1.07-2.59-0.69-0.68-1.62-1.07-2.59-1.07h-12.19v14.63h12.19c0.97 0 1.9-0.39 2.59-1.07 0.68-0.69 1.07-1.62 1.07-2.59v-7.31z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp18"> <path d="m190.42 6.13h26.82v24.4h-26.82z" /> </clipPath> <clipPath clipPathUnits="userSpaceOnUse" id="cfp19"> <path d="m216.99 21.36c0.37 1.44 0.29 2.97-0.22 4.37-0.52 1.4-1.45 2.6-2.68 3.46-1.22 0.85-2.68 1.31-4.17 1.32h-19.5v-24.38h18.28c1.34 0 2.65 0.37 3.8 1.06 1.14 0.7 2.07 1.7 2.69 2.88 0.61 1.19 0.89 2.53 0.8 3.86-0.09 1.34-0.55 2.62-1.31 3.72 1.13 0.97 1.93 2.26 2.31 3.71zm-21.69-5.54h13.4c0.65 0 1.27-0.26 1.73-0.72 0.46-0.45 0.71-1.07 0.71-1.72 0-0.65-0.26-1.27-0.71-1.72-0.46-0.46-1.08-0.72-1.73-0.72h-13.4zm16.34 8.83c0.44-0.5 0.68-1.15 0.68-1.82 0-0.67-0.24-1.32-0.68-1.82-0.44-0.51-1.05-0.83-1.72-0.92h-14.62v5.48h14.62c0.67-0.09 1.28-0.41 1.72-0.92z" /> </clipPath> </defs> <style> .a { fill: #19c0ea } </style> <g clip-path="url(#cfp1)"> <path class="a" d="m1.5 3.6h7.3v7.3h-7.3z" /> </g> <g clip-path="url(#cfp2)"> <path class="a" d="m1.5 14.6h18.3v7.3h-18.3z" /> </g> <g clip-path="url(#cfp3)"> <path class="a" d="m12.5 3.6h7.2v7.3h-7.2z" /> </g> <g clip-path="url(#cfp4)"> <path class="a" d="m1.5 25.6h29.3v7.2h-29.3z" /> </g> <g clip-path="url(#cfp5)"> <path class="a" d="m23.4 3.6h7.3v18.3h-7.3z" /> </g> <g class="cratedb"> <g clip-path="url(#cfp6)"> <g clip-path="url(#cfp7)"> <path d="m45.4 6.1h24.3v24.3h-24.3z" /> </g> </g> <g clip-path="url(#cfp8)"> <g clip-path="url(#cfp9)"> <path d="m75.2 12.2h14.1v18.2h-14.1z" /> </g> </g> <g clip-path="url(#cfp10)"> <g clip-path="url(#cfp11)"> <path d="m91.5 12.2h20.2v18.2h-20.2z" /> </g> </g> <g clip-path="url(#cfp12)"> <g clip-path="url(#cfp13)"> <path d="m115.5 6.1h15.8v24.3h-15.8z" /> </g> </g> <g clip-path="url(#cfp14)"> <g clip-path="url(#cfp15)"> <path d="m135 12.2h20.1v18.2h-20.1z" /> </g> </g> <g clip-path="url(#cfp16)"> <g clip-path="url(#cfp17)"> <path d="m159.9 6.1h25.6v24.3h-25.6z" /> </g> </g> <g clip-path="url(#cfp18)"> <g clip-path="url(#cfp19)"> <path d="m190.4 6.1h27v24.4h-27z" /> </g> </g> </g> </svg> </a> </div> <div class="col-md-4 text-md-center"> <div class="cr-docs-footer-menu"> <ul> <li> <a href="/legal/imprint">Imprint</a> </li> <li> <a href="/contact">Contact</a> </li> <li> <a href="/legal/">Legal</a> </li> </ul> </div> </div> <div class="col-md-4 text-md-center cr-docs-align-right"> <div class="cr-docs-footer-social"> <div class="social-label">Follow us</div> <div class="cr-docs-social-icons"> <a class="social-links__link" href="https://twitter.com/cratedb" target="_blank" rel="noopener"> <span id="hs_cos_wrapper_footer_social_" class="hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_icon social-links__icon"><svg version="1.0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" aria-labelledby="twitter1" role="img"><title id="twitter1">Follow us on X</title><g id="X Twitter1_layer"><path d="M389.2 48h70.6L305.6 224.2 487 464H345L233.7 318.6 106.5 464H35.8L200.7 275.5 26.8 48H172.4L272.9 180.9 389.2 48zM364.4 421.8h39.1L151.1 88h-42L364.4 421.8z"></path></g></svg></span> </a> <a class="social-links__link" href="https://www.linkedin.com/company/crateio/" target="_blank" rel="noopener"> <span id="hs_cos_wrapper_footer_social__2" class="hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_icon social-links__icon"><svg version="1.0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" aria-labelledby="linkedin-in2" role="img"><title id="linkedin-in2">Follow us on LinkedIn</title><g id="linkedin-in2_layer"><path d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"></path></g></svg></span> </a> <a class="social-links__link" href="https://www.facebook.com/crate.io/" target="_blank" rel="noopener"> <span id="hs_cos_wrapper_footer_social__3" class="hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_icon social-links__icon"><svg version="1.0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512" aria-labelledby="facebook-f3" role="img"><title id="facebook-f3">Follow us on Facebook</title><g id="facebook-f3_layer"><path d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"></path></g></svg></span> </a> <a class="social-links__link" href="https://www.youtube.com/user/CrateIO" target="_blank" rel="noopener"> <span id="hs_cos_wrapper_footer_social__4" class="hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_icon social-links__icon"><svg version="1.0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512" aria-labelledby="youtube4" role="img"><title id="youtube4">Follow us on Instagram</title><g id="youtube4_layer"><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z"></path></g></svg></span> </a> <a class="social-links__link" href="https://github.com/crate/crate" target="_blank" rel="noopener"> <span id="hs_cos_wrapper_footer_social__5" class="hs_cos_wrapper hs_cos_wrapper_widget hs_cos_wrapper_type_icon social-links__icon"><svg version="1.0" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512" aria-labelledby="github5" role="img"><title id="github5">Follow us on Facebook</title><g id="github5_layer"><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z"></path></g></svg></span> </a> </div> </div> </div> </div> </div> </div> </div> </div> <!-- Algolia DocSearch --> <script src="https://cdn.jsdelivr.net/npm/@docsearch/js@3"></script> <script type="text/javascript"> // Init DocSearch (from https://github.com/algolia/docsearch/issues/1368#issuecomment-1428085393) const appId = "AZ1NEV7CG0"; const apiKey = "84b128d95218b1eddb2d4b82d25291fe"; docsearch({ container: "#docsearch", appId, indexName: "cratedb", apiKey, resultsFooterComponent({ state }) { return { type: "a", ref: undefined, constructor: undefined, key: state.query, props: { href: `../search.html?q=${state.query}`, children: `See all ${state.context.nbHits} results` }, __v: null }; } }); // Also init Algolia InstantSearch, if available (for search results page) if (typeof algoliasearch != "undefined" && typeof instantsearch != "undefined") { const { algoliasearch, instantsearch } = window; const searchClient = algoliasearch(appId, apiKey); const indexName = "cratedb"; const search = instantsearch({ searchClient, indexName, routing: { stateMapping: { stateToRoute(uiState) { const indexUiState = uiState[indexName]; return { q: indexUiState.query, } }, routeToState({q}) { return { [indexName]: { query: q, }, }; }, }, } }); search.addWidgets([ instantsearch.widgets.searchBox({ container: '#searchbox', }), instantsearch.widgets.hits({ container: '#hits', templates: { item(hit, { html, components, sendEvent }) { return html` <div> <p class="ais-Heading"><a href="${hit.url}">${hit.hierarchy.lvl2 ? hit.hierarchy.lvl2 : hit.hierarchy.lvl1}</a></p> <p>${components.Highlight({ hit, attribute: 'content' })}</p> <p class="ais-Breadcrumbs">${hit.hierarchy.lvl0}: ${hit.hierarchy.lvl1} ${hit.hierarchy.lvl2 ? "> " + hit.hierarchy.lvl2 : ""}</p> </div> `; }, }, }), instantsearch.widgets.configure({ hitsPerPage: 8 }), instantsearch.widgets.pagination({ container: '#pagination', }), ]); search.start(); } </script> <!-- Start of HubSpot Embed Code --> <script type="text/javascript" id="hs-script-loader" async defer src="//js.hs-scripts.com/19927462.js"></script> <!-- End of HubSpot Embed Code --> </div> </footer> </body> </html>