Commit Graph
158 Commits
Author SHA1 Message Date
tellet-q cad14965e3 Refactor bash tests: low-ram (#6911)
* Refactor low-ran bash test

* Address review
2025-08-11 13:16:20 +02:00
tellet-q cf9862949c Refactor bash tests: low-disk (#6845)
* Add e2e_tests pytest test suite

* Remove old bash test
2025-07-17 13:57:56 +02:00
Arnaud Gourlay 05273437ef Bump poetry version to avoid potential compat. issues (#6818)
* Bump poetry version to avoid potential compat. issues

* Poetry does not run bash script anymore

* fix path

* use new --project flag

* migrate also coverage for good measure
2025-07-17 13:49:36 +02:00
xzfc 3f81dfe3e1 Move .github/workflows/actions to .github/actions (#6697) 2025-07-17 13:13:51 +02:00
xzfc e365ddca69 Move codespell config to tools/codespell.toml (#6707) 2025-07-17 13:12:49 +02:00
n0x29aandgenerall 30713fb094 Add stopwords support (#6635)
* Add stopwords support

* Update codespell configuration and improve stopword assertion message

* Add stopwords schema to OpenAPI definition

* Rename StopwordsOption to StopwordsInterface

* Add stopwords support for multiple languages

* Update codespell configuration to skip all Rust files in stop_words directory

* Normalize stopwords to lowercase during insertion

* Add language aliases for stopwords

* + grpc

* Unspecified Language

* clippy fmt

* openapi

* Refactor to use BTreeSet

* update tokenizer test to include custom stopwords with contractions

* simplified grpc StopwordsInterface

* alias for languages

* use `lowercase` flag for stop word normalizing

* grpc: enum -> string

* consistent naming

* Remove UnspecifiedLanguage and use From for conversions

* fix conversions

* fmt

* use stopwords inside different tokenizer

* use ahash

* fix tests

* fix no-rocks-db feature

* simplify code and fix test

* update test

* fix clippy

* fmt

---------

Co-authored-by: generall <andrey@vasnetsov.com>
2025-07-17 13:08:36 +02:00
Tim Visée 18bb9ddd9e Run unit tests in CI without RocksDB flag (#6675)
* Add temporary job for unit tests on CI without RocksDB feature

* Remove trailing white spaces

* Fix artifact name collision

* Don't upload test report for tests without RocksDB
2025-07-17 13:07:05 +02:00
Jayant PranjalandJayant b54fe1f11c Replaced ::set-output(deprecated) with (#6641)
Co-authored-by: Jayant <jayant@Jayants-MacBook-Air.local>
2025-07-17 11:36:27 +02:00
Jayant PranjalandJayant 978c770ca7 Added major and minor docker tags (#6611)
Co-authored-by: Jayant <jayant@Jayants-MacBook-Air.local>
2025-07-17 11:23:54 +02:00
Tim Visée b7bff72c56 Use Ubuntu 22.04 CI runner image, because 20.04 is deprecated (#6590) 2025-07-17 11:02:05 +02:00
Tim Visée e73340f2b4 Revert "Downgrade cmake 3.x (#6306)" (#6484)
This reverts commit 21fb1652ab.
2025-05-22 22:57:36 +02:00
Arnaud Gourlay debd836b77 Use mold for building tests (#6436) 2025-05-22 22:52:43 +02:00
Roman Titov e98d74020c Generate less debug symbols in dev profile (#6443)
* Generate less debug symbols in `dev` profile

* Retain `integration-tests-consensus` logs for 10 days (instead of 90)
2025-05-22 22:52:35 +02:00
Kumar Shivendu beccbfd363 Fix dev branch coverage (#6538)
* Fix dev branch coverage

* Add comments
2025-05-16 09:18:14 +02:00
Kumar Shivendu 0389060955 Introduce coverage reports for integration tests (#6414)
* Introduce coverage reports for integration tests

* Install cargo-llvm-cov

* Use multiline script

* Explicityl setup COVERAGE env var

* fix integration tests and log generated data

* fix ls path

* upload lcov file to GH artifacts

* integration profraw dynamic filename

* Fix llvm profile filename template

* Use interrupt instead of kill and merge consensus test results into same file

* Drop upload artifact stage

* install llvm-cov

* upload as artifact and export coverage files

* try simplifying workflow

* Migrate coverage generation to existing dedicated gh workflow

* trigger on coverage related branches

* Build only if qdrant binary with cov doesnt exist

* Use valid yaml

* include mode in profraw filename

* split coverage workflow into parallel jobs

* add poetry version to env

* log poetry version to install

* clean up integration test workflow

* Simplify comments
2025-05-13 11:16:09 +02:00
Roman Titov 6e181db333 Optimize GitHub Actions workflows (#6362)
* Add shared rust-cache key for integration test jobs

* Disable debug symbols

* Remove non-necessary setup steps...

...from `test-low-resources` and `test-snapshot-operations-s3-minio` jobs

* Always upload `test-consensus`/`integration-tests-consensus` logs...

...even when tests passed successfully

* Reduce poll interval for `wait_for` checks in integration tests
2025-04-21 00:07:25 +02:00
Roman Titov 5d2ede9719 Rename some GHA jobs, so that default rust-cache keys are unique for all workflows/jobs (#6280) 2025-04-21 00:02:53 +02:00
Kumar Shivendu 39dff45e80 Fix codecov branch issue (#6345) 2025-04-20 23:54:31 +02:00
Arnaud Gourlay 1693d24e8e Fixing failing CI due to missing liblzma (#6329)
* Fixing failing CI due to missing liblzma

* Try again
2025-04-20 23:52:46 +02:00
Arnaud Gourlay 50293df2c3 Downgrade cmake 3.x (#6306)
* Downgrade cmake 3.x

* Only where needed

* Add comments
2025-04-20 23:47:37 +02:00
Kumar Shivendu 0b63baa7a7 Code cov override branch (#6262) 2025-03-31 16:21:11 +02:00
tellet-q 820ea5a8a9 Use common actions pattern in workflows (#6061)
* Use common actions pattern

* Update gpu workflow
2025-03-21 11:41:50 +01:00
tellet-q a71e2ffe74 Add workflow that can be triggered (#6059)
an experiment
2025-03-21 11:39:05 +01:00
Tim Visée b0926caede Revert "Temporarily run code coverage on merging to dev (#5911)" (#5982)
This reverts commit efcbce195e.
2025-02-17 10:20:54 +01:00
Kumar Shivendu 222b25150a Fix coverage test OOD on CI (#5927)
* Fix coverage test OOD on CI

* Temporarily run coverage CI on PR

* Clean artifacts per package and store in tmp dir

* fix typo in gh workflow

* Add monitoring script again for debugging

* trigger script

* Fix monitor script path

* dont checkout dev branch

* Merge .info file only if test passed

* Try merging .info file only if it exists

* trigger ci

* fix workflow

* trigger ci

* Customize branch to check out

* Remove monitor.sh script

* remove unused env var
2025-02-11 14:41:12 +01:00
dependabot[bot] 0a790a72f9 build(deps): bump codecov/codecov-action from 3 to 5 (#5940)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 3 to 5.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v3...v5)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 14:40:39 +01:00
Arnaud Gourlay 953e09f539 Use cargo --locked on CI for reproducible builds (#5913) 2025-02-11 14:40:17 +01:00
Kumar Shivendu ecc783a25d Temporarily run code coverage on merging to dev (#5911) 2025-02-11 14:38:30 +01:00
Kumar Shivendu 5e7d644c4c Setup code coverage reports (#5751)
* Setup code coverage for Rust tests

* Add API key env var for codecov

* Save code coverage report for upload

* Trigger CI

* Try without explicit build step

* Run coverage job on self hosted runner

* Fix mistake because of which is was running fewer tests

* Run coverage on ubuntu latest

* Trigger CI

* fix name

* run coverage on all os

* Adjust after rebase to dev

* Avoid running coverage in other jobs

* fix test job

* reset test workflow

* Trigger CI

* run coverage after tests

* Add script to monitor resources

* fix indentation

* remove coverage dependency on test job

* fix needs field

* add monitoring script

* Run tail -f to monitor resources concurrently with tests

* Split commands

* Use --jobs=1 to possibly minimize RAM

* Try generating coverage one by one

* Dont clean coverage artifacts

* Merge .lcov files with lcov command

* Upload merged lcov.info file

* Run coverage for fewer packages

* Improve coverage script

* Move coverage.sh to tools dir

* Prepare for review

* Improve CI output and failure handling

* Generate HTML report if running locally

* Cleanup

* Run coverage on schedule and only for dev branch
2025-02-11 14:36:44 +01:00
xzfc 6a972e588a Update codespell config (#5846) 2025-01-23 14:28:56 +01:00
Tim Visée cddbc2bc90 Experiment: enable bindgen-runtime for RocksDB (#5768)
* Enable bindgen-runtime feature for RocksDB

* Test without libclang and llvm on CI
2025-01-16 10:49:49 +01:00
Arnaud Gourlay 7f79b14802 Update rocksdb 0.23.0 (#5765)
* Update Rocksdb 0.23.0

* make it work
2025-01-16 10:49:27 +01:00
Ivan Pleshkov 7ea41c794d unique workflow job names for gpu (#5758) 2025-01-08 14:33:07 +01:00
Ivan Pleshkov d841d7dbe6 Add GPU into github workflows (#5752)
* parent 88f68d95b5
author Ivan Pleshkov <pleshkov.ivan@gmail.com> 1736245999 +0100
committer Ivan Pleshkov <pleshkov.ivan@gmail.com> 1736331073 +0100

gpu test and release workflows

no unprivileged, add sdk

fix ci

include llvm

try to use external sdk

use another vk sdk script

remove ninja

native sdk installation

debug vulkan version

use non-dev packages

debug vkinfo

remove llvm dep

ubuntu process-results

ghcr

* remove running gpu test while pr
2025-01-08 14:12:02 +01:00
Arnaud Gourlay 4d350a4695 Fix poetry version in CI (#5734)
* Fix poetry version in CI

* extract version
2025-01-08 14:11:07 +01:00
Arnaud Gourlay 1aebe81af6 Track slow pytest integration tests (#5722)
* Track slow pytest integration tests

* gofor top 10
2025-01-08 14:10:55 +01:00
Andrey VasnetsovandTim Visée 7b0911961c Explict configuration for deb package build (#5630)
* explicit configuration of deb package

* use special build feature

* Review suggestions

---------

Co-authored-by: Tim Visée <tim+github@visee.me>
2025-01-08 14:03:45 +01:00
xzfc ba93831683 Fix shard snapshot operations for s3 (#5227)
* Fix shard snapshot operations for s3

* tests/shard-snapshot-api.sh: Improve error reporting

* Drop SnapshotStorageManager::get_shard_snapshot_path

* Fix s3 test on CI
2024-11-08 11:02:37 +01:00
Tim Visée 6d8a857408 Disable manual workflow dispatch on Docker release image job (#5117) 2024-09-23 12:00:45 +02:00
xzfc 6c2256b86d Unclutter repo root (#4678)
* Move CODE_OF_CONDUCT.md to docs

* Move CONTRIBUTING.md to docs

* Drop QUICK_START_GRPC.md

* Drop docs/favicon.ico as being unused

* Move QUICK_START.md to docs
2024-08-09 18:08:24 +02:00
xzfc 7e3de3e7bf Switch to poetry (#4518)
* Use poetry for openapi tests

* Use poetry for consensus tests

* Use poetry for gen_storage_compat_data/populate_db.py

* Make consensus_tests scripts executable

* Use poetry for test-consensus-compose

* Cleanup

* Don't call poetry run in scripts
2024-07-10 14:18:15 +02:00
c99caba0a3 Add test for OOD during indexing (#4267)
* Add test for OOD during indexing

* Start indexing right after 1st OOD message

* Only send search request after insert loop

* Fail early when encountering out-of-storage during optimization (#4578)

* fs4@0.8.4

* fail early on low storage

* move `dir_size` to `common`

* move the ood bailout to `SegmentOptimizer::optimized_segment_builder`

* drop dead code

* move dir_size to common subcrate

---------

Co-authored-by: generall <andrey@vasnetsov.com>

---------

Co-authored-by: xhjkl <xhjkl@users.noreply.github.com>
Co-authored-by: generall <andrey@vasnetsov.com>
2024-06-29 23:03:43 +02:00
dependabot[bot] f62892d770 Bump docker/build-push-action from 5 to 6 (#4487)
Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 5 to 6.
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v5...v6)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-21 23:39:29 +02:00
Tim Visée e094b618be Re-enable Windows CI (#4461)
This reverts commit c36b4793e0.
2024-06-21 23:34:41 +02:00
xzfc 827338543d Allow failures on Windows CI (#4421) 2024-06-11 13:16:01 +02:00
Arnaud Gourlay afdfe1aa80 Add optional post WAL data consistency check (#4359)
* Add optional post WAL data consistency check

* fix multi features build
2024-06-11 13:13:58 +02:00
Kumar Shivendu 16fe8cd15f fix: Replace with space (#4316) 2024-05-26 12:53:29 +02:00
Tim Visée 8af7b7ac22 Exclude code of conduct from codespell check (#4315) 2024-05-26 12:53:16 +02:00
Arnaud Gourlay e6c4b1805b Use Python 3.11 on CI for consensus tests (#4284) 2024-05-26 12:49:05 +02:00
96ca9039aa Handle Out-Of-Disk gracefully (#4165)
* tests: Add test on low disk

* Remove redundant assertion

* keep container after failure and print latest logs in console

* Add fs2 crate as a dependency and ensure sufficient disk space in LocalShard operations

* small fix

* Update test

* small fix

* use available_space

* Use `fs2` -> `fs4` and offload sync IO with `tokio::task::spawn_blocking`

* create DiskUsageWathcer

* chore: Remove unnecessary println statement in update_handler.rs

* chore: Fix typo in DiskUsageWatcher struct name

* chore: Refactor DiskUsageWatcher to improve disk usage tracking and update logic

---------

Co-authored-by: tellet-q <elena.dubrovina@qdrant.com>
Co-authored-by: generall <andrey@vasnetsov.com>
2024-05-26 12:27:54 +02:00