Skip to content

Commit c8c0331

Browse files
authored
Revert "Merge upstream from 92a526b (#10)"
This reverts commit 6d874ea.
1 parent 6d874ea commit c8c0331

81 files changed

Lines changed: 2762 additions & 4933 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/ci.yml

Lines changed: 9 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -55,24 +55,16 @@ jobs:
5555
- name: Cleanup Disk Space
5656
run: |
5757
df -h
58-
59-
if [ "$(df -BG / | awk 'NR==2 {gsub("G","",$4); print $4}')" -lt 30 ]; then
60-
echo "Less than 30GiB available. Running cleanup..."
61-
sudo rm -rf /usr/share/dotnet
62-
sudo rm -rf /usr/local/lib/android
63-
sudo rm -rf /usr/share/swift
64-
sudo rm -rf /usr/local/.ghcup
65-
sudo rm -rf /opt/hostedtoolcache/CodeQL
66-
df -h
67-
else
68-
echo "30GiB or more available. Skipping cleanup."
69-
fi
58+
sudo rm -rf /usr/share/dotnet
59+
sudo rm -rf /usr/local/lib/android
60+
sudo rm -rf /usr/share/swift
61+
sudo rm -rf /usr/local/.ghcup
62+
sudo rm -rf /opt/hostedtoolcache/CodeQL
63+
df -h
7064
7165
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
7266
- name: Install Ubuntu packages
73-
run: |
74-
sudo apt-get update
75-
sudo apt-get -y install protobuf-compiler
67+
run: sudo apt-get -y install protobuf-compiler
7668
- uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v.6.1.0
7769
with:
7870
python-version: '3.11'
@@ -96,10 +88,9 @@ jobs:
9688
if: steps.modified.outputs.rust_src == 'true'
9789
with:
9890
workspaces: "./quickwit -> target"
99-
shared-key: "quickwit-cargo"
10091
- name: Install nextest
10192
if: always() && steps.modified.outputs.rust_src == 'true'
102-
uses: taiki-e/install-action@aba36d755ec7ca22d38b12111787c26115943952
93+
uses: taiki-e/cache-cargo-install-action@34ce5120836e5f9f1508d8713d7fdea0e8facd6f # v3.0.1
10394
with:
10495
tool: cargo-nextest
10596
- name: cargo build
@@ -141,9 +132,7 @@ jobs:
141132
- .github/workflows/ci.yml
142133
- name: Install Ubuntu packages
143134
if: always() && steps.modified.outputs.rust_src == 'true'
144-
run: |
145-
sudo apt-get update
146-
sudo apt-get -y install protobuf-compiler
135+
run: sudo apt-get -y install protobuf-compiler
147136
- name: Setup nightly Rust Toolchain (for rustfmt)
148137
if: steps.modified.outputs.rust_src == 'true'
149138
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # master
@@ -160,7 +149,6 @@ jobs:
160149
uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2.8.2
161150
with:
162151
workspaces: "./quickwit -> target"
163-
shared-key: "quickwit-cargo"
164152
- name: Install cargo deny
165153
if: always() && steps.modified.outputs.rust_src == 'true'
166154
uses: taiki-e/cache-cargo-install-action@34ce5120836e5f9f1508d8713d7fdea0e8facd6f # v3.0.1

.github/workflows/ui-ci.yml

Lines changed: 29 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -18,36 +18,32 @@ permissions:
1818
contents: read
1919

