Files
openobserve/.github/workflows/unit-tests.yml
T
Hengfei Yang c2d4866565 feat: impl metrics cache (#5688)
impl #5656 

## Todo

- [x] Router consistent hashing for PromQL
- [x] Remove the key from index if the key get nothing from cache
- [x] Some cache item is empty, it should not
- [x] Add cache control ENV: `ZO_METRICS_CACHE_ENABLED=true`
- [ ] Optimize cache gc logic
- [ ] New encoding of RangeValue for cache
- [x] New cache key generate
- [x] Load cache from disk
- [ ] Histogram query OOM without cache for 2 days
- [x] Fix response series order
- [x] Need to check stream is exists
- [x] Add trace_id to the response
2025-01-15 08:59:53 -08:00

55 lines
1.1 KiB
YAML

name: Unit tests
on:
push:
branches:
- "main"
paths-ignore:
- "**.md"
pull_request:
branches:
- "*"
paths-ignore:
- "**.md"
env:
COLUMNS: 150
ZO_RESULT_CACHE_ENABLED: true
jobs:
build:
runs-on:
labels: ubicloud-standard-8
steps:
- name: Clone the current repo
uses: actions/checkout@v4
- name: Setup Rust Toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly-2024-10-24
targets: x86_64-unknown-linux-gnu
- uses: Swatinem/rust-cache@v2
with:
cache-on-failure: true
- name: Install Protoc
uses: arduino/setup-protoc@v3
with:
version: "21.12"
- name: Simulate building frontend code
run: mkdir -p web/dist && touch web/dist/index.html
- name: Print rustc cfg
run: rustc -C target-cpu=native --print cfg
- name: Setup cargo config
run: cargo --config net.git-fetch-with-cli=true clippy -- -D warnings
- name: Run unit tests
run: ./coverage.sh