Skip to content

Commit c30b6e3

Browse files
authored
Merge branch 'main' into fix-exclude
2 parents 37a99cf + ccaf802 commit c30b6e3

148 files changed

Lines changed: 6258 additions & 3610 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/codeql.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ permissions:
3232
jobs:
3333
analyze:
3434
name: Analyze Actions
35-
runs-on: ubuntu-latest
35+
runs-on: ubuntu-slim
3636
permissions:
3737
contents: read
3838
security-events: write

.github/workflows/dev.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141

4242
prettier:
4343
name: Use prettier to check formatting of documents
44-
runs-on: ubuntu-latest
44+
runs-on: ubuntu-slim
4545
steps:
4646
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
4747
- uses: actions/setup-node@6044e13b5dc448c55e2357c09f80417699197238 # v6.2.0

.github/workflows/extended.yml

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -44,15 +44,10 @@ on:
4444
- 'datafusion/physical*/**/*.rs'
4545
- 'datafusion/expr*/**/*.rs'
4646
- 'datafusion/optimizer/**/*.rs'
47+
- 'datafusion/sql/**/*.rs'
4748
- 'datafusion-testing'
4849
workflow_dispatch:
4950
inputs:
50-
pr_number:
51-
description: 'Pull request number'
52-
type: string
53-
check_run_id:
54-
description: 'Check run ID for status updates'
55-
type: string
5651
pr_head_sha:
5752
description: 'PR head SHA'
5853
type: string
@@ -93,8 +88,7 @@ jobs:
9388
linux-test-extended:
9489
name: cargo test 'extended_tests' (amd64)
9590
needs: [linux-build-lib]
96-
runs-on: ${{ github.repository_owner == 'apache' && format('runs-on={0},family=m8a+m7a+c8a,cpu=32,image=ubuntu24-full-x64,extras=s3-cache,disk=large,tag=datafusion,spot=false', github.run_id) || 'ubuntu-latest' }}
97-
# spot=false because the tests are long, https://runs-on.com/configuration/spot-instances/#disable-spot-pricing
91+
runs-on: ${{ github.repository_owner == 'apache' && format('runs-on={0},family=m8a+m7a+c8a,cpu=32,image=ubuntu24-full-x64,extras=s3-cache,disk=large,tag=datafusion', github.run_id) || 'ubuntu-latest' }}
9892
# note: do not use amd/rust container to preserve disk space
9993
steps:
10094
- uses: runs-on/action@cd2b598b0515d39d78c38a02d529db87d2196d1e # v2.0.3
@@ -162,8 +156,7 @@ jobs:
162156
163157
sqllogictest-sqlite:
164158
name: "Run sqllogictests with the sqlite test suite"
165-
runs-on: ${{ github.repository_owner == 'apache' && format('runs-on={0},family=m8a+m7a+c8a,cpu=48,image=ubuntu24-full-x64,extras=s3-cache,disk=large,tag=datafusion,spot=false', github.run_id) || 'ubuntu-latest' }}
166-
# spot=false because the tests are long, https://runs-on.com/configuration/spot-instances/#disable-spot-pricing
159+
runs-on: ${{ github.repository_owner == 'apache' && format('runs-on={0},family=m8a+m7a+c8a,cpu=32,image=ubuntu24-full-x64,extras=s3-cache,disk=large,tag=datafusion', github.run_id) || 'ubuntu-latest' }}
167160
container:
168161
image: amd64/rust
169162
steps:

.github/workflows/labeler.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ on:
3131
jobs:
3232
process:
3333
name: Process
34-
runs-on: ubuntu-latest
34+
runs-on: ubuntu-slim
3535
# only run for users whose permissions allow them to update PRs
3636
# otherwise labeler is failing:
3737
# https://github.com/apache/datafusion/issues/3743

.github/workflows/large_files.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ on:
2727

2828
jobs:
2929
check-files:
30-
runs-on: ubuntu-latest
30+
runs-on: ubuntu-slim
3131
steps:
3232
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
3333
with:

.github/workflows/stale.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ on:
2222

2323
jobs:
2424
close-stale-prs:
25-
runs-on: ubuntu-latest
25+
runs-on: ubuntu-slim
2626
permissions:
2727
issues: write
2828
pull-requests: write

.github/workflows/take.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ permissions:
2525

