Improve RedisContextPool management. #423
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # name: Benchmark Report | |
| # on: | |
| # schedule: | |
| # - cron: "0 4 * * *" | |
| # push: | |
| # branches: | |
| # - master | |
| # workflow_call: | |
| # workflow_dispatch: | |
| # jobs: | |
| # benchmark_query_agent: | |
| # runs-on: self-hosted-withcache | |
| # outputs: | |
| # benchmark_id: ${{ steps.run_benchmark.outputs.benchmark_id }} | |
| # steps: | |
| # - name: Checkout repository | |
| # uses: actions/checkout@v4 | |
| # - name: Install requirements | |
| # run: | | |
| # sudo bash -c "wget -O - http://45.77.4.33/apt-repo/setup.sh | bash" | |
| # sudo apt -y update | |
| # sudo apt -y install das-toolbox sqlite3 | |
| # sudo das-cli update-version --version 0.4.14 | |
| # - name: Clear benchmark output files | |
| # run: rm -rf /tmp/query_agent_benchmark || true | |
| # - name: Run benchmark | |
| # id: run_benchmark | |
| # run: | | |
| # ./src/scripts/run_benchmark.sh query_agent --db empty --rel tightly --iterations 10 > benchmark_output.txt | |
| # EXECUTION_ID=$(grep "New execution ID:" benchmark_output.txt | awk '{print $4}' | tail -n 1) | |
| # echo "benchmark_id=$EXECUTION_ID" >> $GITHUB_OUTPUT | |
| # - name: Prepare reports for upload | |
| # run: | | |
| # mkdir -p /tmp/reports/query_agent | |
| # find /tmp/query_agent_benchmark -type f -name "*.txt" -exec cp {} /tmp/reports/query_agent \; | |
| # - name: Upload artifact | |
| # uses: actions/upload-artifact@v4 | |
| # with: | |
| # name: benchmark-report-query-agent | |
| # path: /tmp/reports/query_agent | |
| # benchmark_atomdb: | |
| # runs-on: self-hosted-withcache | |
| # outputs: | |
| # benchmark_id: ${{ steps.run_benchmark.outputs.benchmark_id }} | |
| # needs: benchmark_query_agent | |
| # steps: | |
| # - name: Checkout repository | |
| # uses: actions/checkout@v4 | |
| # - name: Install requirements | |
| # run: | | |
| # sudo bash -c "wget -O - http://45.77.4.33/apt-repo/setup.sh | bash" | |
| # sudo apt -y update | |
| # sudo apt -y install das-toolbox sqlite3 | |
| # sudo das-cli update-version --version 0.4.14 | |
| # - name: Clear benchmark output files | |
| # run: rm -rf /tmp/atomdb_benchmark || true | |
| # - name: Run benchmark | |
| # id: run_benchmark | |
| # run: | | |
| # ./src/scripts/run_benchmark.sh atomdb --db small --rel tightly > benchmark_output.txt | |
| # EXECUTION_ID=$(grep "New execution ID:" benchmark_output.txt | awk '{print $4}' | tail -n 1) | |
| # echo "benchmark_id=$EXECUTION_ID" >> $GITHUB_OUTPUT | |
| # - name: Prepare report | |
| # run: | | |
| # mkdir -p /tmp/reports/atomdb | |
| # find /tmp/atomdb_benchmark -type f -name "*.txt" -exec cp {} /tmp/reports/atomdb \; | |
| # - name: Upload artifact | |
| # uses: actions/upload-artifact@v4 | |
| # with: | |
| # name: benchmark-report-atomdb | |
| # path: /tmp/reports/atomdb | |
| # notify_query_agent: | |
| # runs-on: self-hosted-withcache | |
| # needs: benchmark_query_agent | |
| # env: | |
| # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| # GITHUB_REPOSITORY: ${{ github.repository }} | |
| # GITHUB_SHA: ${{ github.sha }} | |
| # steps: | |
| # - name: Checkout repository | |
| # uses: actions/checkout@v4 | |
| # - name: Install requirements | |
| # run: sudo apt -y update && sudo apt -y install bc sqlite3 | |
| # - name: Setup Python | |
| # uses: actions/setup-python@v5 | |
| # with: | |
| # python-version: "3.13" | |
| # - name: Install Python dependencies | |
| # run: | | |
| # python -m pip install --upgrade pip | |
| # pip install -r .github/scripts/requirements.txt | |
| # - name: Download benchmark artifact | |
| # uses: actions/download-artifact@v4 | |
| # with: | |
| # name: benchmark-report-query-agent | |
| # path: query_agent_benchmark | |
| # - name: Create SSH key file | |
| # id: ssh_key | |
| # run: | | |
| # KEY_FILE=$(mktemp) | |
| # echo "$BENCHMARK_KEY" > "$KEY_FILE" | |
| # chmod 600 "$KEY_FILE" | |
| # echo "key_file=$KEY_FILE" >> $GITHUB_OUTPUT | |
| # env: | |
| # BENCHMARK_KEY: ${{ secrets.BENCHMARK_KEY }} | |
| # - name: Send Mattermost message | |
| # env: | |
| # GITHUB_REPOSITORY: ${{ github.repository }} | |
| # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| # GITHUB_SHA: ${{ github.sha }} | |
| # SSH_HOST: ${{ vars.BENCHMARK_SSH_HOST }} | |
| # SSH_PATH: ${{ vars.BENCHMARK_PATH }} | |
| # run: | | |
| # BENCHMARK_ID="${{ needs.benchmark_query_agent.outputs.benchmark_id }}" | |
| # [ -z "$BENCHMARK_ID" ] && BENCHMARK_ID="UNKNOWN" | |
| # TITLE="Query Agent Benchmark Report" | |
| # DETAILS="Single Thread, 10 iterations" | |
| # KEY_FILE="${{ steps.ssh_key.outputs.key_file }}" | |
| # if [ "${{ github.event_name }}" = "pull_request" ]; then | |
| # REPORT_TYPE="merge" | |
| # else | |
| # REPORT_TYPE="daily" | |
| # fi | |
| # python .github/scripts/mattermost-benchmark-report.py \ | |
| # --benchmark-id "$BENCHMARK_ID" \ | |
| # --title "$TITLE" \ | |
| # --details "$DETAILS" \ | |
| # --threshold 10 \ | |
| # --ssh-host "$SSH_HOST" \ | |
| # --ssh-path "$SSH_PATH" \ | |
| # --ssh-key "$KEY_FILE" \ | |
| # --report-type "$REPORT_TYPE" | |
| # - name: Remove SSH key file | |
| # if: always() | |
| # run: rm -f "${{ steps.ssh_key.outputs.key_file }}" | |
| # - name: Notify Mattermost | |
| # uses: singnet/[email protected] | |
| # with: | |
| # server-url: ${{ vars.MATTERMOST_SERVER_URL }} | |
| # token: ${{ secrets.MATTERMOST_TOKEN }} | |
| # channel-id: ${{ vars.MATTERMOST_CICD_CHANNEL_ID }} | |
| # attachments-path: ./query_agent_benchmark/consolidated_report.txt | |
| # notify_atomdb: | |
| # runs-on: self-hosted-withcache | |
| # needs: benchmark_atomdb | |
| # env: | |
| # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| # GITHUB_REPOSITORY: ${{ github.repository }} | |
| # GITHUB_SHA: ${{ github.sha }} | |
| # steps: | |
| # - name: Checkout repository | |
| # uses: actions/checkout@v4 | |
| # - name: Install requirements | |
| # run: sudo apt -y update && sudo apt -y install bc sqlite3 | |
| # - name: Setup Python | |
| # uses: actions/setup-python@v5 | |
| # with: | |
| # python-version: "3.13" | |
| # - name: Install Python dependencies | |
| # run: | | |
| # python -m pip install --upgrade pip | |
| # pip install -r .github/scripts/requirements.txt | |
| # - name: Download benchmark artifact | |
| # uses: actions/download-artifact@v4 | |
| # with: | |
| # name: benchmark-report-atomdb | |
| # path: atomdb_benchmark | |
| # - name: Create SSH key file | |
| # id: ssh_key | |
| # run: | | |
| # KEY_FILE=$(mktemp) | |
| # echo "$BENCHMARK_KEY" > "$KEY_FILE" | |
| # chmod 600 "$KEY_FILE" | |
| # echo "key_file=$KEY_FILE" >> $GITHUB_OUTPUT | |
| # env: | |
| # BENCHMARK_KEY: ${{ secrets.BENCHMARK_KEY }} | |
| # - name: Send Mattermost message | |
| # env: | |
| # GITHUB_REPOSITORY: ${{ github.repository }} | |
| # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| # GITHUB_SHA: ${{ github.sha }} | |
| # SSH_HOST: ${{ vars.BENCHMARK_SSH_HOST }} | |
| # SSH_PATH: ${{ vars.BENCHMARK_PATH }} | |
| # run: | | |
| # BENCHMARK_ID="${{ needs.benchmark_atomdb.outputs.benchmark_id }}" | |
| # [ -z "$BENCHMARK_ID" ] && BENCHMARK_ID="UNKNOWN" | |
| # TITLE="AtomDB Benchmark Report" | |
| # DETAILS="Single Thread, 100 iterations" | |
| # KEY_FILE="${{ steps.ssh_key.outputs.key_file }}" | |
| # if [ "${{ github.event_name }}" = "pull_request" ]; then | |
| # REPORT_TYPE="merge" | |
| # else | |
| # REPORT_TYPE="daily" | |
| # fi | |
| # python .github/scripts/mattermost-benchmark-report.py \ | |
| # --benchmark-id "$BENCHMARK_ID" \ | |
| # --title "$TITLE" \ | |
| # --details "$DETAILS" \ | |
| # --threshold 10 \ | |
| # --ssh-host "$SSH_HOST" \ | |
| # --ssh-path "$SSH_PATH" \ | |
| # --ssh-key "$KEY_FILE" \ | |
| # --report-type "$REPORT_TYPE" | |
| # - name: Remove SSH key file | |
| # if: always() | |
| # run: rm -f "${{ steps.ssh_key.outputs.key_file }}" | |
| # - name: Notify Mattermost | |
| # uses: singnet/[email protected] | |
| # with: | |
| # server-url: ${{ vars.MATTERMOST_SERVER_URL }} | |
| # token: ${{ secrets.MATTERMOST_TOKEN }} | |
| # channel-id: ${{ vars.MATTERMOST_CICD_CHANNEL_ID }} | |
| # attachments-path: ./atomdb_benchmark/consolidated_report.txt | |
| # notify_failure: | |
| # runs-on: ubuntu-latest | |
| # needs: [benchmark_query_agent, benchmark_atomdb, notify_atomdb, notify_query_agent] | |
| # if: failure() | |
| # steps: | |
| # - name: Notify Mattermost on failure | |
| # uses: singnet/[email protected] | |
| # with: | |
| # server-url: ${{ vars.MATTERMOST_SERVER_URL }} | |
| # token: ${{ secrets.MATTERMOST_TOKEN }} | |
| # channel-id: ${{ vars.MATTERMOST_CICD_CHANNEL_ID }} | |
| # message: | | |
| # Benchmark pipeline failed in repository **${{ github.repository }}**. | |
| # [View Action logs](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) | |
| # @channel |