2020
jobs:
21-
checks:
22-
name: Lint, type check & unit tests
23-
runs-on: ubuntu-latest
24-
steps:
25-
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
26-
- uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
27-
with:
28-
node-version: 24
29-
cache: "yarn"
30-
cache-dependency-path: quickwit/quickwit-ui/yarn.lock
31-
- name: Install JS dependencies
32-
run: yarn --cwd quickwit-ui install
33-
working-directory: ./quickwit
34-
- name: Lint
35-
run: yarn --cwd quickwit-ui lint
36-
working-directory: ./quickwit
37-
- name: Type check
38-
run: yarn --cwd quickwit-ui type
39-
working-directory: ./quickwit
40-
- name: Unit tests
41-
run: yarn --cwd quickwit-ui test
42-
working-directory: ./quickwit
43-
44-
e2e:
45-
name: Playwright e2e
21+
tests:
22+
name: ${{ matrix.task.name }}
4623
runs-on: ubuntu-latest
4724
permissions:
4825
contents: read
4926
actions: write
27+
strategy:
28+
fail-fast: false
29+
matrix:
30+
task:
31+
- name: Cypress run
32+
command: |
33+
sudo apt-get -y install protobuf-compiler
34+
CI=false yarn --cwd quickwit-ui build
35+
RUSTFLAGS="--cfg tokio_unstable" cargo build --features=postgres
36+
mkdir qwdata
37+
RUSTFLAGS="--cfg tokio_unstable" cargo run --features=postgres -- run --service searcher --service metastore --config ../config/quickwit.yaml &
38+
yarn --cwd quickwit-ui cypress run
39+
- name: Lint
40+
command: yarn --cwd quickwit-ui lint
41+
- name: Check type consistency
42+
command: yarn --cwd quickwit-ui type
43+
- name: Unit Test
44+
command: yarn --cwd quickwit-ui test
5045
services:
46+
# PostgreSQL service container
5147
postgres:
5248
image: postgres:latest
5349
ports:
@@ -56,6 +52,7 @@ jobs:
5652
POSTGRES_USER: quickwit-dev
5753
POSTGRES_PASSWORD: quickwit-dev
5854
POSTGRES_DB: quickwit-metastore-dev
55+
# Set health checks to wait until postgres has started
5956
options: >-
6057
--health-cmd pg_isready
6158
--health-interval 10s
@@ -64,7 +61,7 @@ jobs:
6461
env:
6562
CARGO_INCREMENTAL: 0
6663
RUST_BACKTRACE: 1
67-
RUSTFLAGS: -Dwarnings --cfg tokio_unstable
64+
RUSTFLAGS: -Dwarnings -C lto=off
6865
RUSTDOCFLAGS: -Dwarnings -Arustdoc::private_intra_doc_links
6966
QW_TEST_DATABASE_URL: postgres://quickwit-dev:quickwit-dev@postgres:5432/quickwit-metastore-dev
7067
steps:
@@ -78,28 +75,14 @@ jobs:
7875
uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # master
7976
with:
8077
toolchain: stable
78+
- name: Install JS dependencies
79+
run: yarn --cwd quickwit-ui install
80+
working-directory: ./quickwit
8181
- name: Setup Rust cache
82+
if: matrix.task.name == 'Cypress run'
8283
uses: Swatinem/rust-cache@779680da715d629ac1d338a641029a2f4372abb5 # v2.8.2
8384
with:
8485
workspaces: "./quickwit -> target"
85-
shared-key: "quickwit-cargo"
86-
- name: Install JS dependencies
87-
run: yarn --cwd quickwit-ui install
88-
working-directory: ./quickwit
89-
- name: Install Playwright browsers
90-
run: npx playwright install chromium --with-deps --only-shell
91-
working-directory: ./quickwit/quickwit-ui
92-
- name: Build UI
93-
run: CI=false yarn --cwd quickwit-ui build
94-
working-directory: ./quickwit
95-
- name: Build Quickwit
96-
run: |
97-
sudo apt-get update && sudo apt-get -y install protobuf-compiler
98-
cargo build --features=postgres
99-
working-directory: ./quickwit
100-
- name: Run e2e tests
101-
run: |
102-
mkdir -p qwdata
103-
cargo run --features=postgres -- run --service searcher --service metastore --config ../config/quickwit.yaml &
104-
yarn --cwd quickwit-ui e2e-test
86+
- name: ${{ matrix.task.name }}
87+
run: ${{ matrix.task.command }}
10588
working-directory: ./quickwit

