-
Notifications
You must be signed in to change notification settings - Fork 90
feat: add stress tests and CI benchmark integration #298
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
460 commits
Select commit
Hold shift + click to select a range
9387e90
Rename thigns
all-seeing-code c8d2d1a
Change port variable
all-seeing-code 8dd9891
Address review comments
all-seeing-code d3707e8
Remove client_slash file
all-seeing-code 1e55e5c
Update python import function to make python3 happy
all-seeing-code e109345
feat(Slash gRPC Client): Add gRPC support for Slash endpoints
all-seeing-code bc94bdf
Improved example in readme (#152)
dhagrow bc7735d
Fix missing import of 'errors' (#151)
ajeetdsouza 8460628
Release 20.07.0 (#158)
martinmr 9005f38
Update README.md
bucanero ad97c61
Update README.md
bucanero 0597d91
Update README.md
bucanero 077e8d8
Update README.md
bucanero 28db0ff
Update README.md
bucanero 17719cb
Update README.md
bucanero df45ad4
Merge pull request #159 from bucanero/master
bucanero 93779c4
Update CHANGELOG.md
bucanero 7be46a9
Docs (discuss feedback): fix incorrect statement about upsert blocks …
aaroncarey 9c88f10
Incorporate feedback from Anand
aaroncarey 9bf6458
fix: small typo error
0xflotus 70628e1
Merge pull request #163 from 0xflotus/patch-1
bucanero 84aa715
chore: enabled syntax highlighting
0xflotus 2180842
Merge pull request #164 from 0xflotus/patch-2
bucanero a629def
Merge pull request #161 from dgraph-io/aa-doc-pydgraph-D-2777
bucanero f45aae3
Add response to proto
all-seeing-code 2b469bd
Add response format
all-seeing-code 29a292d
Add integration test
all-seeing-code 3a63dd4
Add decode to handle byte strings
all-seeing-code 29e766b
feat: Add RDF response capability to Pydgraph
all-seeing-code 670e55b
Update link to Python client docs, minor edits to intro
aaroncarey 25e0081
Merge pull request #166 from dgraph-io/aaroncarey/link-to-docs
aaroncarey cbe75c7
Update Pydgraph client to support login into namespace
all-seeing-code ae447f0
Change function name
all-seeing-code a06f342
Merge pull request #167 from dgraph-io/anurags92/ExtendClientForMulti…
all-seeing-code 73121c6
Add hash to response and txn context. Prepare for release v21.03
all-seeing-code 57cfd1e
Update changelog
all-seeing-code cee9d75
Merge pull request #168 from dgraph-io/anurags92/release21.03Update
all-seeing-code 44ff58c
Add from_cloud method
all-seeing-code 91d3f9a
Merge pull request #169 from dgraph-io/anurags92/RenameCloudEndpoint
all-seeing-code 2ee79e1
refresh example for v21.03
darkn3rd ca2e941
fix DgraphClientStub.from_cloud() comment bug in pydgraph
darkn3rd d0fd07e
Merge pull request #171 from darkn3rd/joaquin/update-sample
MichelDiz c8a7021
Release v21.3.1. (#173)
danielmai 450fe95
doc: Cleanup README.
danielmai cb66105
fix: Missing variable in from_cloud. (#174)
danielmai f4e7c3c
Release 21.3.2. (#175)
danielmai ff08af7
delete yml
MichelDiz eaaa282
Merge pull request #184 from dgraph-io/micheldiz/removeAction
MichelDiz e9331a9
Adding example for datetime parsing (#170)
mrwunderbar666 38769e7
Bump setuptools from 45.2.0 to 65.5.1 (#187)
dependabot[bot] 69d1e49
Bump wheel from 0.34.2 to 0.38.1 (#186)
dependabot[bot] b589d9e
update requirements due to a conflict with protobuf (#183)
MaxxReis b7324fb
chore(ci): add ci to pydgraph (#192)
joshua-goldstein 647893b
chore(ci/cd): add pipelines + modernize repo (#193)
joshua-goldstein b569813
chore(ci): fix test script & use latest docker image (#195)
joshua-goldstein 835ced4
chore(ci): test against latest dgraph on main #196
joshua-goldstein cf41843
cleanup README, compose files and doc links (#194)
mangalaman93 db724cb
accept grpc endpoint or /graphql endpoint in from_cloud function (#190)
rderbier 3c7f85b
fix the TLS examples in examples/tls (#198)
mangalaman93 dc5ca05
update docs and fix flaky tests (#199)
mangalaman93 a228e52
Add utility functions to support graph analysis and viz (#200)
matthewmcneely f2b9a27
chore: Improve Dgraph cloud docs in README (#201)
mangalaman93 ba923a9
chore(changelog): add changelog for v23 release (#197)
joshua-goldstein e47c922
chore(cd): pipeline fixes (#203)
joshua-goldstein bb5f4fd
chore(cd): fix protobuf import issue (#204)
joshua-goldstein 69776d5
chore(cd): release v23.0.1 (#205)
joshua-goldstein feebb15
Add Jupyter Notebook example (#206)
matthewmcneely 9427133
add ai-classification notebook (#207)
rderbier 0e3f938
chore(docs): Remove invalid emails and non-maintainers. (#208)
MichelDiz c6b5261
return commit_ts in the function 'commit()' in txn.py (#213)
seedoilz 205f7a4
accept custom grpc options in from_cloud function (#215)
rarvikar 807e3bd
chore: prepare changelog for v23.0.2 release (#217)
joshua-goldstein 49d64d6
chore: update version in meta (#218)
2b0f069
Create CODEOWNERS (#219)
ryanfoxtyler 649748f
CI: resolve failing jobs (#216)
0651eff
Create computeEmbeddings.py (#221)
rderbier b897e0b
Create stale.yml
ryanfoxtyler d809db7
Create dependabot.yml
ryanfoxtyler e86f92a
Bump actions/checkout from 3 to 4 (#226)
dependabot[bot] 8805afa
Bump actions/setup-python from 4 to 5 (#227)
dependabot[bot] c0e4cdb
Bump github/codeql-action from 2 to 3 (#224)
dependabot[bot] 3b96706
Bump actions/setup-go from 3 to 5 (#225)
dependabot[bot] d46f727
Bump grpcio from 1.54.0 to 1.54.3 (#220)
dependabot[bot] 8d847dd
Update README.md
ryanfoxtyler 7a41620
Update README.md
ryanfoxtyler ab9a7e7
Update README.md
ryanfoxtyler 9092a63
Allow flexible dependency versions for grpcio & protobuf (#233)
gautambhat 9e9deb5
Bump pytest from 7.3.1 to 8.3.1 (#235)
dependabot[bot] 1feaef3
Bump protobuf from 4.22.3 to 5.27.2 (#231)
dependabot[bot] 980b095
Bump build from 0.10.0 to 1.2.1 (#229)
dependabot[bot] 66d619a
Bump grpcio-tools from 1.54.0 to 1.65.1 in the minor-and-patch group …
dependabot[bot] 0419151
update proto to make it consistent with dgraph-io/dgo (#237)
mangalaman93 86edc13
regenerate protos with python3.11 (#238)
mangalaman93 771763a
prepare to release version v24.0.2 (#239)
mangalaman93 9657a73
add RAG notebooks (#240)
rderbier 31913b3
Bump the minor-and-patch group with 2 updates (#241)
dependabot[bot] a6325f0
Bump grpcio-tools from 1.65.2 to 1.65.4 in the minor-and-patch group …
dependabot[bot] f708e49
Update ci-aqua-security-trivy-tests.yml
ryanfoxtyler e878f0a
Bump grpcio-tools from 1.65.4 to 1.65.5 in the minor-and-patch group …
dependabot[bot] f10d34c
Bump grpcio-tools from 1.65.5 to 1.66.0 in the minor-and-patch group …
dependabot[bot] 06ac1d9
Bump grpcio-tools from 1.66.0 to 1.66.1 in the minor-and-patch group …
dependabot[bot] 78de8d6
Update dependabot.yml
ryanfoxtyler 6f6a496
Bump the minor-and-patch group with 2 updates (#246)
dependabot[bot] 7783af5
Bump grpcio-tools from 1.66.1 to 1.66.2 in the minor-and-patch group …
dependabot[bot] 9e8f937
Bump build from 1.2.2 to 1.2.2.post1 (#248)
dependabot[bot] 10a3690
Update stale.yml
ryanfoxtyler a3b6f1a
Bump grpcio-tools from 1.66.2 to 1.68.0 in the minor-and-patch group …
dependabot[bot] c02f298
use go.mod file to figure out go version for Dgraph repo (#253)
mangalaman93 f0c9c71
Bump setuptools from 67.7.2 to 75.6.0 (#252)
dependabot[bot] e21787b
update proto file to support bigfloat data type (#255)
mangalaman93 8d58365
prepare for v24.1.0 release (#256)
mangalaman93 73f764f
add changelog for v24.1.0 (#257)
mangalaman93 8f88e35
upgrade python version to 3.12.7 (#258)
mangalaman93 42157cf
Raphael/readme doc drop data (#254)
mangalaman93 1077078
chore: repo alignment (#260)
ryanfoxtyler 07847ac
chore: normalize copyrights (#262)
ryanfoxtyler 451f0c8
cleanup
ryanfoxtyler 0921a3d
chore: cleanup
ryanfoxtyler d842fbf
Update renovate.json
ryanfoxtyler 9da6fef
Update CODEOWNERS
ryanfoxtyler a849c17
feat: add support for dgraph connection strings (#263)
matthewmcneely 0931e3a
chore(deps): Update dependency protobuf to v6 (#264)
renovate[bot] 8ef4d6a
Update PULL_REQUEST_TEMPLATE.md
ryanfoxtyler ac802b6
chore: release v24.2.0 (#265)
matthewmcneely 551f79d
chore: add generated grpc artifacts (#266)
matthewmcneely 7c6956b
chore: add protos check action (#267)
matthewmcneely 9e74bed
chore(deps): Update dependency protobuf to >=4.23.0,<7.0.0 (#268)
renovate[bot] 982bc2b
move Trunk to action
ryanfoxtyler 171424d
Update trunk.yml
ryanfoxtyler 282f5fb
Update trunk.yml
ryanfoxtyler 7f2f53d
Bump min grpcio version, pin grpcio-tools to 1.65.x
matthewmcneely 6708988
Update README
matthewmcneely ae263b7
Update changelog
matthewmcneely aa70a8b
Update version
matthewmcneely 990f672
Update generated protobufs
matthewmcneely 9b30084
Update changelog
matthewmcneely 1c54889
Update README
matthewmcneely 6e4d894
Update correctly generated code
matthewmcneely 764c2b3
Update dev dependencies for python 3.13+
matthewmcneely 8d54653
Reorder steps for quicker grpc failures
matthewmcneely 5c308d3
Raise an error if attempting to generate protobufs using python 3.13
matthewmcneely 497c46b
Update README
matthewmcneely 2bfae89
Update the conditional step comparison logic
matthewmcneely 8005f56
Update CHANGELOG.md
matthewmcneely 31c9042
Force the python version when building and running CD
matthewmcneely 1c4f300
chore(deps): Update actions/checkout action to v5 (#276)
renovate[bot] 613c2ba
Delete .github/actionlint.yml
ryanfoxtyler 350b486
Update cd-pydgraph.yml
ryanfoxtyler 302906b
Update ci-pydgraph-tests.yml
ryanfoxtyler 26eacef
chore(deps): Update actions to v6 (major) (#278)
renovate[bot] e0d225e
Update trunk config
matthewmcneely 99731bf
Convert whitelist to open/all ipv4 addresses
matthewmcneely 77f5739
Update proto and generated
matthewmcneely 2317483
Implement updated v1 api
matthewmcneely 50b3a1f
Add/update tests
matthewmcneely de5cf83
Skip pre-v25 functionality in tests
matthewmcneely 508a23b
Update trunk
matthewmcneely d1ac785
Remove logging
matthewmcneely 8392ac5
Sync the version
matthewmcneely 5672df4
Update the changelog and readme
matthewmcneely ce15cd2
align apis with dgo client
05abf04
fix checks
0222f1b
change headers and add tests
2c023a7
Update docs and configs
matthewmcneely 06dbd01
Add linter suppression for test
matthewmcneely 808544b
Add tests for ACL+namespaces
matthewmcneely d0c3a04
Satisfy the linter
matthewmcneely 77f80f0
Update changelog
matthewmcneely 513298a
Fix typo
matthewmcneely 8127007
Upgrade trunk configuration
matthewmcneely caa6e3c
fix: address CI flaky tests with tolerance and retry logic
mlwelles df698e2
chore: fix formatting
mlwelles 58d3bca
chore: fix formatting
mlwelles 60c6dd5
Add context manager support (fixes for PR #279)
mlwelles 2616c62
fix: Resolve linting and test issues from PR #280 (#285)
mlwelles e3975ae
fix: use duck typing for gRPC error detection (grpcio 1.76+ compat)
mlwelles 328bca7
feat: add transaction retry utilities with exponential backoff
mlwelles 545b25b
fix: remove unused imports in test_retry.py
mlwelles 2dac6b0
feat: modernize project tooling and add comprehensive type annotation…
mlwelles c725e8b
ci: add protobuf version matrix to CI tests
mlwelles 673bf16
ci: scope protobuf compat tests to older 4.x and 5.x versions
mlwelles aafe61f
ci: rename job to Protobuf Release Version Backwards Compatibility
mlwelles 14fc5ff
ci: rename job to Test Protobuf Backwards Compat
mlwelles c35861b
ci: remove redundant quotes to fix yamllint
mlwelles ad65bf7
ci: add standalone yamllint hook to pre-commit
mlwelles 9de5506
ci: rename job to Test Protobuf Compat
mlwelles b4b1b80
ci: rename job to Test Pydgraph
mlwelles 24d4335
ci: add protobuf compat tests for both DGraph Latest and HEAD
mlwelles 069f5d2
ci: integrate protobuf version matrix into main test jobs
mlwelles 2de7c8e
docs: update CI workflow documentation for protobuf version matrix
mlwelles 473256a
Bump version
matthewmcneely 67db658
Update changelog
matthewmcneely ec09561
fix: add shellcheck disable for subshell warning in local-test.sh
mlwelles f3d76ea
ci: skip no-commit-to-branch hook in CD workflow
mlwelles 05934f5
fix(cd): remove uv version step incompatible with dynamic versioning
mlwelles f4cbfd6
fix: prevent asyncio.Lock deadlock in AsyncTxn.do_request error handling
shaunpatterson 4804886
style: apply ruff formatting to async_client, client, and retry modules
shaunpatterson 4021f98
test: add regression tests for async txn deadlock fix
mlwelles d28af08
feat(tests): add comprehensive stress tests for sync and async clients
mlwelles e782c9b
refactor(tests): split stress tests into sync/async with shared fixtures
mlwelles 041cf91
docs: add stress test instructions to CONTRIBUTING.md
mlwelles bdafc9d
docs: add CI benchmarks design plan
mlwelles 9a1ef3a
chore: add .worktrees to gitignore
mlwelles 9bb8eed
fix(tests): add Future type annotations for ProcessPoolExecutor results
mlwelles 940072e
docs: add CI benchmarks implementation plan
mlwelles ec42503
deps: add pytest-benchmark and pygal for CI benchmarks
mlwelles 275a464
build: add benchmark Makefile target
mlwelles 90695a5
feat(tests): add benchmark fixture to sync stress tests
mlwelles b774403
feat(tests): add benchmark fixture to async stress tests
mlwelles fbc1779
ci: add benchmarks job to PR/main workflow
mlwelles 46207c3
ci: add benchmarks workflow for semver tag releases
mlwelles 0ab202e
chore: ignore benchmark output files
mlwelles 16b4444
fix: address linting issues in benchmark integration
mlwelles 9d725a4
chore: remove implementation plan files
mlwelles d30779b
docs: use make test PYTEST_ARGS instead of direct script calls
mlwelles eaaf30a
refactor: benchmark target uses make test with PYTEST_ARGS
mlwelles f7c5e24
build: export test config vars for consistent make syntax
mlwelles bab40b2
build: default PYTEST_ARGS to -v if unset
mlwelles 760a2d8
fix: improve local-test.sh robustness and add moderate stress mode
mlwelles 0a016b6
fix: resolve benchmark fixture issues for sync and async stress tests
mlwelles 5f61b25
refactor(tests): remove ProcessPoolExecutor from stress tests
mlwelles 8ed02d8
test: add movie dataset to test resources
mlwelles ab7e3a6
feat(tests): add movie dataset pytest fixtures
mlwelles a56d79a
refactor(tests): standardize test naming with _sync/_async suffixes
mlwelles de3c9ba
docs: add targeted benchmarks implementation plan
mlwelles d23bffd
feat(tests): add targeted benchmark tests for individual operations
mlwelles 0bef193
style: fix linting issues in stress tests and scripts
mlwelles bfeb316
fix(scripts): add shellcheck disable directives for expected warnings
mlwelles 195f197
fix(ci): use make benchmark to properly start Dgraph before benchmarks
mlwelles d86aba0
ci: run benchmarks only on release tags
mlwelles ff4fedd
fix: prevent asyncio.Lock deadlock in AsyncTxn.do_request error handling
shaunpatterson 23b83d8
style: apply ruff formatting to async_client, client, and retry modules
shaunpatterson 332fc6c
test: add regression tests for async txn deadlock fix
mlwelles 8e0ccdc
Merge remote-tracking branch 'origin/main' into feature/stress-tests
mlwelles 1e5b082
ci: run benchmarks on push to main
mlwelles 0159eca
feat: auto-download test data fixtures on demand
mlwelles 747fcf7
docs: add STRESS_TEST_MODE options to benchmark help text
mlwelles 8f15345
feat: use movies schema and lazy-load 1million dataset for stress tests
mlwelles 7990b75
refactor: rename stress test fixtures for clarity
mlwelles 26f2e99
Merge remote-tracking branch 'origin/main' into feature/stress-tests
mlwelles 860ba4b
refactor: remove deprecated unittest.makeSuite usage
mlwelles 336a5d0
refactor: move client fixtures from conftest into test files
mlwelles a4fb7e6
refactor: remove sync_client_clean fixture, use explicit drop_all
mlwelles 1ed4f42
refactor: fix async fixture scoping, consolidate clients, disable ben…
mlwelles 2c20ab3
feat(tests): add rounds-based sustained load to stress tests
mlwelles 965ee7f
fix: remove extra trailing newlines in conftest.py
mlwelles 4774bef
fix: benchmark mode uses quick config and disables gRPC fork handler
mlwelles 96fe773
fix: handle empty STRESS_TEST_ROUNDS env var from Makefile export
mlwelles 0eacc0a
fix: use benchmark.pedantic to control stress test iteration
mlwelles d6ac6c6
fix: move return to else block to satisfy ruff TRY300
mlwelles File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,34 @@ | ||
| name: ci-pydgraph-benchmarks | ||
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| tags: | ||
| - v[0-9]+.[0-9]+.[0-9]+* | ||
|
|
||
| permissions: | ||
| contents: read | ||
|
|
||
| jobs: | ||
| benchmarks: | ||
| name: Release Benchmarks | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v5 | ||
| - name: Setup python runtime and tooling | ||
| uses: ./.github/actions/setup-python-and-tooling | ||
| with: | ||
| python-version: "3.13" | ||
| - name: Setup project dependencies | ||
| run: INSTALL_MISSING_TOOLS=true make setup | ||
| - name: Sync python virtualenv | ||
| run: make sync | ||
| - name: Run benchmarks | ||
| run: make benchmark | ||
| - name: Upload benchmark results | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: benchmark-results-${{ github.ref_name }} | ||
| path: | | ||
| benchmark-results.json | ||
| benchmark-histogram.svg | ||
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.