"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[4059],{3905:(e,t,a)=>{a.d(t,{Zo:()=>d,kt:()=>h});var n=a(67294);function r(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function i(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,n)}return a}function l(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?i(Object(a),!0).forEach((function(t){r(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):i(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function o(e,t){if(null==e)return{};var a,n,r=function(e,t){if(null==e)return{};var a,n,r={},i=Object.keys(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)>=0||(r[a]=e[a]);return r}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)a=i[n],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(r[a]=e[a])}return r}var s=n.createContext({}),p=function(e){var t=n.useContext(s),a=t;return e&&(a="function"==typeof e?e(t):l(l({},t),e)),a},d=function(e){var t=p(e.components);return n.createElement(s.Provider,{value:t},e.children)},u="mdxType",m={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},c=n.forwardRef((function(e,t){var a=e.components,r=e.mdxType,i=e.originalType,s=e.parentName,d=o(e,["components","mdxType","originalType","parentName"]),u=p(a),c=r,h=u["".concat(s,".").concat(c)]||u[c]||m[c]||i;return a?n.createElement(h,l(l({ref:t},d),{},{components:a})):n.createElement(h,l({ref:t},d))}));function h(e,t){var a=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var i=a.length,l=new Array(i);l[0]=c;var o={};for(var s in t)hasOwnProperty.call(t,s)&&(o[s]=t[s]);o.originalType=e,o[u]="string"==typeof e?e:r,l[1]=o;for(var p=2;p<i;p++)l[p]=a[p];return n.createElement.apply(null,l)}return n.createElement.apply(null,a)}c.displayName="MDXCreateElement"},32163:(e,t,a)=>{a.r(t),a.d(t,{assets:()=>d,contentTitle:()=>s,default:()=>h,frontMatter:()=>o,metadata:()=>p,toc:()=>u});var n=a(87462),r=a(63366),i=(a(67294),a(3905)),l=["components"],o={id:"release-notes",title:"Release notes"},s=void 0,p={unversionedId:"release-info/release-notes",id:"release-info/release-notes",title:"Release notes",description:"\x3c!--",source:"@site/docs/28.0.1/release-info/release-notes.md",sourceDirName:"release-info",slug:"/release-info/release-notes",permalink:"/docs/28.0.1/release-info/release-notes",draft:!1,tags:[],version:"current",frontMatter:{id:"release-notes",title:"Release notes"},sidebar:"docs",previous:{title:"Papers",permalink:"/docs/28.0.1/misc/papers-and-talks"},next:{title:"Upgrade notes",permalink:"/docs/28.0.1/release-info/upgrade-notes"}},d={},u=[{value:"Druid 28.0.1",id:"druid-2801",level:2},{value:"Bug fixes",id:"bug-fixes",level:3},{value:"Druid 28.0.0",id:"druid-2800",level:2},{value:"Important features, changes, and deprecations",id:"important-features-changes-and-deprecations",level:2},{value:"SQL compatibility",id:"sql-compatibility",level:3},{value:"Three-valued logic",id:"three-valued-logic",level:4},{value:"Strict booleans",id:"strict-booleans",level:4},{value:"NULL handling",id:"null-handling",level:4},{value:"SQL planner improvements",id:"sql-planner-improvements",level:3},{value:"Dynamic parameters",id:"dynamic-parameters",level:4},{value:"Async query and query from deep storage",id:"async-query-and-query-from-deep-storage",level:3},{value:"Support for multiple result formats",id:"support-for-multiple-result-formats",level:4},{value:"Broadened access for queries from deep storage",id:"broadened-access-for-queries-from-deep-storage",level:4},{value:"MSQ queries for realtime tasks",id:"msq-queries-for-realtime-tasks",level:3},{value:"MSQ support for UNION ALL queries",id:"msq-support-for-union-all-queries",level:3},{value:"Ingest from multiple Kafka topics to a single datasource",id:"ingest-from-multiple-kafka-topics-to-a-single-datasource",level:3},{value:"SQL UNNEST and ingestion flattening",id:"sql-unnest-and-ingestion-flattening",level:3},{value:"Recommended syntax for SQL UNNEST",id:"recommended-syntax-for-sql-unnest",level:4},{value:"Window functions (experimental)",id:"window-functions-experimental",level:3},{value:"Concurrent append and replace (experimental)",id:"concurrent-append-and-replace-experimental",level:3},{value:"Task locks for append and replace batch ingestion jobs",id:"task-locks-for-append-and-replace-batch-ingestion-jobs",level:4},{value:"Streaming ingestion with concurrent replace",id:"streaming-ingestion-with-concurrent-replace",level:4},{value:"Functional area and related changes",id:"functional-area-and-related-changes",level:2},{value:"Web console",id:"web-console",level:3},{value:"Added UI support for segment loading query context parameter",id:"added-ui-support-for-segment-loading-query-context-parameter",level:4},{value:"Added concurrent append and replace switches",id:"added-concurrent-append-and-replace-switches",level:4},{value:"Added UI support for ingesting from multiple Kafka topics to a single datasource",id:"added-ui-support-for-ingesting-from-multiple-kafka-topics-to-a-single-datasource",level:4},{value:"Other web console improvements",id:"other-web-console-improvements",level:4},{value:"Ingestion",id:"ingestion",level:3},{value:"JSON and auto column indexer",id:"json-and-auto-column-indexer",level:4},{value:"Ingestion status",id:"ingestion-status",level:4},{value:"SQL-based ingestion",id:"sql-based-ingestion",level:4},{value:"Ability to ingest ARRAY types",id:"ability-to-ingest-array-types",level:5},{value:"Numeric array type support",id:"numeric-array-type-support",level:5},{value:"Azure Blob Storage support",id:"azure-blob-storage-support",level:5},{value:"Other SQL-based ingestion improvements",id:"other-sql-based-ingestion-improvements",level:5},{value:"Streaming ingestion",id:"streaming-ingestion",level:4},{value:"Ability to reset offsets for a supervisor",id:"ability-to-reset-offsets-for-a-supervisor",level:5},{value:"Other streaming ingestion improvements",id:"other-streaming-ingestion-improvements",level:5},{value:"Querying",id:"querying",level:3},{value:"Improved LOOKUP function",id:"improved-lookup-function",level:4},{value:"AVG function",id:"avg-function",level:4},{value:"Improvements to EARLIEST and LATEST operators",id:"improvements-to-earliest-and-latest-operators",level:4},{value:"Functions for evaluating distinctness",id:"functions-for-evaluating-distinctness",level:4},{value:"Functions for evaluating equalities",id:"functions-for-evaluating-equalities",level:4},{value:"Function to decode Base64-encoded strings",id:"function-to-decode-base64-encoded-strings",level:4},{value:"Improved subquery guardrail",id:"improved-subquery-guardrail",level:4},{value:"Other query improvements",id:"other-query-improvements",level:4},{value:"Cluster management",id:"cluster-management",level:3},{value:"Unused segments",id:"unused-segments",level:4},{value:"Encrypt data in transit",id:"encrypt-data-in-transit",level:4},{value:"New metadata in the Druid segments table",id:"new-metadata-in-the-druid-segments-table",level:4},{value:"Other cluster management improvements",id:"other-cluster-management-improvements",level:4},{value:"Data management",id:"data-management",level:3},{value:"Alert message for segment assignments",id:"alert-message-for-segment-assignments",level:4},{value:"Coordinator API for unused segments",id:"coordinator-api-for-unused-segments",level:4},{value:"Kill task improvements",id:"kill-task-improvements",level:4},{value:"Metrics and monitoring",id:"metrics-and-monitoring",level:3},{value:"New ingestion metrics",id:"new-ingestion-metrics",level:4},{value:"New query metrics",id:"new-query-metrics",level:4},{value:"New ZooKeeper metrics",id:"new-zookeeper-metrics",level:4},{value:"New subquery metrics for the Broker",id:"new-subquery-metrics-for-the-broker",level:4},{value:"New Coordinator metrics",id:"new-coordinator-metrics",level:4},{value:"New compaction metrics",id:"new-compaction-metrics",level:4},{value:"Segment scan metrics",id:"segment-scan-metrics",level:4},{value:"New Kafka consumer metrics",id:"new-kafka-consumer-metrics",level:4},{value:"service/heartbeat metrics",id:"serviceheartbeat-metrics",level:4},{value:"Tombstone and segment counts",id:"tombstone-and-segment-counts",level:4},{value:"Extensions",id:"extensions",level:3},{value:"Ingestion task payloads for Kubernetes",id:"ingestion-task-payloads-for-kubernetes",level:4},{value:"Prometheus emitter",id:"prometheus-emitter",level:4},{value:"Documentation improvements",id:"documentation-improvements",level:3},{value:"Upgrade notes and incompatible changes",id:"upgrade-notes-and-incompatible-changes",level:2},{value:"Upgrade notes",id:"upgrade-notes",level:3},{value:"Upgrade Druid segments table",id:"upgrade-druid-segments-table",level:4},{value:"Upgrade step for MySQL",id:"upgrade-step-for-mysql",level:5},{value:"Upgrade step for PostgreSQL",id:"upgrade-step-for-postgresql",level:5},{value:"Manual upgrade step",id:"manual-upgrade-step",level:5},{value:"Recommended syntax for SQL UNNEST",id:"recommended-syntax-for-sql-unnest-1",level:4},{value:"Dynamic parameters",id:"dynamic-parameters-1",level:4},{value:"Nested column format",id:"nested-column-format",level:4},{value:"SQL compatibility",id:"sql-compatibility-1",level:4},{value:"NULL filters",id:"null-filters",level:5},{value:"COUNT functions",id:"count-functions",level:5},{value:"GroupBy queries",id:"groupby-queries",level:5},{value:"Stop Supervisors that ingest from multiple Kafka topics before downgrading",id:"stop-supervisors-that-ingest-from-multiple-kafka-topics-before-downgrading",level:4},{value:"<code>lenientAggregatorMerge</code> deprecated",id:"lenientaggregatormerge-deprecated",level:4},{value:"Broker parallel merge config options",id:"broker-parallel-merge-config-options",level:4},{value:"Ingestion options for ARRAY typed columns",id:"ingestion-options-for-array-typed-columns",level:4},{value:"Incompatible changes",id:"incompatible-changes",level:3},{value:"Removed Hadoop 2",id:"removed-hadoop-2",level:4},{value:"Removed GroupBy v1",id:"removed-groupby-v1",level:4},{value:"Removed Coordinator dynamic configs",id:"removed-coordinator-dynamic-configs",level:4},{value:"Removed <code>cachingCost</code> strategy",id:"removed-cachingcost-strategy",level:4},{value:"Removed <code>InsertCannotOrderByDescending</code>",id:"removed-insertcannotorderbydescending",level:4},{value:"Removed the backward compatibility code for the Handoff API",id:"removed-the-backward-compatibility-code-for-the-handoff-api",level:4},{value:"Developer notes",id:"developer-notes",level:3},{value:"Dependency updates",id:"dependency-updates",level:4},{value:"Credits",id:"credits",level:2}],m={toc:u},c="wrapper";function h(e){var t=e.components,o=(0,r.Z)(e,l);return(0,i.kt)(c,(0,n.Z)({},m,o,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("h2",{id:"druid-2801"},"Druid 28.0.1"),(0,i.kt)("p",null,"Apache Druid 28.0.1 is a patch release that fixes some issues in the Druid 28.0.0 release."),(0,i.kt)("h3",{id:"bug-fixes"},"Bug fixes"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Fixed a query caching issue for groupBy queries with multiple post-aggregation metrics ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15402"},"#15402")),(0,i.kt)("li",{parentName:"ul"},"Fixed an issue with compaction and reindex tasks failing during an upgrade due to the addition of the new task action ",(0,i.kt)("inlineCode",{parentName:"li"},"RetrieveSegmentsToReplaceAction"),", which would not be available on the Overlord during the upgrade ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15430"},"#15430")),(0,i.kt)("li",{parentName:"ul"},"Fixed an issue with the ",(0,i.kt)("inlineCode",{parentName:"li"},"NullFilter")," filter returning a domain regardless of the input column ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15500"},"#15500")),(0,i.kt)("li",{parentName:"ul"},"Improved the ",(0,i.kt)("inlineCode",{parentName:"li"},"start-druid")," starter script ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15405"},"#15405"))),(0,i.kt)("h2",{id:"druid-2800"},"Druid 28.0.0"),(0,i.kt)("p",null,"Apache Druid 28.0.0 contains over 420 new features, bug fixes, performance enhancements, documentation improvements, and additional test coverage from 57 contributors."),(0,i.kt)("p",null,"See the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/issues?q=is%3Aclosed+milestone%3A28.0+sort%3Aupdated-desc+"},"complete set of changes")," for additional details, including bug fixes."),(0,i.kt)("p",null,"Review the ",(0,i.kt)("a",{parentName:"p",href:"#upgrade-notes"},"upgrade notes")," and ",(0,i.kt)("a",{parentName:"p",href:"#incompatible-changes"},"incompatible changes")," before you upgrade to Druid 28.0.0."),(0,i.kt)("h2",{id:"important-features-changes-and-deprecations"},"Important features, changes, and deprecations"),(0,i.kt)("p",null,"In Druid 28.0.0, we have made substantial improvements to querying to make the system more ANSI SQL compatible. This includes changes in handling NULL and boolean values as well as boolean logic. At the same time, the Apache Calcite library has been upgraded to the latest version. While we have documented known query behavior changes, please read the ",(0,i.kt)("a",{parentName:"p",href:"#upgrade-notes"},"upgrade notes")," section carefully. Test your application before rolling out to broad production scenarios while closely monitoring the query status."),(0,i.kt)("h3",{id:"sql-compatibility"},"SQL compatibility"),(0,i.kt)("p",null,"Druid continues to make SQL query execution more consistent with how standard SQL behaves. However, there are feature flags available to restore the old behavior if needed."),(0,i.kt)("h4",{id:"three-valued-logic"},"Three-valued logic"),(0,i.kt)("p",null,"Druid native filters now observe SQL ",(0,i.kt)("a",{parentName:"p",href:"https://en.wikipedia.org/wiki/Three-valued_logic#SQL"},"three-valued logic")," (",(0,i.kt)("inlineCode",{parentName:"p"},"true"),", ",(0,i.kt)("inlineCode",{parentName:"p"},"false"),", or ",(0,i.kt)("inlineCode",{parentName:"p"},"unknown"),") instead of Druid's classic two-state logic by default, when the following default settings apply:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"druid.generic.useThreeValueLogicForNativeFilters = true")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"druid.expressions.useStrictBooleans = true")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"druid.generic.useDefaultValueForNull = false"))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15058"},"#15058")),(0,i.kt)("h4",{id:"strict-booleans"},"Strict booleans"),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"druid.expressions.useStrictBooleans")," is now enabled by default.\nDruid now handles booleans strictly using ",(0,i.kt)("inlineCode",{parentName:"p"},"1")," (true) or ",(0,i.kt)("inlineCode",{parentName:"p"},"0")," (false).\nPreviously, true and false could be represented either as ",(0,i.kt)("inlineCode",{parentName:"p"},"true")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"false")," as well as ",(0,i.kt)("inlineCode",{parentName:"p"},"1")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"0"),", respectively.\nIn addition, Druid now returns a null value for Boolean comparisons like ",(0,i.kt)("inlineCode",{parentName:"p"},"True && NULL"),"."),(0,i.kt)("p",null,"If you don't explicitly configure this property in ",(0,i.kt)("inlineCode",{parentName:"p"},"runtime.properties"),", clusters now use LONG types for any ingested boolean values and in the output of boolean functions for transformations and query time operations.\nFor more information, see ",(0,i.kt)("a",{parentName:"p",href:"#sql-compatibility-1"},"SQL compatibility in the upgrade notes"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14734"},"#14734")),(0,i.kt)("h4",{id:"null-handling"},"NULL handling"),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"druid.generic.useDefaultValueForNull")," is now disabled by default.\nDruid now differentiates between empty records and null records.\nPreviously, Druid might treat empty records as empty or null.\nFor more information, see ",(0,i.kt)("a",{parentName:"p",href:"#sql-compatibility-1"},"SQL compatibility in the upgrade notes"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14792"},"#14792")),(0,i.kt)("h3",{id:"sql-planner-improvements"},"SQL planner improvements"),(0,i.kt)("p",null,"Druid uses Apache Calcite for SQL planning and optimization. Starting in Druid 28.0.0, the Calcite version has been upgraded from 1.21 to 1.35. This upgrade brings in many bug fixes in SQL planning from Calcite."),(0,i.kt)("h4",{id:"dynamic-parameters"},"Dynamic parameters"),(0,i.kt)("p",null,"As part of the Calcite upgrade, the behavior of type inference for dynamic parameters has changed. To avoid any type interference issues, explicitly ",(0,i.kt)("inlineCode",{parentName:"p"},"CAST")," all dynamic parameters as a specific data type in SQL queries. For example, use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT (1 * CAST (? as DOUBLE))/2 as tmp\n")),(0,i.kt)("p",null,"Do not use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT (1 * ?)/2 as tmp\n")),(0,i.kt)("h3",{id:"async-query-and-query-from-deep-storage"},"Async query and query from deep storage"),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/query-deep-storage/"},"Query from deep storage")," is no longer an experimental feature. When you query from deep storage, more data is available for queries without having to scale your Historical services to accommodate more data. To benefit from the space saving that query from deep storage offers, configure your load rules to unload data from your Historical services."),(0,i.kt)("h4",{id:"support-for-multiple-result-formats"},"Support for multiple result formats"),(0,i.kt)("p",null,"Query from deep storage now supports multiple result formats.\nPreviously, the ",(0,i.kt)("inlineCode",{parentName:"p"},"/druid/v2/sql/statements/")," endpoint only supported results in the ",(0,i.kt)("inlineCode",{parentName:"p"},"object")," format. Now, results can be written in any format specified in the ",(0,i.kt)("inlineCode",{parentName:"p"},"resultFormat")," parameter.\nFor more information on result parameters supported by the Druid SQL API, see ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/api-reference/sql-api#responses"},"Responses"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14571"},"#14571")),(0,i.kt)("h4",{id:"broadened-access-for-queries-from-deep-storage"},"Broadened access for queries from deep storage"),(0,i.kt)("p",null,"Users with the ",(0,i.kt)("inlineCode",{parentName:"p"},"STATE")," permission can interact with status APIs for queries from deep storage. Previously, only the user who submitted the query could use those APIs. This enables the web console to monitor the running status of the queries. Users with the ",(0,i.kt)("inlineCode",{parentName:"p"},"STATE")," permission can access the query results."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14944"},"#14944")),(0,i.kt)("h3",{id:"msq-queries-for-realtime-tasks"},"MSQ queries for realtime tasks"),(0,i.kt)("p",null,"The MSQ task engine can now include real time segments in query results. To do this, use the ",(0,i.kt)("inlineCode",{parentName:"p"},"includeSegmentSource")," context parameter and set it to ",(0,i.kt)("inlineCode",{parentName:"p"},"REALTIME"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15024"},"#15024")),(0,i.kt)("h3",{id:"msq-support-for-union-all-queries"},"MSQ support for UNION ALL queries"),(0,i.kt)("p",null,"You can now use the MSQ task engine to run UNION ALL queries with ",(0,i.kt)("inlineCode",{parentName:"p"},"UnionDataSource"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14981"},"#14981")),(0,i.kt)("h3",{id:"ingest-from-multiple-kafka-topics-to-a-single-datasource"},"Ingest from multiple Kafka topics to a single datasource"),(0,i.kt)("p",null,"You can now ingest streaming data from multiple Kafka topics to a datasource using a single supervisor.\nYou configure the topics for the supervisor spec using a regex pattern as the value for ",(0,i.kt)("inlineCode",{parentName:"p"},"topicPattern")," in the IO config. If you add new topics to Kafka that match the regex, Druid automatically starts ingesting from those new topics."),(0,i.kt)("p",null,"If you enable multi-topic ingestion for a datasource, downgrading will cause the Supervisor to fail.\nFor more information, see ",(0,i.kt)("a",{parentName:"p",href:"#stop-supervisors-that-ingest-from-multiple-kafka-topics-before-downgrading"},"Stop supervisors that ingest from multiple Kafka topics before downgrading"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14424"},"#14424"),"\n",(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14865"},"#14865")),(0,i.kt)("h3",{id:"sql-unnest-and-ingestion-flattening"},"SQL UNNEST and ingestion flattening"),(0,i.kt)("p",null,"The UNNEST function is no longer experimental.\nDruid now supports UNNEST in SQL-based batch ingestion and query from deep storage, so you can flatten arrays easily. For more information, see ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/sql/#unnest"},"UNNEST")," and ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/tutorials/tutorial-unnest-arrays/"},"Unnest arrays within a column"),"."),(0,i.kt)("p",null,"You no longer need to include the context parameter ",(0,i.kt)("inlineCode",{parentName:"p"},"enableUnnest: true")," to use UNNEST."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14886"},"#14886")),(0,i.kt)("h4",{id:"recommended-syntax-for-sql-unnest"},"Recommended syntax for SQL UNNEST"),(0,i.kt)("p",null,"The recommended syntax for SQL UNNEST has changed. We recommend using CROSS JOIN instead of commas for most queries to prevent issues with precedence. For example, use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT column_alias_name1 FROM datasource CROSS JOIN UNNEST(source_expression1) AS table_alias_name1(column_alias_name1) CROSS JOIN UNNEST(source_expression2) AS table_alias_name2(column_alias_name2), ...\n")),(0,i.kt)("p",null,"Do not use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT column_alias_name FROM datasource, UNNEST(source_expression1) AS table_alias_name1(column_alias_name1), UNNEST(source_expression2) AS table_alias_name2(column_alias_name2), ...\n")),(0,i.kt)("h3",{id:"window-functions-experimental"},"Window functions (experimental)"),(0,i.kt)("p",null,"You can use ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/sql-window-functions"},"window functions")," in Apache Druid to produce values based upon the relationship of one row within a window of rows to the other rows within the same window. A window is a group of related rows within a result set. For example, rows with the same value for a specific dimension."),(0,i.kt)("p",null,"Enable window functions in your query with the ",(0,i.kt)("inlineCode",{parentName:"p"},"enableWindowing: true")," context parameter."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15184"},"#15184")),(0,i.kt)("h3",{id:"concurrent-append-and-replace-experimental"},"Concurrent append and replace (experimental)"),(0,i.kt)("p",null,"Druid 28.0.0 adds experimental support for concurrent append and replace.\nThis feature allows you to safely replace the existing data in an interval of a datasource while new data is being appended to that interval. One of the most common applications of this is appending new data to an interval while compaction of that interval is already in progress.\nFor more information, see ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/data-management/automatic-compaction#concurrent-append-and-replace"},"Concurrent append and replace"),"."),(0,i.kt)("p",null,"Segment locking will be deprecated and removed in favor of concurrent append and replace that is much simpler in design. With concurrent append and replace, Druid doesn't lock compaction jobs out because of active realtime ingestion."),(0,i.kt)("h4",{id:"task-locks-for-append-and-replace-batch-ingestion-jobs"},"Task locks for append and replace batch ingestion jobs"),(0,i.kt)("p",null,"Append batch ingestion jobs can now share locks. This allows you to run multiple append batch ingestion jobs against the same time interval. Replace batch ingestion jobs still require an exclusive lock. This means you can run multiple append batch ingestion jobs and one replace batch ingestion job for a given interval."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14407"},"#14407")),(0,i.kt)("h4",{id:"streaming-ingestion-with-concurrent-replace"},"Streaming ingestion with concurrent replace"),(0,i.kt)("p",null,"Streaming jobs reading from Kafka and Kinesis with ",(0,i.kt)("inlineCode",{parentName:"p"},"APPEND")," locks can now ingest concurrently with compaction running with ",(0,i.kt)("inlineCode",{parentName:"p"},"REPLACE")," locks. The segment granularity of the streaming job must be equal to or finer than that of the concurrent replace job."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15039"},"#15039")),(0,i.kt)("h2",{id:"functional-area-and-related-changes"},"Functional area and related changes"),(0,i.kt)("p",null,"This section contains detailed release notes separated by areas."),(0,i.kt)("h3",{id:"web-console"},"Web console"),(0,i.kt)("h4",{id:"added-ui-support-for-segment-loading-query-context-parameter"},"Added UI support for segment loading query context parameter"),(0,i.kt)("p",null,"The web console supports the ",(0,i.kt)("inlineCode",{parentName:"p"},"waitUntilSegmentsLoad")," query context parameter."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"UI for waitUntilSegmentsLoad context parameter",src:a(98996).Z,width:"3010",height:"2034"})),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15110"},"#15110")),(0,i.kt)("h4",{id:"added-concurrent-append-and-replace-switches"},"Added concurrent append and replace switches"),(0,i.kt)("p",null,"The web console includes concurrent append and replace switches."),(0,i.kt)("p",null,"The following screenshot shows the concurrent append and replace switches in the classic batch ingestion wizard:\n",(0,i.kt)("img",{alt:"Classic batch ingestion wizard",src:a(89534).Z,width:"3008",height:"2040"})),(0,i.kt)("p",null,"The following screenshot shows the concurrent append and replace switches in the compaction configuration UI:\n",(0,i.kt)("img",{alt:"Compaction configuration UI",src:a(75271).Z,width:"3008",height:"2040"})),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15114"},"#15114")),(0,i.kt)("h4",{id:"added-ui-support-for-ingesting-from-multiple-kafka-topics-to-a-single-datasource"},"Added UI support for ingesting from multiple Kafka topics to a single datasource"),(0,i.kt)("p",null,"The web console supports ingesting streaming data from multiple Kafka topics to a datasource using a single supervisor."),(0,i.kt)("p",null,(0,i.kt)("img",{alt:"UI for Kafka multi-topic ingestion",src:a(10062).Z,width:"614",height:"952"})),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14833"},"#14833")),(0,i.kt)("h4",{id:"other-web-console-improvements"},"Other web console improvements"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"You can now copy query results from the web console directly to the clipboard ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14889"},"#14889")),(0,i.kt)("li",{parentName:"ul"},"The web console now shows the execution dialog for ",(0,i.kt)("inlineCode",{parentName:"li"},"query_controller")," tasks in the task view instead of the generic raw task details dialog. You can still access the raw task details from the ellipsis (...) menu ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14930"},"#14930)")),(0,i.kt)("li",{parentName:"ul"},"You can now select a horizontal range in the web console time chart to modify the current WHERE clause ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14929"},"#14929")),(0,i.kt)("li",{parentName:"ul"},"You can now set dynamic query parameters in the web console ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14921"},"#14921")),(0,i.kt)("li",{parentName:"ul"},"You can now edit the Coordinator dynamic configuration in the web console ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14791"},"#14791")),(0,i.kt)("li",{parentName:"ul"},"You can now prettify SQL queries and use flatten with a Kafka input format ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14906"},"#14906")),(0,i.kt)("li",{parentName:"ul"},"A warning now appears when a CSV or TSV sample contains newlines that Druid does not accept ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14783"},"#14783")),(0,i.kt)("li",{parentName:"ul"},"You can now select a format when downloading data ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14794"},"#14794")),(0,i.kt)("li",{parentName:"ul"},"Improved the clarity of cluster default rules in the retention dialog ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14793"},"#14793")),(0,i.kt)("li",{parentName:"ul"},"The web console now detects inline queries in the query text and lets you run them individually ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14801"},"#14810")),(0,i.kt)("li",{parentName:"ul"},"You can now reset specific partition offsets for a supervisor ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14863"},"#14863"))),(0,i.kt)("h3",{id:"ingestion"},"Ingestion"),(0,i.kt)("h4",{id:"json-and-auto-column-indexer"},"JSON and auto column indexer"),(0,i.kt)("p",null,"The ",(0,i.kt)("inlineCode",{parentName:"p"},"json")," column type is now equivalent to using ",(0,i.kt)("inlineCode",{parentName:"p"},"auto")," in JSON-based batch ingestion dimension specs. Upgrade your ingestion specs to ",(0,i.kt)("inlineCode",{parentName:"p"},"json")," to take advantage of the features and functionality of ",(0,i.kt)("inlineCode",{parentName:"p"},"auto"),", including the following:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Type specializations including ARRAY typed columns"),(0,i.kt)("li",{parentName:"ul"},"Better support for nested arrays of strings, longs, and doubles"),(0,i.kt)("li",{parentName:"ul"},"Smarter index utilization")),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"json")," type columns created with Druid 28.0.0 are not backwards compatible with Druid versions older than 26.0.0.\nIf you upgrade from one of these versions, you can continue to write nested columns in a backwards compatible format (version 4)."),(0,i.kt)("p",null,"For more information, see ",(0,i.kt)("a",{parentName:"p",href:"#nested-column-format"},"Nested column format in the upgrade notes"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14955"},"#14955"),"\n",(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14456"},"#14456")),(0,i.kt)("h4",{id:"ingestion-status"},"Ingestion status"),(0,i.kt)("p",null,"Ingestion reports now include a ",(0,i.kt)("inlineCode",{parentName:"p"},"segmentLoadStatus")," object that provides information related to the ingestion, such as duration and total segments."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14322"},"#14322")),(0,i.kt)("h4",{id:"sql-based-ingestion"},"SQL-based ingestion"),(0,i.kt)("h5",{id:"ability-to-ingest-array-types"},"Ability to ingest ARRAY types"),(0,i.kt)("p",null,"SQL-based ingestion now supports storing ARRAY typed values in ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/arrays"},"ARRAY typed columns")," as well as storing both VARCHAR and numeric typed arrays.\nPreviously, the MSQ task engine stored ARRAY typed values as ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/multi-value-dimensions"},"multi-value dimensions")," instead of ARRAY typed columns."),(0,i.kt)("p",null,"The MSQ task engine now includes the ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," query context parameter, which controls how\n",(0,i.kt)("inlineCode",{parentName:"p"},"ARRAY")," types are stored in Druid segments.\nSet the ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," query context parameter to ",(0,i.kt)("inlineCode",{parentName:"p"},"array")," to ingest ARRAY types."),(0,i.kt)("p",null,"In Druid 28.0.0, the default mode for ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," is ",(0,i.kt)("inlineCode",{parentName:"p"},"mvd")," for backwards compatibility, which only supports VARCHAR typed arrays and stores them as multi-value dimensions. This default is subject to change in future releases."),(0,i.kt)("p",null,"For information on how to migrate to the new behavior, see the ",(0,i.kt)("a",{parentName:"p",href:"#ingestion-options-for-array-typed-columns"},"Ingestion options for ARRAY typed columns in the upgrade notes"),".\nFor information on inserting, filtering, and grouping behavior for ",(0,i.kt)("inlineCode",{parentName:"p"},"ARRAY")," typed columns, see ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/arrays"},"Array columns"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15093"},"#15093")),(0,i.kt)("h5",{id:"numeric-array-type-support"},"Numeric array type support"),(0,i.kt)("p",null,"Row-based frames and, by extension, the MSQ task engine now support numeric array types. This means that all queries consuming or producing arrays work with the MSQ task engine. Numeric arrays can also be ingested using SQL-based ingestion with MSQ. For example, queries like ",(0,i.kt)("inlineCode",{parentName:"p"},"SELECT [1, 2]")," are valid now since they consume a numeric array instead of failing with an unsupported column type exception."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14900"},"#14900")),(0,i.kt)("h5",{id:"azure-blob-storage-support"},"Azure Blob Storage support"),(0,i.kt)("p",null,"Added support for Microsoft Azure Blob Storage.\nYou can now use fault tolerance and durable storage with Microsoft Azure Blob Storage.\nFor more information, see ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/multi-stage-query/reference#durable-storage"},"Durable storage"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14660"},"#14660")),(0,i.kt)("h5",{id:"other-sql-based-ingestion-improvements"},"Other SQL-based ingestion improvements"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Added a new ",(0,i.kt)("inlineCode",{parentName:"li"},"rowsPerPage")," context parameter for the MSQ task engine.\nUse ",(0,i.kt)("inlineCode",{parentName:"li"},"rowsPerPage")," to limit the number of rows per page. For more information on context parameters for the MSQ task engine, see ",(0,i.kt)("a",{parentName:"li",href:"https://druid.apache.org/docs/latest/multi-stage-query/reference#context-parameters"},"Context parameters")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14994"},"#14994")),(0,i.kt)("li",{parentName:"ul"},"Druid now ignores ",(0,i.kt)("inlineCode",{parentName:"li"},"ServiceClosedException")," on ",(0,i.kt)("inlineCode",{parentName:"li"},"postCounters")," while the controller is offline ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14707"},"#14707")),(0,i.kt)("li",{parentName:"ul"},"Improved error messages related to OVERWRITE keyword ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14870"},"#14870"))),(0,i.kt)("h4",{id:"streaming-ingestion"},"Streaming ingestion"),(0,i.kt)("h5",{id:"ability-to-reset-offsets-for-a-supervisor"},"Ability to reset offsets for a supervisor"),(0,i.kt)("p",null,"Added a new API endpoint ",(0,i.kt)("inlineCode",{parentName:"p"},"/druid/indexer/v1/supervisor/:supervisorId/resetOffsets")," to reset specific partition offsets for a supervisor without resetting the entire set.\nThis endpoint clears only the specified offsets in Kafka or sequence numbers in Kinesis, prompting the supervisor to resume data reading."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14772"},"#14772")),(0,i.kt)("h5",{id:"other-streaming-ingestion-improvements"},"Other streaming ingestion improvements"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Added ",(0,i.kt)("inlineCode",{parentName:"li"},"PropertyNamingStrategies")," from Jackson to fix Hadoop ingestion and make it compatible with newer Jackson ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14671"},"#14671")),(0,i.kt)("li",{parentName:"ul"},"Added pod name to the ",(0,i.kt)("inlineCode",{parentName:"li"},"TaskLocation")," object for Kubernetes task scheduling to make debugging easier ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14758"},"#14758")),(0,i.kt)("li",{parentName:"ul"},"Added lifecycle hooks to ",(0,i.kt)("inlineCode",{parentName:"li"},"KubernetesTaskRunner")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14790"},"#14790")),(0,i.kt)("li",{parentName:"ul"},"Added new method for ",(0,i.kt)("inlineCode",{parentName:"li"},"SqlStatementResource")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"SqlTaskResource")," to set request attribute ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14878"},"#14878")),(0,i.kt)("li",{parentName:"ul"},"Added a sampling factor for ",(0,i.kt)("inlineCode",{parentName:"li"},"DeterminePartitionsJob")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/13840"},"#13840")),(0,i.kt)("li",{parentName:"ul"},"Added ",(0,i.kt)("inlineCode",{parentName:"li"},"usedClusterCapacity")," to the ",(0,i.kt)("inlineCode",{parentName:"li"},"GET")," ",(0,i.kt)("inlineCode",{parentName:"li"},"/totalWorkerCapacity")," response. Use this API to get the total ingestion capacity on the overlord ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14888"},"#14888")),(0,i.kt)("li",{parentName:"ul"},"Improved Kubernetes task runner performance ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14649"},"#14649")),(0,i.kt)("li",{parentName:"ul"},"Improved handling of long data source names. Previously, the Kubernetes task runner would throw an error if the name of a data source was too long ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14620"},"#14620")),(0,i.kt)("li",{parentName:"ul"},"Improved the streaming ingestion completion timeout error message ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14636"},"#14636")),(0,i.kt)("li",{parentName:"ul"},"Druid now retries fetching S3 task logs on transient S3 errors ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14714"},"#14714")),(0,i.kt)("li",{parentName:"ul"},"Druid now reports ",(0,i.kt)("inlineCode",{parentName:"li"},"task/pending/time")," metrics for Kubernetes-based ingestion ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14698"},"#14698")),(0,i.kt)("li",{parentName:"ul"},"Druid now reports ",(0,i.kt)("inlineCode",{parentName:"li"},"k8s/peon/startup/time")," metrics for Kubernetes-based ingestion ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14771"},"#14771")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"handoffConditionTimeout")," now defaults to 15 minutes","\u2014","the default change won't affect existing supervisors ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14539"},"#14539")),(0,i.kt)("li",{parentName:"ul"},"Fixed an NPE with checkpoint parsing for streaming ingestion ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14353"},"#14353")),(0,i.kt)("li",{parentName:"ul"},"Fixed an issue with Hadoop ingestion writing arrays as ",(0,i.kt)("inlineCode",{parentName:"li"},"objects.toString")," as a result of transform expressions ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15127"},"#15127")),(0,i.kt)("li",{parentName:"ul"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"PodTemplateTaskAdapter")," now accounts for queryable tasks ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14789"},"#14789")),(0,i.kt)("li",{parentName:"ul"},"The rolling supervisor now restarts at ",(0,i.kt)("inlineCode",{parentName:"li"},"taskDuration")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14396"},"#14396")),(0,i.kt)("li",{parentName:"ul"},"S3 ",(0,i.kt)("inlineCode",{parentName:"li"},"deleteObjects")," requests are now retried if the failure state allows retry ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14776"},"#14776")),(0,i.kt)("li",{parentName:"ul"},"You can now ingest the name of a Kafka topic to a datasource ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14857"},"#14857"))),(0,i.kt)("h3",{id:"querying"},"Querying"),(0,i.kt)("h4",{id:"improved-lookup-function"},"Improved LOOKUP function"),(0,i.kt)("p",null,"The LOOKUP function now accepts an optional constant string as a third argument. This string is used to replace missing values in results. For example, the query ",(0,i.kt)("inlineCode",{parentName:"p"},"LOOKUP(store, 'store_to_country', 'NA')"),", returns ",(0,i.kt)("inlineCode",{parentName:"p"},"NA")," if the ",(0,i.kt)("inlineCode",{parentName:"p"},"store_to_country")," value is missing for a given ",(0,i.kt)("inlineCode",{parentName:"p"},"store"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14956"},"#14956")),(0,i.kt)("h4",{id:"avg-function"},"AVG function"),(0,i.kt)("p",null,"The AVG aggregation function now returns a ",(0,i.kt)("inlineCode",{parentName:"p"},"double")," instead of a ",(0,i.kt)("inlineCode",{parentName:"p"},"long"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15089"},"#15089")),(0,i.kt)("h4",{id:"improvements-to-earliest-and-latest-operators"},"Improvements to EARLIEST and LATEST operators"),(0,i.kt)("p",null,"Improved EARLIEST and LATEST operators as follows:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"EARLIEST and LATEST operators now rewrite to EARLIEST_BY and LATEST_BY during query processing to make the ",(0,i.kt)("inlineCode",{parentName:"li"},"__time")," column reference explicit to Calcite. ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15095"},"#15095")),(0,i.kt)("li",{parentName:"ul"},"You can now use EARLIEST/EARLIEST_BY and LATEST/LATEST_BY for STRING columns without specifying the ",(0,i.kt)("inlineCode",{parentName:"li"},"maxBytesPerValue")," parameter.\nIf you omit the ",(0,i.kt)("inlineCode",{parentName:"li"},"maxBytesPerValue")," parameter, the aggregations default to 1024 bytes for the buffer. ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14848"},"#14848"))),(0,i.kt)("h4",{id:"functions-for-evaluating-distinctness"},"Functions for evaluating distinctness"),(0,i.kt)("p",null,"New SQL and native query functions allow you to evaluate whether two expressions are distinct or not distinct.\nExpressions are distinct if they have different values or if one of them is NULL.\nExpressions are not distinct if their values are the same or if both of them are NULL."),(0,i.kt)("p",null,"Because the functions treat NULLs as known values  when used as a comparison operator, they always return true or false even if one or both expressions are NULL."),(0,i.kt)("p",null,"The following table shows the difference in behavior between the equals sign (=) and IS ","[NOT]"," DISTINCT FROM:"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"A"),(0,i.kt)("th",{parentName:"tr",align:null},"B"),(0,i.kt)("th",{parentName:"tr",align:null},"A=B"),(0,i.kt)("th",{parentName:"tr",align:null},"A IS NOT DISTINCT FROM B"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"0"),(0,i.kt)("td",{parentName:"tr",align:null},"0"),(0,i.kt)("td",{parentName:"tr",align:null},"true"),(0,i.kt)("td",{parentName:"tr",align:null},"true")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"0"),(0,i.kt)("td",{parentName:"tr",align:null},"1"),(0,i.kt)("td",{parentName:"tr",align:null},"false"),(0,i.kt)("td",{parentName:"tr",align:null},"false")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"0"),(0,i.kt)("td",{parentName:"tr",align:null},"null"),(0,i.kt)("td",{parentName:"tr",align:null},"unknown"),(0,i.kt)("td",{parentName:"tr",align:null},"false")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"null"),(0,i.kt)("td",{parentName:"tr",align:null},"null"),(0,i.kt)("td",{parentName:"tr",align:null},"unknown"),(0,i.kt)("td",{parentName:"tr",align:null},"true")))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14976"},"#14976")),(0,i.kt)("h4",{id:"functions-for-evaluating-equalities"},"Functions for evaluating equalities"),(0,i.kt)("p",null,"New SQL and native query functions allow you to evaluate whether a condition is true or false. These functions are different from ",(0,i.kt)("inlineCode",{parentName:"p"},"x == true")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"x != true")," in that they never return null even when the variable is null."),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"SQL function"),(0,i.kt)("th",{parentName:"tr",align:null},"Native function"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"IS_TRUE")),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"istrue()"))),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"IS_FALSE")),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"isfalse()"))),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"IS_NOT_TRUE")),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"nottrue()"))),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"IS_NOT_FALSE")),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"notfalse()"))))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14977"},"#14977")),(0,i.kt)("h4",{id:"function-to-decode-base64-encoded-strings"},"Function to decode Base64-encoded strings"),(0,i.kt)("p",null,"The new SQL and native query function, ",(0,i.kt)("inlineCode",{parentName:"p"},"decode_base64_utf8")," decodes a Base64-encoded string and returns the UTF-8-encoded string. For example, ",(0,i.kt)("inlineCode",{parentName:"p"},"decode_base64_utf8('aGVsbG8=')"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14943"},"#14943")),(0,i.kt)("h4",{id:"improved-subquery-guardrail"},"Improved subquery guardrail"),(0,i.kt)("p",null,"You can now set the ",(0,i.kt)("inlineCode",{parentName:"p"},"maxSubqueryBytes")," guardrail to one of the following:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("inlineCode",{parentName:"p"},"disabled"),": Default setting. Druid doesn't apply the guardrail around the number of bytes a subquery can generate.")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("p",{parentName:"li"},(0,i.kt)("inlineCode",{parentName:"p"},"auto"),": Druid calculates the amount of memory to use for the materialization of results as a portion of the fixed memory of the heap.",(0,i.kt)("br",{parentName:"p"}),"\n","In the query context, Druid uses the following formula to determine the upper limit on the number of bytes a subquery can generate:"),(0,i.kt)("pre",{parentName:"li"},(0,i.kt)("code",{parentName:"pre",className:"language-text"},"((total JVM space - memory occupied by lookups) * 0.5) / maximum queries that the system can handle concurrently\n"))),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("p",{parentName:"li"},"INTEGER: The number of bytes to use for materializing subquery results. Set a specific value if you understand the query patterns and want to optimize memory usage.",(0,i.kt)("br",{parentName:"p"}),"\n","For example, set the ",(0,i.kt)("inlineCode",{parentName:"p"},"maxSubqueryBytes")," parameter to 300000000 (",(0,i.kt)("inlineCode",{parentName:"p"},"300 * 1000 * 1000"),") for a 300 MB limit.\nSet the ",(0,i.kt)("inlineCode",{parentName:"p"},"maxSubqueryBytes")," parameter to 314572800 (",(0,i.kt)("inlineCode",{parentName:"p"},"300 * 1024 * 1024"),") for a 300 MiB limit."))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14808"},"#14808")),(0,i.kt)("h4",{id:"other-query-improvements"},"Other query improvements"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Added filters to the set of filters that work with UNNEST filter rewrite and pushdown ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14777"},"#14777")),(0,i.kt)("li",{parentName:"ul"},"Enabled ",(0,i.kt)("a",{parentName:"li",href:"https://druid.apache.org/docs/latest/querying/caching#whole-query-caching"},"whole-query caching")," on the Broker for ",(0,i.kt)("a",{parentName:"li",href:"https://druid.apache.org/docs/latest/querying/groupbyquery.html"},"groupBy v2")," queries ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/11595"},"#11595")),(0,i.kt)("li",{parentName:"ul"},"Improved performance of EARLIEST aggregator with vectorization ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14408"},"#14408"))),(0,i.kt)("h3",{id:"cluster-management"},"Cluster management"),(0,i.kt)("h4",{id:"unused-segments"},"Unused segments"),(0,i.kt)("p",null,"Druid now stops loading and moving segments as soon as they are marked as unused. This prevents Historical processes from spending time on superfluous loads of segments that will be unloaded later. You can mark segments as unused by a drop rule, overshadowing, or by calling ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/api-reference/data-management-api"},"the Data management API"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14644"},"#14644")),(0,i.kt)("h4",{id:"encrypt-data-in-transit"},"Encrypt data in transit"),(0,i.kt)("p",null,"The ",(0,i.kt)("inlineCode",{parentName:"p"},"net.spy.memcached")," client has been replaced with the AWS ElastiCache client. This change allows Druid to encrypt data in transit using TLS."),(0,i.kt)("p",null,"Configure it with the following properties:"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Property"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Default"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"druid.cache.enableTls")),(0,i.kt)("td",{parentName:"tr",align:null},"Enable TLS based connection for Memcached client. Boolean"),(0,i.kt)("td",{parentName:"tr",align:null},"false")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"druid.cache.clientMode")),(0,i.kt)("td",{parentName:"tr",align:null},"Client Mode. Static mode requires the user to specify individual cluster nodes. Dynamic mode uses ",(0,i.kt)("a",{parentName:"td",href:"https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/AutoDiscovery.HowAutoDiscoveryWorks.html"},"AutoDiscovery")," feature of AWS Memcached. String. ",(0,i.kt)("a",{parentName:"td",href:"https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/AutoDiscovery.Manual.html"},'"static"')," or ",(0,i.kt)("a",{parentName:"td",href:"https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/AutoDiscovery.Using.ModifyApp.Java.html"},'"dynamic"')),(0,i.kt)("td",{parentName:"tr",align:null},"static")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"druid.cache.skipTlsHostnameVerification")),(0,i.kt)("td",{parentName:"tr",align:null},"Skip TLS Hostname Verification. Boolean."),(0,i.kt)("td",{parentName:"tr",align:null},"true")))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14827/"},"#14827")),(0,i.kt)("h4",{id:"new-metadata-in-the-druid-segments-table"},"New metadata in the Druid segments table"),(0,i.kt)("p",null,"The Druid segments table now has a column called ",(0,i.kt)("inlineCode",{parentName:"p"},"used_flag_last_updated")," (VARCHAR (255)). This column is a UTC date string corresponding to the last time that the used column was modified."),(0,i.kt)("p",null,"Note that this is an incompatible change to the table. For upgrade information, see ",(0,i.kt)("a",{parentName:"p",href:"#upgrade-druid-segments-table"},"Upgrade Druid segments table"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/12599"},"#12599")),(0,i.kt)("h4",{id:"other-cluster-management-improvements"},"Other cluster management improvements"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"You can now use multiple console appenders in Peon logging ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14521"},"#14521")),(0,i.kt)("li",{parentName:"ul"},"Thread names of the processing pool for Indexer, Peon, and Historical processes now include the query ID ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15059"},"#15059")),(0,i.kt)("li",{parentName:"ul"},"The value for ",(0,i.kt)("inlineCode",{parentName:"li"},"replicationThrottleLimit")," used for smart segment loading has been increased from 2% to 5% of total number of used segments. The total number of replicas in the load queue at the start of a run plus the replicas assigned in a run is kept less than or equal to the throttle limit ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14913"},"#14913")),(0,i.kt)("li",{parentName:"ul"},"The value default  value for ",(0,i.kt)("inlineCode",{parentName:"li"},"balancerComputeThreads")," is now calculated based on the number of CPUs divided by 2. Previously, the value was ",(0,i.kt)("inlineCode",{parentName:"li"},"1"),". Smart segment loading uses this computed value ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14902"},"#14902")),(0,i.kt)("li",{parentName:"ul"},"Improved ",(0,i.kt)("inlineCode",{parentName:"li"},"InvalidNullByteFault")," errors. They now include the output column name instead of the query column name for ease of use ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14780"},"#14780")),(0,i.kt)("li",{parentName:"ul"},"Improved the exception message when ",(0,i.kt)("inlineCode",{parentName:"li"},"DruidLeaderClient")," doesn't find leader node ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14775"},"#14775")),(0,i.kt)("li",{parentName:"ul"},"Reduced Coordinator logging under normal operation ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14926"},"#14926")),(0,i.kt)("li",{parentName:"ul"},"Heap usage is now more predictable at very minor performance cost when using nested values ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14919"},"#14919")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("strong",{parentName:"li"},"Middle Manager-less ingestion"),": ",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"sys.tasks")," metadata table and web console now show the Kubernetes pod name rather than the peon location when using Middle Manager-less ingestion ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14959"},"#14959")),(0,i.kt)("li",{parentName:"ul"},"Added support for Middle Manager-less ingestion to migrate with zero downtime to and from ",(0,i.kt)("inlineCode",{parentName:"li"},"WorkerTaskRunners")," that use Middle Managers ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14918"},"#14918")))),(0,i.kt)("li",{parentName:"ul"},"Druid extensions cannot bind custom Coordinator duties to the duty groups ",(0,i.kt)("inlineCode",{parentName:"li"},"IndexingServiceDuties")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"MetadataStoreManagementDuties")," anymore. These are meant to be core coordinator built-in flows and should not be affected by custom duties. Users can still define a ",(0,i.kt)("inlineCode",{parentName:"li"},"CustomCoordinatorDuty")," with a custom duty group and period ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14891"},"#14891")),(0,i.kt)("li",{parentName:"ul"},"Druid now adjusts ",(0,i.kt)("inlineCode",{parentName:"li"},"balancerComputeThreads")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"maxSegmentsToMove")," automatically based on usage skew between the Historical processes in a tier ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14584"},"#14584")),(0,i.kt)("li",{parentName:"ul"},"Removed the configurable property ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.coordinator.compaction.skipLockedIntervals")," because it should always be ",(0,i.kt)("inlineCode",{parentName:"li"},"true")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14807"},"#14807")),(0,i.kt)("li",{parentName:"ul"},"Updated mm-less task runner lifecycle logic to better match the logic in the HTTP and ZooKeeper worker task runners ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14895"},"#14895"))),(0,i.kt)("h3",{id:"data-management"},"Data management"),(0,i.kt)("h4",{id:"alert-message-for-segment-assignments"},"Alert message for segment assignments"),(0,i.kt)("p",null,"Improved alert message for segment assignments when an invalid tier is specified in a load rule or when no rule applies on a segment."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14696"},"#14696")),(0,i.kt)("h4",{id:"coordinator-api-for-unused-segments"},"Coordinator API for unused segments"),(0,i.kt)("p",null,"Added ",(0,i.kt)("inlineCode",{parentName:"p"},"includeUnused")," as an optional parameter to the Coordinator API.\nYou can send a ",(0,i.kt)("inlineCode",{parentName:"p"},"GET")," request to ",(0,i.kt)("inlineCode",{parentName:"p"},"/druid/coordinator/v1/metadata/datasources/{dataSourceName}/segments/{segmentId}?includeUnused=true")," to retrieve the metadata for a specific segment as stored in the metadata store."),(0,i.kt)("p",null,"The API also returns unused segments if the ",(0,i.kt)("inlineCode",{parentName:"p"},"includeUnused")," parameter is set."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14846/"},"#14846")),(0,i.kt)("h4",{id:"kill-task-improvements"},"Kill task improvements"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Added ",(0,i.kt)("inlineCode",{parentName:"li"},"killTaskSlotRatio")," and ",(0,i.kt)("inlineCode",{parentName:"li"},"maxKillTaskSlots")," dynamic configuration properties to allow control of task resource usage spawned by the ",(0,i.kt)("inlineCode",{parentName:"li"},"KillUnusedSegments")," coordinator task ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14769"},"#14769")),(0,i.kt)("li",{parentName:"ul"},"The value for ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.coordinator.kill.period")," can now be greater than or equal to ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.coordinator.period.indexingPeriod"),". Previously, it had to be greater than ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.coordinator.period.indexingPeriod"),". Additionally, the leader Coordinator now keeps track of the last submitted ",(0,i.kt)("inlineCode",{parentName:"li"},"kill")," task for a datasource to avoid submitting duplicate ",(0,i.kt)("inlineCode",{parentName:"li"},"kill")," tasks ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14831"},"#14831")),(0,i.kt)("li",{parentName:"ul"},"Added a new config ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.coordinator.kill.bufferPeriod")," for a buffer period. This config defines the amount of time that a segment is unused before ",(0,i.kt)("inlineCode",{parentName:"li"},"KillUnusedSegment")," can kill it. Using the default ",(0,i.kt)("inlineCode",{parentName:"li"},"PT24H"),", if you mark a segment as unused at ",(0,i.kt)("inlineCode",{parentName:"li"},"2022-06-01T00:05:00.000Z"),", then the segment cannot be killed until at or after ",(0,i.kt)("inlineCode",{parentName:"li"},"2022-06-02T00:05:00.000Z")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/12599"},"#12599")),(0,i.kt)("li",{parentName:"ul"},"You can now specify the following parameters for a ",(0,i.kt)("inlineCode",{parentName:"li"},"kill")," task:",(0,i.kt)("ul",{parentName:"li"},(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"batchSize"),": The maximum number of segments to delete in one ",(0,i.kt)("inlineCode",{parentName:"li"},"kill")," batch ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14642"},"#14642")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"limit"),": The maximum number of segments for a ",(0,i.kt)("inlineCode",{parentName:"li"},"kill")," task to delete ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14662"},"#14662")))),(0,i.kt)("li",{parentName:"ul"},"You can now speed up ",(0,i.kt)("inlineCode",{parentName:"li"},"kill")," tasks by batch deleting multiple segments stored in S3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14131"},"#14131")),(0,i.kt)("li",{parentName:"ul"},"Kill tasks that delete unused segments now publish a task report containing kill stats such as ",(0,i.kt)("inlineCode",{parentName:"li"},"numSegmentsKilled"),", ",(0,i.kt)("inlineCode",{parentName:"li"},"numBatchesProcessed"),", and ",(0,i.kt)("inlineCode",{parentName:"li"},"numSegmentsMarkedAsUnused")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15023"},"#15023")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"IndexerSQLMetadataStorageCoordinator")," now uses the JDBI ",(0,i.kt)("inlineCode",{parentName:"li"},"PreparedBatch")," instead of issuing single update statements inside a transaction to mitigate scaling challenges ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14639"},"#14639"))),(0,i.kt)("h3",{id:"metrics-and-monitoring"},"Metrics and monitoring"),(0,i.kt)("h4",{id:"new-ingestion-metrics"},"New ingestion metrics"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Metric"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Dimensions"),(0,i.kt)("th",{parentName:"tr",align:null},"Normal value"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"ingest/input/bytes")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of bytes read from input sources, after decompression but prior to parsing. This covers all data read, including data that does not end up being fully processed and ingested. For example, this includes data that ends up being rejected for being unparseable or filtered out."),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"dataSource"),", ",(0,i.kt)("inlineCode",{parentName:"td"},"taskId"),", ",(0,i.kt)("inlineCode",{parentName:"td"},"taskType"),", ",(0,i.kt)("inlineCode",{parentName:"td"},"groupId"),", ",(0,i.kt)("inlineCode",{parentName:"td"},"tags")),(0,i.kt)("td",{parentName:"tr",align:null},"Depends on the amount of data read.")))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14582"},"#14582")),(0,i.kt)("h4",{id:"new-query-metrics"},"New query metrics"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Metric"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Dimensions"),(0,i.kt)("th",{parentName:"tr",align:null},"Normal value"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"mergeBuffer/pendingRequests")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of requests waiting to acquire a batch of buffers from the merge buffer pool."),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is exposed through the ",(0,i.kt)("inlineCode",{parentName:"td"},"QueryCountStatsMonitor")," module for the Broker."),(0,i.kt)("td",{parentName:"tr",align:null})))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15025"},"#15025")),(0,i.kt)("h4",{id:"new-zookeeper-metrics"},"New ZooKeeper metrics"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Metric"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Dimensions"),(0,i.kt)("th",{parentName:"tr",align:null},"Normal value"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"zk/connected")),(0,i.kt)("td",{parentName:"tr",align:null},"Indicator of connection status. ",(0,i.kt)("inlineCode",{parentName:"td"},"1")," for connected, ",(0,i.kt)("inlineCode",{parentName:"td"},"0")," for disconnected. Emitted once per monitor period."),(0,i.kt)("td",{parentName:"tr",align:null},"None"),(0,i.kt)("td",{parentName:"tr",align:null},"1")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"zk/reconnect/time")),(0,i.kt)("td",{parentName:"tr",align:null},"Amount of time, in milliseconds, that a server was disconnected from ZooKeeper before reconnecting. Emitted on reconnection. Not emitted if connection to ZooKeeper is permanently lost, because in this case, there is no reconnection."),(0,i.kt)("td",{parentName:"tr",align:null},"None"),(0,i.kt)("td",{parentName:"tr",align:null},"Not present")))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14333"},"#14333")),(0,i.kt)("h4",{id:"new-subquery-metrics-for-the-broker"},"New subquery metrics for the Broker"),(0,i.kt)("p",null,"The new  ",(0,i.kt)("inlineCode",{parentName:"p"},"SubqueryCountStatsMonitor")," emits metrics corresponding to the subqueries and their execution."),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Metric"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Dimensions"),(0,i.kt)("th",{parentName:"tr",align:null},"Normal value"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"subquery/rowLimit/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of subqueries whose results are materialized as rows (Java objects on heap)."),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is only available if the ",(0,i.kt)("inlineCode",{parentName:"td"},"SubqueryCountStatsMonitor")," module is included."),(0,i.kt)("td",{parentName:"tr",align:null})),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"subquery/byteLimit/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of subqueries whose results are materialized as frames (Druid's internal byte representation of rows)."),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is only available if the ",(0,i.kt)("inlineCode",{parentName:"td"},"SubqueryCountStatsMonitor")," module is included."),(0,i.kt)("td",{parentName:"tr",align:null})),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"subquery/fallback/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of subqueries which cannot be materialized as frames"),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is only available if the ",(0,i.kt)("inlineCode",{parentName:"td"},"SubqueryCountStatsMonitor")," module is included."),(0,i.kt)("td",{parentName:"tr",align:null})),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"subquery/fallback/insufficientType/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of subqueries which cannot be materialized as frames due to insufficient type information in the row signature."),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is only available if the ",(0,i.kt)("inlineCode",{parentName:"td"},"SubqueryCountStatsMonitor")," module is included."),(0,i.kt)("td",{parentName:"tr",align:null})),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"subquery/fallback/unknownReason/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of subqueries which cannot be materialized as frames due other reasons."),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is only available if the ",(0,i.kt)("inlineCode",{parentName:"td"},"SubqueryCountStatsMonitor")," module is included."),(0,i.kt)("td",{parentName:"tr",align:null})),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"query/rowLimit/exceeded/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of queries whose inlined subquery results exceeded the given row limit"),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is only available if the ",(0,i.kt)("inlineCode",{parentName:"td"},"SubqueryCountStatsMonitor")," module is included."),(0,i.kt)("td",{parentName:"tr",align:null})),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"query/byteLimit/exceeded/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of queries whose inlined subquery results exceeded the given byte limit"),(0,i.kt)("td",{parentName:"tr",align:null},"This metric is only available if the ",(0,i.kt)("inlineCode",{parentName:"td"},"SubqueryCountStatsMonitor")," module is included."),(0,i.kt)("td",{parentName:"tr",align:null})))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14808"},"#14808")),(0,i.kt)("h4",{id:"new-coordinator-metrics"},"New Coordinator metrics"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Metric"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Dimensions"),(0,i.kt)("th",{parentName:"tr",align:null},"Normal value"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"killTask/availableSlot/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of available task slots that can be used for auto kill tasks in the auto kill run. This is the max number of task slots minus any currently running auto kill tasks."),(0,i.kt)("td",{parentName:"tr",align:null}),(0,i.kt)("td",{parentName:"tr",align:null},"Varies")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"killTask/maxSlot/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Maximum number of task slots available for auto kill tasks in the auto kill run."),(0,i.kt)("td",{parentName:"tr",align:null}),(0,i.kt)("td",{parentName:"tr",align:null},"Varies")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"kill/task/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of tasks issued in the auto kill run."),(0,i.kt)("td",{parentName:"tr",align:null}),(0,i.kt)("td",{parentName:"tr",align:null},"Varies")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"kill/pendingSegments/count")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of stale pending segments deleted from the metadata store."),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"dataSource")),(0,i.kt)("td",{parentName:"tr",align:null},"Varies")))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14782"},"#14782"),"\n",(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14951"},"#14951")),(0,i.kt)("h4",{id:"new-compaction-metrics"},"New compaction metrics"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Metric"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Dimensions"),(0,i.kt)("th",{parentName:"tr",align:null},"Normal value"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"compact/segmentAnalyzer/fetchAndProcessMillis")),(0,i.kt)("td",{parentName:"tr",align:null},"Time taken to fetch and process segments to infer the schema for the compaction task to run."),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"dataSource"),", ",(0,i.kt)("inlineCode",{parentName:"td"},"taskId"),", ",(0,i.kt)("inlineCode",{parentName:"td"},"taskType"),", ",(0,i.kt)("inlineCode",{parentName:"td"},"groupId"),",",(0,i.kt)("inlineCode",{parentName:"td"},"tags")),(0,i.kt)("td",{parentName:"tr",align:null},"Varies. A high value indicates compaction tasks will speed up from explicitly setting the data schema.")))),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14752"},"#14752")),(0,i.kt)("h4",{id:"segment-scan-metrics"},"Segment scan metrics"),(0,i.kt)("p",null,"Added a new metric to figure out the usage of ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.processing.numThreads")," on the Historicals/Indexers/Peons."),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Metric"),(0,i.kt)("th",{parentName:"tr",align:null},"Description"),(0,i.kt)("th",{parentName:"tr",align:null},"Dimensions"),(0,i.kt)("th",{parentName:"tr",align:null},"Normal value"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"segment/scan/active")),(0,i.kt)("td",{parentName:"tr",align:null},"Number of segments currently scanned. This metric also indicates how many threads from ",(0,i.kt)("inlineCode",{parentName:"td"},"druid.processing.numThreads")," are currently being used."),(0,i.kt)("td",{parentName:"tr",align:null}),(0,i.kt)("td",{parentName:"tr",align:null},"Close to ",(0,i.kt)("inlineCode",{parentName:"td"},"druid.processing.numThreads"))))),(0,i.kt)("h4",{id:"new-kafka-consumer-metrics"},"New Kafka consumer metrics"),(0,i.kt)("p",null,"Added the following Kafka consumer metrics:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"kafka/consumer/bytesConsumed"),": Equivalent to the Kafka consumer metric ",(0,i.kt)("inlineCode",{parentName:"li"},"bytes-consumed-total"),". Only emitted for Kafka tasks."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"kafka/consumer/recordsConsumed"),": Equivalent to the Kafka consumer metric ",(0,i.kt)("inlineCode",{parentName:"li"},"records-consumed-total"),". Only emitted for Kafka tasks.")),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14582"},"#14582")),(0,i.kt)("h4",{id:"serviceheartbeat-metrics"},"service/heartbeat metrics"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Exposed ",(0,i.kt)("inlineCode",{parentName:"li"},"service/heartbeat")," metric to ",(0,i.kt)("inlineCode",{parentName:"li"},"statsd-reporter")," ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14564"},"#14564")),(0,i.kt)("li",{parentName:"ul"},"Modified the ",(0,i.kt)("inlineCode",{parentName:"li"},"service/heartbeat")," metric to expose the ",(0,i.kt)("inlineCode",{parentName:"li"},"leader")," dimension ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14593"},"#14593"))),(0,i.kt)("h4",{id:"tombstone-and-segment-counts"},"Tombstone and segment counts"),(0,i.kt)("p",null,"Added ",(0,i.kt)("inlineCode",{parentName:"p"},"ingest/tombstones/count")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"ingest/segments/count")," metrics in MSQ to report the number of tombstones and segments after Druid finishes publishing segments."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14980"},"#14980")),(0,i.kt)("h3",{id:"extensions"},"Extensions"),(0,i.kt)("h4",{id:"ingestion-task-payloads-for-kubernetes"},"Ingestion task payloads for Kubernetes"),(0,i.kt)("p",null,"You can now provide compressed task payloads larger than 128 KB when you run MiddleManager-less ingestion jobs."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14887"},"#14887")),(0,i.kt)("h4",{id:"prometheus-emitter"},"Prometheus emitter"),(0,i.kt)("p",null,"The Prometheus emitter now supports a new optional configuration parameter, ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.emitter.prometheus.extraLabels"),".\nThis addition offers the flexibility to add arbitrary extra labels to Prometheus metrics, providing more granular control in managing and identifying data across multiple Druid clusters or other dimensions.\nFor more information, see ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/development/extensions-contrib/prometheus"},"Prometheus emitter extension"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14728"},"#14728")),(0,i.kt)("h3",{id:"documentation-improvements"},"Documentation improvements"),(0,i.kt)("p",null,"We've moved Jupyter notebooks that guide you through query, ingestion, and data management with Apache Druid to the new ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/implydata/learn-druid"},"Learn Druid")," repository.\nThe repository also contains a Docker Compose file to get you up and running with a learning lab."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/15136"},"#15136")),(0,i.kt)("h2",{id:"upgrade-notes-and-incompatible-changes"},"Upgrade notes and incompatible changes"),(0,i.kt)("h3",{id:"upgrade-notes"},"Upgrade notes"),(0,i.kt)("h4",{id:"upgrade-druid-segments-table"},"Upgrade Druid segments table"),(0,i.kt)("p",null,"Druid 28.0.0 adds a new column to the Druid metadata table that requires an update to the table."),(0,i.kt)("p",null,"If ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.metadata.storage.connector.createTables")," is set to ",(0,i.kt)("inlineCode",{parentName:"p"},"true")," and the metadata store user has DDL privileges, the segments table gets automatically updated at startup to include the new ",(0,i.kt)("inlineCode",{parentName:"p"},"used_flag_last_updated")," column. No additional work is needed for the upgrade."),(0,i.kt)("p",null,"If either of those requirements are not met, pre-upgrade steps are required. You must make these updates before you upgrade to Druid 28.0.0, or the Coordinator and Overlord processes fail."),(0,i.kt)("p",null,"Although you can manually alter your table to add the new ",(0,i.kt)("inlineCode",{parentName:"p"},"used_flag_last_updated")," column, Druid also provides a CLI tool to do it."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/12599"},"#12599")),(0,i.kt)("admonition",{type:"warning"},(0,i.kt)("p",{parentName:"admonition"},"If your metadata store doesn\u2019t support instant ADD COLUMN semantics, like versions of MySQL prior to 8.0, and you have a very large segments table, adding a column to segments table can take a long time, block other metadata operations, and use large amounts of disk.")),(0,i.kt)("p",null,"In the example commands below:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"lib")," is the Druid lib directory"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"extensions")," is the Druid extensions directory"),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"base")," corresponds to the value of ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.metadata.storage.tables.base")," in the configuration, ",(0,i.kt)("inlineCode",{parentName:"li"},"druid")," by default."),(0,i.kt)("li",{parentName:"ul"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"--connectURI")," parameter corresponds to the value of ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.metadata.storage.connector.connectURI"),"."),(0,i.kt)("li",{parentName:"ul"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"--user")," parameter corresponds to the value of ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.metadata.storage.connector.user"),"."),(0,i.kt)("li",{parentName:"ul"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"--password")," parameter corresponds to the value of ",(0,i.kt)("inlineCode",{parentName:"li"},"druid.metadata.storage.connector.password"),"."),(0,i.kt)("li",{parentName:"ul"},"The ",(0,i.kt)("inlineCode",{parentName:"li"},"--action")," parameter corresponds to the update action you are executing. In this case, it is ",(0,i.kt)("inlineCode",{parentName:"li"},"add-last-used-to-segments"))),(0,i.kt)("h5",{id:"upgrade-step-for-mysql"},"Upgrade step for MySQL"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'cd ${DRUID_ROOT}\njava -classpath "lib/*" -Dlog4j.configurationFile=conf/druid/cluster/_common/log4j2.xml -Ddruid.extensions.directory="extensions" -Ddruid.extensions.loadList=[\\"mysql-metadata-storage\\"] -Ddruid.metadata.storage.type=mysql org.apache.druid.cli.Main tools metadata-update --connectURI="<mysql-uri>" --user USER --password PASSWORD --base druid --action add-used-flag-last-updated-to-segments\n')),(0,i.kt)("h5",{id:"upgrade-step-for-postgresql"},"Upgrade step for PostgreSQL"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'cd ${DRUID_ROOT}\njava -classpath "lib/*" -Dlog4j.configurationFile=conf/druid/cluster/_common/log4j2.xml -Ddruid.extensions.directory="extensions" -Ddruid.extensions.loadList=[\\"postgresql-metadata-storage\\"] -Ddruid.metadata.storage.type=postgresql org.apache.druid.cli.Main tools metadata-update --connectURI="<postgresql-uri>" --user \xa0USER --password PASSWORD --base druid --action add-used-flag-last-updated-to-segments\n')),(0,i.kt)("h5",{id:"manual-upgrade-step"},"Manual upgrade step"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-SQL"},"ALTER TABLE druid_segments\nADD used_flag_last_updated varchar(255);\n")),(0,i.kt)("h4",{id:"recommended-syntax-for-sql-unnest-1"},"Recommended syntax for SQL UNNEST"),(0,i.kt)("p",null,"The recommended syntax for SQL UNNEST has changed. We recommend using CROSS JOIN instead of commas for most queries to prevent issues with precedence. For example, use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT column_alias_name1 FROM datasource CROSS JOIN UNNEST(source_expression1) AS table_alias_name1(column_alias_name1) CROSS JOIN UNNEST(source_expression2) AS table_alias_name2(column_alias_name2), ...\n")),(0,i.kt)("p",null,"Do not use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT column_alias_name FROM datasource, UNNEST(source_expression1) AS table_alias_name1(column_alias_name1), UNNEST(source_expression2) AS table_alias_name2(column_alias_name2), ...\n")),(0,i.kt)("h4",{id:"dynamic-parameters-1"},"Dynamic parameters"),(0,i.kt)("p",null,"The Apache Calcite version has been upgraded from 1.21 to 1.35. As part of the Calcite upgrade, the behavior of type inference for dynamic parameters has changed. To avoid any type interference issues, explicitly ",(0,i.kt)("inlineCode",{parentName:"p"},"CAST")," all dynamic parameters as a specific data type in SQL queries. For example, use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT (1 * CAST (? as DOUBLE))/2 as tmp\n")),(0,i.kt)("p",null,"Do not use:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-sql"},"SELECT (1 * ?)/2 as tmp\n")),(0,i.kt)("h4",{id:"nested-column-format"},"Nested column format"),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"json")," type columns created with Druid 28.0.0 are not backwards compatible with Druid versions older than 26.0.0.\nIf you are upgrading from a version prior to Druid 26.0.0 and you use ",(0,i.kt)("inlineCode",{parentName:"p"},"json")," columns, upgrade to Druid 26.0.0 before you upgrade to Druid 28.0.0.\nAdditionally, to downgrade to a version older than Druid 26.0.0, any new segments created in Druid 28.0.0 should be re-ingested using Druid 26.0.0 or 27.0.0 prior to further downgrading."),(0,i.kt)("p",null,"When upgrading from a previous version, you can continue to write nested columns in a backwards compatible format (version 4)."),(0,i.kt)("p",null,"In a classic batch ingestion job, include ",(0,i.kt)("inlineCode",{parentName:"p"},"formatVersion")," in the ",(0,i.kt)("inlineCode",{parentName:"p"},"dimensions")," list of the ",(0,i.kt)("inlineCode",{parentName:"p"},"dimensionsSpec")," property. For example:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-json"},'      "dimensionsSpec": {\n        "dimensions": [\n          "product",\n          "department",\n          {\n            "type": "json",\n            "name": "shipTo",\n            "formatVersion": 4\n          }\n        ]\n      },\n')),(0,i.kt)("p",null,"To set the default nested column version, set the desired format version in the common runtime properties. For example:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-java"},"druid.indexing.formats.nestedColumnFormatVersion=4\n")),(0,i.kt)("h4",{id:"sql-compatibility-1"},"SQL compatibility"),(0,i.kt)("p",null,"Starting with Druid 28.0.0, the default way Druid treats nulls and booleans has changed."),(0,i.kt)("p",null,"For nulls, Druid now differentiates between an empty string and a record with no data as well as between an empty numerical record and ",(0,i.kt)("inlineCode",{parentName:"p"},"0"),".",(0,i.kt)("br",{parentName:"p"}),"\n","You can revert to the previous behavior by setting ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.generic.useDefaultValueForNull")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"true"),"."),(0,i.kt)("p",null,"This property affects both storage and querying, and must be set on all Druid service types to be available at both ingestion time and query time. Reverting this setting to the old value restores the previous behavior without reingestion."),(0,i.kt)("p",null,"For booleans, Druid now strictly uses ",(0,i.kt)("inlineCode",{parentName:"p"},"1")," (true) or ",(0,i.kt)("inlineCode",{parentName:"p"},"0")," (false). Previously, true and false could be represented either as ",(0,i.kt)("inlineCode",{parentName:"p"},"true")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"false")," as well as ",(0,i.kt)("inlineCode",{parentName:"p"},"1")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"0"),", respectively. In addition, Druid now returns a null value for boolean comparisons like ",(0,i.kt)("inlineCode",{parentName:"p"},"True && NULL"),"."),(0,i.kt)("p",null,"You can revert to the previous behavior by setting ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.expressions.useStrictBooleans")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"false"),".\nThis property affects both storage and querying, and must be set on all Druid service types to be available at both ingestion time and query time. Reverting this setting to the old value restores the previous behavior without reingestion."),(0,i.kt)("p",null,"The following table illustrates some example scenarios and the impact of the changes."),(0,i.kt)("details",null,(0,i.kt)("summary",null,"Show the table"),(0,i.kt)("table",null,(0,i.kt)("thead",{parentName:"table"},(0,i.kt)("tr",{parentName:"thead"},(0,i.kt)("th",{parentName:"tr",align:null},"Query"),(0,i.kt)("th",{parentName:"tr",align:null},"Druid 27.0.0 and earlier"),(0,i.kt)("th",{parentName:"tr",align:null},"Druid 28.0.0 and later"))),(0,i.kt)("tbody",{parentName:"table"},(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Query empty string"),(0,i.kt)("td",{parentName:"tr",align:null},"Empty string (",(0,i.kt)("inlineCode",{parentName:"td"},"''"),") or null"),(0,i.kt)("td",{parentName:"tr",align:null},"Empty string (",(0,i.kt)("inlineCode",{parentName:"td"},"''"),")")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Query null string"),(0,i.kt)("td",{parentName:"tr",align:null},"Null or empty"),(0,i.kt)("td",{parentName:"tr",align:null},"Null")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"COUNT(*)"),(0,i.kt)("td",{parentName:"tr",align:null},"All rows, including nulls"),(0,i.kt)("td",{parentName:"tr",align:null},"All rows, including nulls")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"COUNT(column)"),(0,i.kt)("td",{parentName:"tr",align:null},"All rows excluding empty strings"),(0,i.kt)("td",{parentName:"tr",align:null},"All rows including empty strings but excluding nulls")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Expression 100 && 11"),(0,i.kt)("td",{parentName:"tr",align:null},"11"),(0,i.kt)("td",{parentName:"tr",align:null},"1")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Expression 100 ","|","|"," 11"),(0,i.kt)("td",{parentName:"tr",align:null},"100"),(0,i.kt)("td",{parentName:"tr",align:null},"1")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Null FLOAT/DOUBLE column"),(0,i.kt)("td",{parentName:"tr",align:null},"0.0"),(0,i.kt)("td",{parentName:"tr",align:null},"Null")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Null LONG column"),(0,i.kt)("td",{parentName:"tr",align:null},"0"),(0,i.kt)("td",{parentName:"tr",align:null},"Null")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Null ",(0,i.kt)("inlineCode",{parentName:"td"},"__time")," column"),(0,i.kt)("td",{parentName:"tr",align:null},"0, meaning 1970-01-01 00:00:00 UTC"),(0,i.kt)("td",{parentName:"tr",align:null},"1970-01-01 00:00:00 UTC")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"Null MVD column"),(0,i.kt)("td",{parentName:"tr",align:null},(0,i.kt)("inlineCode",{parentName:"td"},"''")),(0,i.kt)("td",{parentName:"tr",align:null},"Null")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"ARRAY"),(0,i.kt)("td",{parentName:"tr",align:null},"Null"),(0,i.kt)("td",{parentName:"tr",align:null},"Null")),(0,i.kt)("tr",{parentName:"tbody"},(0,i.kt)("td",{parentName:"tr",align:null},"COMPLEX"),(0,i.kt)("td",{parentName:"tr",align:null},"none"),(0,i.kt)("td",{parentName:"tr",align:null},"Null"))))),(0,i.kt)("p",null,"Before upgrading to Druid 28.0.0, update your queries to account for the changed behavior as described in the following sections."),(0,i.kt)("h5",{id:"null-filters"},"NULL filters"),(0,i.kt)("p",null,"If your queries use NULL in the filter condition to match both nulls and empty strings, you should add an explicit filter clause for empty strings. For example, update ",(0,i.kt)("inlineCode",{parentName:"p"},"s IS NULL")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"s IS NULL OR s = ''"),"."),(0,i.kt)("h5",{id:"count-functions"},"COUNT functions"),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"COUNT(column)")," now counts empty strings. If you want to continue excluding empty strings from the count, replace ",(0,i.kt)("inlineCode",{parentName:"p"},"COUNT(column)")," with ",(0,i.kt)("inlineCode",{parentName:"p"},"COUNT(column) FILTER(WHERE column <> '')"),"."),(0,i.kt)("h5",{id:"groupby-queries"},"GroupBy queries"),(0,i.kt)("p",null,"GroupBy queries on columns containing null values can now have additional entries as nulls can co-exist with empty strings."),(0,i.kt)("h4",{id:"stop-supervisors-that-ingest-from-multiple-kafka-topics-before-downgrading"},"Stop Supervisors that ingest from multiple Kafka topics before downgrading"),(0,i.kt)("p",null,"If you have added supervisors that ingest from multiple Kafka topics in Druid 28.0.0 or later, stop those supervisors before downgrading to a version prior to Druid 28.0.0 because the supervisors will fail in versions prior to Druid 28.0.0."),(0,i.kt)("h4",{id:"lenientaggregatormerge-deprecated"},(0,i.kt)("inlineCode",{parentName:"h4"},"lenientAggregatorMerge")," deprecated"),(0,i.kt)("p",null,(0,i.kt)("inlineCode",{parentName:"p"},"lenientAggregatorMerge")," property in segment metadata queries has been deprecated. It will be removed in future releases.\nUse ",(0,i.kt)("inlineCode",{parentName:"p"},"aggregatorMergeStrategy")," instead. ",(0,i.kt)("inlineCode",{parentName:"p"},"aggregatorMergeStrategy")," also supports the ",(0,i.kt)("inlineCode",{parentName:"p"},"latest")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"earliest")," strategies in addition to ",(0,i.kt)("inlineCode",{parentName:"p"},"strict")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"lenient")," strategies from ",(0,i.kt)("inlineCode",{parentName:"p"},"lenientAggregatorMerge"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14560"},"#14560"),"\n",(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14598"},"#14598")),(0,i.kt)("h4",{id:"broker-parallel-merge-config-options"},"Broker parallel merge config options"),(0,i.kt)("p",null,"The paths for ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.processing.merge.pool.*")," and ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.processing.merge.task.*")," have been flattened to use ",(0,i.kt)("inlineCode",{parentName:"p"},"druid.processing.merge.*")," instead. The legacy paths for the configs are now deprecated and will be removed in a future release. Migrate your settings to use the new paths because the old paths will be ignored in the future."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14695"},"#14695")),(0,i.kt)("h4",{id:"ingestion-options-for-array-typed-columns"},"Ingestion options for ARRAY typed columns"),(0,i.kt)("p",null,"Starting with Druid 28.0.0, the MSQ task engine can detect and ingest arrays as ARRAY typed columns when you set the query context parameter ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"array"),".\nThe ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," context parameter controls how ARRAY type values are stored in Druid segments."),(0,i.kt)("p",null,"When you set ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"array")," (recommended for SQL compliance), the MSQ task engine stores all ARRAY typed values in ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/arrays"},"ARRAY typed columns")," and supports storing both VARCHAR and numeric typed arrays."),(0,i.kt)("p",null,"For backwards compatibility, ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," defaults to ",(0,i.kt)("inlineCode",{parentName:"p"},"mvd"),". When ",(0,i.kt)("inlineCode",{parentName:"p"},'"arrayIngestMode":"mvd"'),", Druid only supports VARCHAR typed arrays and stores them as ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/multi-value-dimensions"},"multi-value string columns"),"."),(0,i.kt)("p",null,"When you set ",(0,i.kt)("inlineCode",{parentName:"p"},"arrayIngestMode")," to ",(0,i.kt)("inlineCode",{parentName:"p"},"none"),", Druid throws an exception when trying to store any type of arrays."),(0,i.kt)("p",null,"For more information on how to ingest ",(0,i.kt)("inlineCode",{parentName:"p"},"ARRAY")," typed columns with SQL-based ingestion, see ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/sql-data-types#arrays"},"SQL data types")," and ",(0,i.kt)("a",{parentName:"p",href:"https://druid.apache.org/docs/latest/querying/arrays"},"Array columns"),"."),(0,i.kt)("h3",{id:"incompatible-changes"},"Incompatible changes"),(0,i.kt)("h4",{id:"removed-hadoop-2"},"Removed Hadoop 2"),(0,i.kt)("p",null,"Support for Hadoop 2 has been removed.\nMigrate to SQL-based ingestion or JSON-based batch ingestion if you are using Hadoop 2.x for ingestion today.\nIf migrating to Druid's built-in ingestion is not possible, you must upgrade your Hadoop infrastructure to 3.x+ before upgrading to Druid 28.0.0."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14763"},"#14763")),(0,i.kt)("h4",{id:"removed-groupby-v1"},"Removed GroupBy v1"),(0,i.kt)("p",null,"The GroupBy v1 engine has been removed. Use the GroupBy v2 engine instead, which has been the default GroupBy engine for several releases.\nThere should be no impact on your queries."),(0,i.kt)("p",null,"Additionally, ",(0,i.kt)("inlineCode",{parentName:"p"},"AggregatorFactory.getRequiredColumns")," has been deprecated and will be removed in a future release. If you have an extension that implements ",(0,i.kt)("inlineCode",{parentName:"p"},"AggregatorFactory"),", then this method should be removed from your implementation."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14866"},"#14866")),(0,i.kt)("h4",{id:"removed-coordinator-dynamic-configs"},"Removed Coordinator dynamic configs"),(0,i.kt)("p",null,"The ",(0,i.kt)("inlineCode",{parentName:"p"},"decommissioningMaxPercentOfMaxSegmentsToMove")," config has been removed.\nThe use case for this config is handled by smart segment loading now, which is enabled by default."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14923"},"#14923")),(0,i.kt)("h4",{id:"removed-cachingcost-strategy"},"Removed ",(0,i.kt)("inlineCode",{parentName:"h4"},"cachingCost")," strategy"),(0,i.kt)("p",null,"The ",(0,i.kt)("inlineCode",{parentName:"p"},"cachingCost")," strategy for segment loading has been removed.\nUse ",(0,i.kt)("inlineCode",{parentName:"p"},"cost")," instead, which has the same benefits as ",(0,i.kt)("inlineCode",{parentName:"p"},"cachingCost"),"."),(0,i.kt)("p",null,"If you have ",(0,i.kt)("inlineCode",{parentName:"p"},"cachingCost")," set, the system ignores this setting and automatically uses ",(0,i.kt)("inlineCode",{parentName:"p"},"cost"),"."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14798"},"#14798")),(0,i.kt)("h4",{id:"removed-insertcannotorderbydescending"},"Removed ",(0,i.kt)("inlineCode",{parentName:"h4"},"InsertCannotOrderByDescending")),(0,i.kt)("p",null,"The deprecated MSQ fault ",(0,i.kt)("inlineCode",{parentName:"p"},"InsertCannotOrderByDescending")," has been removed."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14588"},"#14588")),(0,i.kt)("h4",{id:"removed-the-backward-compatibility-code-for-the-handoff-api"},"Removed the backward compatibility code for the Handoff API"),(0,i.kt)("p",null,"The backward compatibility code for the Handoff API in ",(0,i.kt)("inlineCode",{parentName:"p"},"CoordinatorBasedSegmentHandoffNotifier")," has been removed.\nIf you are upgrading from a Druid version older than 0.14.0, upgrade to a newer version of Druid before upgrading to Druid 28.0.0."),(0,i.kt)("p",null,(0,i.kt)("a",{parentName:"p",href:"https://github.com/apache/druid/pull/14652"},"#14652")),(0,i.kt)("h3",{id:"developer-notes"},"Developer notes"),(0,i.kt)("h4",{id:"dependency-updates"},"Dependency updates"),(0,i.kt)("p",null,"The following dependencies have had their versions bumped:"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},"Guava to ",(0,i.kt)("inlineCode",{parentName:"li"},"31.1-jre"),". If you use an extension that has a transitive Guava dependency from Druid, it may be impacted ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14767"},"#14767")),(0,i.kt)("li",{parentName:"ul"},"Google Client APIs have been upgraded from 1.26.0 to 2.0.0 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14414"},"#14414")),(0,i.kt)("li",{parentName:"ul"},"Apache Kafka has been upgraded to 3.5.1 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14721"},"#14721")),(0,i.kt)("li",{parentName:"ul"},"Calcite has been upgraded to 1.35 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14510"},"#14510")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"RoaringBitmap")," has been upgraded from 0.9.0 to 0.9.49 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15006"},"#15006")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"snappy-java")," has been upgraded to 1.1.10.3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14641"},"#14641")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"decode-uri-component")," has been upgraded to 0.2.2 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/13481"},"#13481")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"word-wrap")," has been upgraded to 1.2.4 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14613"},"#14613")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"tough-cookie")," has been upgraded to 4.1.3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14557"},"#14557")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"qs")," has been upgraded to 6.5.3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/13510"},"#13510")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"api-util")," has been upgraded to 2.1.3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14852"},"#14852")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"commons-cli")," has been upgraded from 1.3.1 to 1.5.0 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14837"},"#14837")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"tukaani:xz")," has been upgraded from 1.8 to 1.9 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14839"},"#14839")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"commons-compress")," has been upgraded from 1.21 to 1.23.0 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14820"},"#14820")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"protobuf.version")," has been upgraded from 3.21.7 to 3.24.0 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14823"},"#14823")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"dropwizard.metrics.version")," has been upgraded from 4.0.0 to 4.2.19 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14824"},"#14824")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"assertj-core")," has been upgraded from 3.19.0 to 3.24.2 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14815"},"#14815")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"maven-source-plugin")," has been upgraded from 2.2.1 to 3.3.0 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14812"},"#14812")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"scala-library")," has been upgraded from 2.13.9 to 2.13.11 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14826"},"#14826")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"oshi-core")," has been upgraded from 6.4.2 to 6.4.4 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14814"},"#14814")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"maven-surefire-plugin")," has been upgraded from 3.0.0-M7 to 3.1.2 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14813"},"#14813")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"apache-rat-plugin")," has been upgraded from 0.12 to 0.15 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14817"},"#14817")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"jclouds.version")," has been upgraded from 1.9.1 to 2.0.3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14746"},"#14746")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"dropwizard.metrics:metrics-graphite")," has been upgraded from 3.1.2 to 4.2.19 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14842"},"#14842")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"postgresql")," has been upgraded from 42.4.1 to 42.6.0 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/13959"},"#13959")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"org.mozilla:rhino")," has been upgraded ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14765"},"#14765")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"apache.curator.version")," has been upgraded from 5.4.0 to 5.5.0 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14843"},"#14843")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"jackson-databind")," has been upgraded to 2.12.7 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14770"},"#14770")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"icu4j")," from 55.1 to 73.2 has been upgraded from 55.1 to 73.2 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14853"},"#14853")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"joda-time")," has been upgraded from 2.12.4 to 2.12.5 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14855"},"#14855")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"tough-cookie")," has been upgraded from 4.0.0 to 4.1.3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14557"},"#14557")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"word-wrap")," has been upgraded from 1.2.3 to 1.2.4 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14613"},"#14613")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"decode-uri-component")," has been upgraded from 0.2.0 to 0.2.2 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/13481"},"#13481")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"snappy-java")," has been upgraded from 1.1.10.1 to 1.1.10.3 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14641"},"#14641")),(0,i.kt)("li",{parentName:"ul"},"Hibernate validator version has been upgraded ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14757"},"#14757")),(0,i.kt)("li",{parentName:"ul"},"The Dependabot PR limit for Java dependencies has been increased ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/14804"},"#14804")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"jetty")," has been upgraded from 9.4.51.v20230217 to 9.4.53.v20231009 ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15129"},"#15129")),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("inlineCode",{parentName:"li"},"netty4")," has been upgraded from 4.1.94.Final to 4.1.100.Final ",(0,i.kt)("a",{parentName:"li",href:"https://github.com/apache/druid/pull/15129"},"#15129"))),(0,i.kt)("h2",{id:"credits"},"Credits"),(0,i.kt)("p",null,"Thanks to everyone who contributed to this release!"))}h.isMDXComponent=!0},89534:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/image-1-de81e1658a254b79c8a0f13609c6e41f.png"},75271:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/image-2-ad1d55fc05f11f9b43643c38b28ea73a.png"},10062:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/image-3-b0c15b3a42e3822eeb5b9f9d3f071a01.png"},98996:(e,t,a)=>{a.d(t,{Z:()=>n});const n=a.p+"assets/images/image-401c478b5ee2980fb62c666ecb5d3cde.png"}}]);