diff --git a/.github/workflows/ci-workflow.yml b/.github/workflows/ci-workflow.yml index 79e62f2479..10115d80b7 100644 --- a/.github/workflows/ci-workflow.yml +++ b/.github/workflows/ci-workflow.yml @@ -46,7 +46,7 @@ jobs: uses: codecov/codecov-action@v3 with: file: cover.info - functionalities: 'search' + functionalities: "search" - name: C and C++ Examples run: | @@ -123,7 +123,7 @@ jobs: steps: - uses: actions/checkout@v3 - - name: Ensure python dependencies + - name: Ensure Python dependencies run: | pip install torch~=2.0.0 --extra-index-url https://download.pytorch.org/whl/cpu &&\ pip install --user -r tools/python_api/requirements_dev.txt -f https://data.pyg.org/whl/torch-2.0.0+cpu.html @@ -159,7 +159,6 @@ jobs: - name: Run clang-tidy on examples run: run-clang-tidy -p build/release -quiet -j 32 "^$(realpath examples)" - msvc-build-test: name: msvc build & test needs: [clang-formatting-check, header-include-guard-check] @@ -254,3 +253,64 @@ jobs: - name: Benchmark run: python3 benchmark/benchmark_runner.py --dataset ldbc-sf100 --thread 10 + + macos-build-test: + name: apple clang build & test + needs: [clang-formatting-check, header-include-guard-check, rustfmt-check] + runs-on: self-hosted-mac-x64 + steps: + - uses: actions/checkout@v3 + + - name: Ensure Python dependencies + run: | + pip3 install torch~=2.0.0 --extra-index-url https://download.pytorch.org/whl/cpu &&\ + pip3 install --user -r tools/python_api/requirements_dev.txt -f https://data.pyg.org/whl/torch-2.0.0+cpu.html + + - name: Ensure Node.js dependencies + run: npm install --include=dev + working-directory: tools/nodejs_api + + - name: Build + run: make release NUM_THREADS=32 + + - name: Test + run: | + ulimit -n 10240 + make test NUM_THREADS=32 + + - name: Python test + run: | + ulimit -n 10240 + make pytest NUM_THREADS=32 + + - name: C and C++ Examples + run: | + ulimit -n 10240 + make example NUM_THREADS=32 + + - name: Node.js test + run: | + ulimit -n 10240 + make nodejstest NUM_THREADS=32 + + - name: Java test + run: | + ulimit -n 10240 + make javatest NUM_THREADS=32 + + - name: Rust share build + # Share build cache when building rust API and the example project + run: echo $'[workspace]\nmembers = ["tools/rust_api","examples/rust"]' > Cargo.toml + + - name: Rust test + run: | + ulimit -n 10240 + source /Users/runner/.cargo/env + make rusttest NUM_THREADS=32 + + - name: Rust example + working-directory: examples/rust + run: | + ulimit -n 10240 + source /Users/runner/.cargo/env + cargo build --features arrow diff --git a/test/c_api/database_test.cpp b/test/c_api/database_test.cpp index 937fc6d317..123f1c5008 100644 --- a/test/c_api/database_test.cpp +++ b/test/c_api/database_test.cpp @@ -7,7 +7,9 @@ class CApiDatabaseTest : public APIEmptyDBTest { TEST_F(CApiDatabaseTest, CreationAndDestroy) { auto databasePathCStr = databasePath.c_str(); - auto database = kuzu_database_init(databasePathCStr, kuzu_default_system_config()); + auto systemConfig = kuzu_default_system_config(); + systemConfig.buffer_pool_size = 512 * 1024; + auto database = kuzu_database_init(databasePathCStr, systemConfig); ASSERT_NE(database, nullptr); ASSERT_NE(database->_database, nullptr); auto databaseCpp = static_cast(database->_database); diff --git a/test/include/c_api_test/c_api_test.h b/test/include/c_api_test/c_api_test.h index b0bcc9b6b7..6ebcdb1077 100644 --- a/test/include/c_api_test/c_api_test.h +++ b/test/include/c_api_test/c_api_test.h @@ -26,7 +26,9 @@ class CApiTest : public APIDBTest { database.reset(); auto databasePath = getDatabasePath(); auto databasePathCStr = databasePath.c_str(); - _database = kuzu_database_init(databasePathCStr, kuzu_default_system_config()); + auto systemConfig = kuzu_default_system_config(); + systemConfig.buffer_pool_size = 512 * 1024 * 1024; + _database = kuzu_database_init(databasePathCStr, systemConfig); connection = kuzu_connection_init(_database); }