2626
jobs:
2727
issue_assign:
28-
runs-on: ubuntu-latest
28+
runs-on: ubuntu-slim
2929
if: (!github.event.issue.pull_request) && (github.event.comment.body == 'take' || github.event.comment.body == 'untake')
3030
concurrency:
3131
group: ${{ github.actor }}-issue-assign

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,3 +75,6 @@ rat.txt
7575

7676
# data generated by examples
7777
datafusion-examples/examples/datafusion-examples/
78+
79+
# Samply profile data
80+
profile.json.gz

Cargo.lock

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 23 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -224,62 +224,57 @@ unused_qualifications = "deny"
224224
# --------------------
225225
# Compilation Profiles
226226
# --------------------
227-
# A Cargo profile is a preset for the compiler/linker knobs that trade off:
227+
# A Cargo profile is a preset for the compiler/linker knobs that trades off:
228228
# - Build time: how quickly code compiles and links
229229
# - Runtime performance: how fast the resulting binaries execute
230230
# - Binary size: how large the executables end up
231231
# - Debuggability: how much debug information is preserved for debugging and profiling
232232
#
233+
# To use a profile: `cargo [ build | run | ... ] --profile <profile-name>`
234+
#
233235
# Profiles available:
234-
# - dev: default debug build; fastest to compile, slowest to run, full debug info
235-
# for everyday development.
236-
# Run: cargo run
237-
# - release: optimized build; slowest to compile, fastest to run, smallest
238-
# binaries for public releases.
239-
# Run: cargo run --release
240-
# - release-nonlto: skips LTO, so it builds quicker while staying close to
241-
# release performance. It is useful when developing performance optimizations.
242-
# Run: cargo run --profile release-nonlto
236+
# - dev: default debug build; fastest to compile, slowest to run, full debug info.
237+
# For everyday development; default for "cargo [ build | test | run ]".
238+
# - release: fully optimized build; slowest to compile, fastest to run, smallest
239+
# binaries. For public releases; default for "cargo [ bench | install ]".
240+
# - release-nonlto: skips LTO, so it builds much faster while staying close to
241+
# release performance. Useful when developing performance optimizations.
243242
# - profiling: inherits release optimizations but retains debug info to support
244243
# profiling tools and flamegraphs.
245-
# Run: cargo run --profile profiling
246-
# - ci: derived from `dev` but disables incremental builds and strips dependency
247-
# symbols to keep CI artifacts small and reproducible.
248-
# Run: cargo run --profile ci
249-
# - ci-optimized: derived from `release` but enables debug assertions, and uses
250-
# lighter optimizations. Used for long-running CI tasks.
251-
# Run: cargo run --profile ci-release
244+
# - ci: derived from `dev` but disables debug info and incremental builds to keep
245+
# CI artifacts small and reproducible.
246+
# - ci-optimized: derived from `release` but enables debug assertions and uses
247+
# less aggressive optimizations for faster builds. Used for long-running CI
248+
# tasks.
252249
#
253250
# If you want to optimize compilation, the `compile_profile` benchmark can be useful.
254251
# See `benchmarks/README.md` for more details.
255252
[profile.release]
256253
codegen-units = 1
257254
lto = true
258-
strip = true # Eliminate debug information to minimize binary size
255+
strip = true # Eliminate debug info to minimize binary size
259256

260257
[profile.release-nonlto]
261-
codegen-units = 16
262-
debug-assertions = false
263-
incremental = false
264258
inherits = "release"
259+
codegen-units = 16
265260
lto = false
266-
opt-level = 3
267-
overflow-checks = false
268-
rpath = false
269-
strip = false # Retain debug info for flamegraphs
261+
strip = false # Retain debug info for flamegraphs
262+
263+
[profile.profiling]
264+
inherits = "release"
265+
debug = true
266+
strip = false
270267

271268
[profile.ci-optimized]
272269
inherits = "release"
273270
debug-assertions = true
274271
codegen-units = 16
275272
lto = "thin"
276-
strip = true
277273

278274
[profile.ci]
279-
debug = false
280275
inherits = "dev"
276+
debug = false
281277
incremental = false
282-
debug-assertions = true
283278

284279
# This rule applies to every package except workspace members (dependencies
285280
# such as `arrow` and `tokio`). It disables debug info and related features on
@@ -289,8 +284,3 @@ debug = false
289284
debug-assertions = false
290285
strip = "debuginfo"
291286
incremental = false
292-
293-
[profile.profiling]
294-
inherits = "release"
295-
debug = true
296-
strip = false

0 commit comments

Comments
 (0)