Commit Graph

1203 Commits

Author SHA1 Message Date
Zoltan Haindrich db8d4225d1 rename test 2024-12-19 07:30:38 +00:00
Zoltan Haindrich c518b488b6 fix compile; add doc 2024-12-19 07:27:37 +00:00
Zoltan Haindrich d1e8ae160c up 2024-12-19 07:22:25 +00:00
Zoltan Haindrich 7e5658e6b7 add apidoc 2024-12-19 07:18:28 +00:00
Zoltan Haindrich cc7e0b4ac0 Merge remote-tracking branch 'apache/master' into unnest-relfieldtrimmer-unnestfieldtype 2024-12-19 04:17:15 +00:00
Akshat Jain ca8f24edd3
Upgrade Guice to 5.1.0 (#17578)
* Move Guice to 5.1.0 and fix tests
* Fix checkstyle
* Revert overrideCurrentGuiceModules() and related changes
* Fix the tests
* Try using maven:3-openjdk-17-slim
* Try enabling debugging for mvn command
* Use maven:3.9 image
* Address review comment: Fix formatting
* Address review comment: Add brief javadoc for ExceptionMatcher
---------
Co-authored-by: imply-cheddar <86940447+imply-cheddar@users.noreply.github.com>
2024-12-19 09:08:20 +05:30
Kashif Faraz d9a58a7bbd
Move segment update APIs from Coordinator to Overlord (#17545)
Summary of changes
---------------------
- Add `OverlordDataSourcesResource` with APIs to mark segments used/unused
- Add corresponding methods to `OverlordClient`
- Deprecate Coordinator APIs to update segments
- Use `OverlordClient` in `DataSourcesResource` so that Coordinator APIs internally
call the corresponding Overlord APIs
- If the API call fails, fall back to updating the metadata store directly
- Audit these actions only on the Overlord

Other minor changes
---------------------
- Do not perform null check on `OverlordClient` on the coordinator side `DataSourcesResource`.
`OverlordClient` is always non-null in production.
- Add new tests, fix existing ones
- Complete the implementation of `TestSegmentsMetadataManager`

New Overlord APIs
------------------
- Mark all segments of a datasource as unused:
`POST /druid/indexer/v1/datasources/{dataSourceName}`
- Mark all (non-overshadowed) segments of a datasource as used:
`DELETE /druid/indexer/v1/datasources/{dataSourceName}`
- Mark multiple segments as used
`POST /druid/indexer/v1/datasources/{dataSourceName}/markUsed`
- Mark multiple (non-overshadowed) segments as unused
`POST /druid/indexer/v1/datasources/{dataSourceName}/markUnused`
- Mark a single segment as used:
`POST /druid/indexer/v1/datasources/{dataSourceName}/segments/{segmentId}`
- Mark a single segment as unused:
`DELETE /druid/indexer/v1/datasources/{dataSourceName}/segments/{segmentId}`
2024-12-19 09:05:00 +05:30
Ashwin Tumma f7c2c0acdd
Remove duplicate context from Request Logging (#17582)
* Remove duplicate context from Request Logging
* Update Unit Tests to read context
---------
Co-authored-by: Ashwin Tumma <ashwin.tumma@salesforce.com>
2024-12-19 09:03:28 +05:30
Akshat Jain 6fad11fe57
Revert "Add back `UnnecessaryFullyQualifiedName` rule in pmd ruleset (#17570)" (#17584)
This reverts commit cd6083fb94.
2024-12-18 08:29:10 -08:00
Clint Wylie a44ab109d5
remove druid.expressions.useStrictBooleans in favor of always being true (#17568) 2024-12-17 18:49:16 -08:00
Adarsh Sanjeev bb4416a17b
Join context hints (#17541)
* join hints draft

* join algo

* propagate join hints

* review comments

* Use direct hints instead

* Add tests

* Pass preferred algo through pre join clause

* Refactors

* Fix tests

* Revert test changes

* Fix serialization

* Fix tests

* Fix test

* Fix test

* Fix test for sql compat mode

* Increase coverage

* Refactored hint class

---------

Co-authored-by: sreemanamala <sree.manamala@imply.io>
2024-12-17 22:25:22 +05:30
Akshat Jain 98b960c6ac
Refactor: Replace explicit type arguments with diamond operator (#17567)
Since we aren't supporting Java 8 anymore, we can switch to diamond operators
without specifying explicit type arguments.
2024-12-17 14:37:45 +05:30
Akshat Jain cd6083fb94
Add back `UnnecessaryFullyQualifiedName` rule in pmd ruleset (#17570)
* Add back UnnecessaryFullyQualifiedName rule in pmd ruleset

* Fix checkstyle
2024-12-17 12:43:12 +05:30
Zoltan Haindrich 3477592133 up 2024-12-13 16:16:04 +00:00
Zoltan Haindrich e9891122d4 Merge remote-tracking branch 'apache/master' into unnest-relfieldtrimmer-unnestfieldtype 2024-12-13 15:59:36 +00:00
Zoltan Haindrich c8d23927f8 add missing override 2024-12-13 14:26:00 +00:00
Zoltan Haindrich dde6e06596 remove boolean 2024-12-13 10:49:06 +00:00
Zoltan Haindrich a161b6c6d4 retain for old 2024-12-13 10:47:03 +00:00
Zoltan Haindrich c51607e1b1 fix 2024-12-13 10:09:37 +00:00
Zoltan Haindrich 19609943aa trial of accepting empty project 2024-12-13 10:06:24 +00:00
Zoltan Haindrich ef12701816 up 2024-12-12 14:13:43 +00:00
Zoltan Haindrich b8726c3e72 fix for sqlcompat 2024-12-12 14:12:20 +00:00
Zoltan Haindrich 1a38434d8d
Restore usage of filtered SUM (#17378) 2024-12-12 10:30:42 +01:00
Clint Wylie 3c1b488cb7
remove druid.sql.planner.serializeComplexValues config in favor of always serializing complex values (#17549) 2024-12-11 13:07:56 -08:00
Zoltan Haindrich 5c5ca2716c cleanup 2024-12-07 19:14:32 +00:00
Zoltan Haindrich 4e84219724 removals 2024-12-07 16:56:24 +00:00
Zoltan Haindrich 8f286b376e a 2024-12-07 16:51:07 +00:00
Zoltan Haindrich a830e97c90 uipdate 2024-12-07 16:50:18 +00:00
Zoltan Haindrich fa96b15f05 fix? 2024-12-07 16:37:18 +00:00
Zoltan Haindrich 48032cec43 fixup 2024-12-07 16:35:47 +00:00
Zoltan Haindrich 034aeedaad some progress 2024-12-07 16:30:22 +00:00
Zoltan Haindrich adfdbde922 Revert "try to fix unnest outputColumn"
This reverts commit e195135452.
2024-12-07 15:59:13 +00:00
Zoltan Haindrich e195135452 try to fix unnest outputColumn 2024-12-07 15:59:10 +00:00
Abhishek Radhakrishnan 3a2220c68d
Refactor: Move some classes from `sql` to `processing` & `server` for reusability (#17542)
This PR contains non-functional / refactoring changes of the following classes in the sql module:

1. Move ExplainPlan and ExplainAttributes fromsql/src/main/java/org/apache/druid/sql/http to processing/src/main/java/org/apache/druid/query/explain
2. Move sql/src/main/java/org/apache/druid/sql/SqlTaskStatus.java -> processing/src/main/java/org/apache/druid/query/http/SqlTaskStatus.java
3. Add a new class processing/src/main/java/org/apache/druid/query/http/ClientSqlQuery.java that is effectively a thin POJO version of SqlQuery in the sql module but without any of the Calcite functionality and business logic.
4. Move BrokerClient, BrokerClientImpl and Broker classes from sql/src/main/java/org/apache/druid/sql/client to server/src/main/java/org/apache/druid/client/broker.
5. Remove BrokerServiceModule that provided the BrokerClient. The functionality is now contained in ServiceClientModule in the server package itself which provides all the clients as well.

This is done so that we can reuse the said classes in #17353 without brining in Calcite and other dependencies to the Overlord.
2024-12-06 09:32:03 -08:00
Zoltan Haindrich 928637dc49 add 2024-12-05 12:52:00 +00:00
Zoltan Haindrich c024d1e564 indent 2024-12-05 12:49:33 +00:00
Zoltan Haindrich 844b1f28f6 remove tmp tests 2024-12-05 10:07:18 +00:00
Zoltan Haindrich 1fd2addc6e cleanup 2024-12-05 10:03:22 +00:00
Zoltan Haindrich e72d54b4a2 cleanup 2024-12-05 09:59:57 +00:00
Zoltan Haindrich b7dcbf6e8c cleanup 2024-12-05 09:56:21 +00:00
Zoltan Haindrich 627f4a80d9 up 2024-12-04 17:52:07 +00:00
Zoltan Haindrich f584ab0597 convert early 2024-12-04 17:46:34 +00:00
Zoltan Haindrich 7bb3d7a17f convert early 2024-12-04 17:42:37 +00:00
Zoltan Haindrich 12c82dd8d5 more w 2024-12-04 17:34:21 +00:00
Zoltan Haindrich 3f3335f6fe updates 2024-12-04 17:31:01 +00:00
Zoltan Haindrich 6d577f8468 some stuf 2024-12-04 17:09:42 +00:00
Zoltan Haindrich 285d178f49 dont care about filter; it only references unnest col 2024-12-04 17:09:23 +00:00
Zoltan Haindrich 2c71133981 x 2024-12-04 16:28:14 +00:00
Zoltan Haindrich e7afacea94 reduce 2024-12-04 15:37:08 +00:00
Zoltan Haindrich 8cb1178782 its ok 2024-12-04 15:31:58 +00:00