LICENSE-3rdparty.csv

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,6 @@ oneshot,https://github.com/faern/oneshot,MIT OR Apache-2.0,Linus Färnstrand <fa
281281
oorandom,https://hg.sr.ht/~icefox/oorandom,MIT,Simon Heath <icefox@dreamquest.io>
282282
openssl-probe,https://github.com/alexcrichton/openssl-probe,MIT OR Apache-2.0,Alex Crichton <alex@alexcrichton.com>
283283
opentelemetry,https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry,Apache-2.0,The opentelemetry Authors
284-
opentelemetry-appender-tracing,https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-appender-tracing,Apache-2.0,The opentelemetry-appender-tracing Authors
285284
opentelemetry-http,https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-http,Apache-2.0,The opentelemetry-http Authors
286285
opentelemetry-otlp,https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-otlp,Apache-2.0,The opentelemetry-otlp Authors
287286
opentelemetry-proto,https://github.com/open-telemetry/opentelemetry-rust/tree/main/opentelemetry-proto,Apache-2.0,The opentelemetry-proto Authors

docs/reference/es_compatible_api.md

Lines changed: 0 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -365,79 +365,6 @@ Example response:
365365

366366
[HTTP accept header]: https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html
367367

368-
369-
### `_field_caps` &nbsp; Field capabilities API
370-
371-
```
372-
GET api/v1/_elastic/<index>/_field_caps
373-
```
374-
```
375-
POST api/v1/_elastic/<index>/_field_caps
376-
```
377-
```
378-
GET api/v1/_elastic/_field_caps
379-
```
380-
```
381-
POST api/v1/_elastic/_field_caps
382-
```
383-
384-
The [field capabilities API](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-field-caps.html) returns information about the capabilities of fields among multiple indices.
385-
386-
#### Supported Query string parameters
387-
388-
| Variable | Type | Description | Default value |
389-
| --------------------- | ---------- | ------------------------------------------------------------------------------ | ------------- |
390-
| `fields` | `String` | Comma-separated list of fields to retrieve capabilities for. Supports wildcards (`*`). | (Optional) |
391-
| `allow_no_indices` | `Boolean` | If `true`, missing or closed indices are not an error. | (Optional) |
392-
| `expand_wildcards` | `String` | Controls what kind of indices that wildcard patterns can match. | (Optional) |
393-
| `ignore_unavailable` | `Boolean` | If `true`, unavailable indices are ignored. | (Optional) |
394-
| `start_timestamp` | `Integer` | *(Quickwit-specific)* If set, restricts splits to documents with a timestamp range start >= `start_timestamp` (seconds since epoch). | (Optional) |
395-
| `end_timestamp` | `Integer` | *(Quickwit-specific)* If set, restricts splits to documents with a timestamp range end < `end_timestamp` (seconds since epoch). | (Optional) |
396-
397-
#### Supported Request Body parameters
398-
399-
| Variable | Type | Description | Default value |
400-
| ------------------ | ------------- | --------------------------------------------------------------------------- | ------------- |
401-
| `index_filter` | `Json object` | A query to filter indices. If provided, only fields from indices that can potentially match the filter are returned. See [index_filter](#index_filter). | (Optional) |
402-
| `runtime_mappings` | `Json object` | Accepted but not supported. | (Optional) |
403-
404-
#### `index_filter`
405-
406-
The `index_filter` parameter allows you to filter which indices contribute to the field capabilities response. When provided, Quickwit uses the filter query to prune indices (splits) that cannot match the filter, and only returns field capabilities for the remaining ones.
407-
408-
Like Elasticsearch, this is a **best-effort** approach: Quickwit may return field capabilities from indices that do not actually contain any matching documents. In Quickwit, the filtering is limited to the existing split-pruning based on metadata:
409-
410-
- **Time pruning**: Range queries on the timestamp field can eliminate splits whose time range does not overlap with the filter.
411-
- **Tag pruning**: Term queries on [tag fields](../configuration/index-config.md#tag-fields) can eliminate splits that do not contain the requested tag value.
412-
413-
Other filter types (e.g. full-text queries or term queries on non-tag fields) are accepted but will not prune any splits — all indices will be returned as if no filter was specified. In particular, Quickwit does not check whether terms are present in the term dictionary.
414-
415-
#### Request Body example
416-
417-
```json
418-
{
419-
"index_filter": {
420-
"range": {
421-
"timestamp": {
422-
"gte": "2024-01-01T00:00:00Z",
423-
"lt": "2024-02-01T00:00:00Z"
424-
}
425-
}
426-
}
427-
}
428-
```
429-
430-
```json
431-
{
432-
"index_filter": {
433-
"term": {
434-
"status": "active"
435-
}
436-
}
437-
}
438-
```
439-
440-
441368
## Query DSL
442369

443370
[Elasticsearch Query DSL reference](https://www.elastic.co/guide/en/elasticsearch/reference/8.8/query-dsl.html).

docs/reference/metrics.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ Currently Quickwit exposes metrics for three caches: `fastfields`, `shortlived`,
4242

4343
| Namespace | Metric Name | Description | Type |
4444
| --------- | ----------- | ----------- | ---- |
45-
| `quickwit_ingest` | `docs_bytes_total` | Total size of the docs ingested, measured in ingester's leader, after validation and before persistence/replication | `counter` |
46-
| `quickwit_ingest` | `docs_total` | Total number of the docs ingested, measured in ingester's leader, after validation and before persistence/replication | `counter` |
45+
| `quickwit_ingest` | `ingested_num_bytes` | Total size of the docs ingested in bytes | `counter` |
46+
| `quickwit_ingest` | `ingested_num_docs` | Number of docs received to be ingested | `counter` |
4747
| `quickwit_ingest` | `queue_count` | Number of queues currently active | `counter` |
4848

4949
## Metastore Metrics

quickwit/Cargo.lock

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

quickwit/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,6 @@ oneshot = "0.1"
164164
openssl = { version = "0.10", default-features = false }
165165
openssl-probe = "0.1"
166166
opentelemetry = "0.31"
167-
opentelemetry-appender-tracing = "0.31"
168167
opentelemetry_sdk = { version = "0.31", features = ["rt-tokio"] }
169168
opentelemetry-otlp = { version = "0.31", features = ["grpc-tonic"] }
170169
ouroboros = "0.18"

quickwit/quickwit-cli/Cargo.toml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,6 @@ numfmt = { workspace = true }
3737
once_cell = { workspace = true }
3838
openssl-probe = { workspace = true, optional = true }
3939
opentelemetry = { workspace = true }
40-
opentelemetry-appender-tracing = { workspace = true }
4140
opentelemetry_sdk = { workspace = true }
4241
opentelemetry-otlp = { workspace = true }
4342
reqwest = { workspace = true }
@@ -102,7 +101,6 @@ release-feature-set = [
102101
"quickwit-indexing/pulsar",
103102
"quickwit-indexing/sqs",
104103
"quickwit-indexing/vrl",
105-
"quickwit-serve/lambda",
106104
"quickwit-storage/azure",
107105
"quickwit-storage/gcs",
108106
"quickwit-metastore/postgres",
@@ -116,7 +114,6 @@ release-feature-vendored-set = [
116114
"quickwit-indexing/sqs",
117115
"quickwit-indexing/vrl",
118116
"quickwit-indexing/vendored-kafka",
119-
"quickwit-serve/lambda",
120117
"quickwit-storage/azure",
121118
"quickwit-storage/gcs",
122119
"quickwit-metastore/postgres",
@@ -129,7 +126,6 @@ release-macos-feature-vendored-set = [
129126
"quickwit-indexing/sqs",
130127
"quickwit-indexing/vrl",
131128
"quickwit-indexing/vendored-kafka-macos",
132-
"quickwit-serve/lambda",
133129
"quickwit-storage/azure",
134130
"quickwit-storage/gcs",
135131
"quickwit-metastore/postgres",

0 commit comments

Comments
 (0)