Skip to content

Commit 7f821cc

Browse files
authored
feat: refactor KNN join with new geo-index trait and lock-free shared geometry cache (#169)
1 parent 1628b0f commit 7f821cc

File tree

5 files changed

+354
-255
lines changed

5 files changed

+354
-255
lines changed

.github/workflows/rust.yml

Lines changed: 35 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,9 @@ jobs:
9797
if: steps.cache-vcpkg.outputs.cache-hit != 'true'
9898
run: |
9999
./vcpkg/vcpkg install abseil openssl
100+
# Clean up vcpkg buildtrees and downloads to save space
101+
rm -rf vcpkg/buildtrees
102+
rm -rf vcpkg/downloads
100103
101104
- name: Use stable Rust
102105
id: rust
@@ -106,33 +109,62 @@ jobs:
106109
- uses: Swatinem/rust-cache@v2
107110
with:
108111
# Update this key to force a new cache
109-
prefix-key: "rust-${{ matrix.name }}-v2"
112+
prefix-key: "rust-${{ matrix.name }}-v3"
113+
114+
- name: Free Disk Space (Ubuntu)
115+
uses: jlumbroso/free-disk-space@main
116+
with:
117+
# Free up space by removing tools we don't need
118+
tool-cache: false # Keep tool cache as we need build tools
119+
android: true # Remove Android SDK (not needed)
120+
dotnet: true # Remove .NET runtime (not needed)
121+
haskell: true # Remove Haskell toolchain (not needed)
122+
large-packages: false # Keep essential packages including build-essential
123+
swap-storage: true # Remove swap file to free space
124+
docker-images: true # Remove docker images (not needed)
110125

111126
- name: Install dependencies
112127
shell: bash
113-
run: sudo apt-get update && sudo apt-get install -y libgeos-dev
128+
run: |
129+
sudo apt-get update && sudo apt-get install -y libgeos-dev
114130
115131
- name: Build
116132
if: matrix.name == 'build'
117133
run: |
118134
cargo build --workspace --all-targets --all-features
135+
# Clean up build artifacts aggressively
136+
rm -rf target/debug/deps
137+
rm -rf target/debug/incremental
138+
rm -rf target/debug/build
119139
120140
- name: Clippy
121141
if: matrix.name == 'clippy'
122142
run: |
123143
cargo clippy --workspace --all-targets --all-features -- -Dwarnings
144+
# Clean up clippy artifacts aggressively
145+
rm -rf target/debug/deps
146+
rm -rf target/debug/incremental
147+
rm -rf target/debug/build
124148
125149
- name: Test
126150
if: matrix.name == 'test'
127151
run: |
128152
cargo test --workspace --all-targets --all-features
129-
# Clean up intermediate build artifacts to free disk space
153+
# Clean up intermediate build artifacts to free disk space aggressively
130154
cargo clean -p sedona-s2geography
155+
rm -rf target/debug/deps
156+
rm -rf target/debug/incremental
157+
rm -rf target/debug/build
158+
# Also clean target/.rustc_info.json and other cache files
159+
find target/debug -name "*.rlib" -delete
160+
find target/debug -name "*.rmeta" -delete
131161
132162
- name: Doctests
133163
if: matrix.name == 'test'
134164
run: |
135165
cargo test --workspace --doc --all-features
166+
# Clean up after doctests
167+
cargo clean
136168
137169
- name: Check docs
138170
if: matrix.name == 'docs'

0 commit comments

Comments
 (0)