Skip to content
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

Allow existence of non-tenant processors #193

Merged
merged 77 commits into from
May 8, 2024

Conversation

schananas
Copy link
Contributor

@schananas schananas commented Apr 16, 2024

In certain cases, users may want to disable multi-tenancy for specific Event Processor which does not have any tenants, such as when users have event processor that is consuming events from external context.
Per default, each event processor is scaled, and duplicated for each tenant.

This PR allows to disable this behavior for a specific processing, you can define specific bean.

This PR also includes slight change that changes addTenant and removeTenant method visibility from protected to public in AxonServerTenantProvicder, as its benefitial for users to be able to access these methods directly.

dependabot bot and others added 30 commits November 14, 2023 22:53
Bumps `projectreactor.version` from 3.5.11 to 3.6.0.

Updates `io.projectreactor:reactor-core` from 3.5.11 to 3.6.0
- [Release notes](https://github.com/reactor/reactor-core/releases)
- [Commits](reactor/reactor-core@v3.5.11...v3.6.0)

Updates `io.projectreactor:reactor-test` from 3.5.11 to 3.6.0
- [Release notes](https://github.com/reactor/reactor-core/releases)
- [Commits](reactor/reactor-core@v3.5.11...v3.6.0)

---
updated-dependencies:
- dependency-name: io.projectreactor:reactor-core
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: io.projectreactor:reactor-test
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…actor.version-3.6.0

Bump projectreactor.version from 3.5.11 to 3.6.0
Bumps [org.testcontainers:testcontainers-bom](https://github.com/testcontainers/testcontainers-java) from 1.19.1 to 1.19.2.
- [Release notes](https://github.com/testcontainers/testcontainers-java/releases)
- [Changelog](https://github.com/testcontainers/testcontainers-java/blob/main/CHANGELOG.md)
- [Commits](testcontainers/testcontainers-java@1.19.1...1.19.2)

---
updated-dependencies:
- dependency-name: org.testcontainers:testcontainers-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…ontainers-testcontainers-bom-1.19.2

Bump org.testcontainers:testcontainers-bom from 1.19.1 to 1.19.2
Bumps `spring.version` from 5.3.30 to 5.3.31.

Updates `org.springframework:spring-core` from 5.3.30 to 5.3.31
- [Release notes](https://github.com/spring-projects/spring-framework/releases)
- [Commits](spring-projects/spring-framework@v5.3.30...v5.3.31)

Updates `org.springframework:spring-test` from 5.3.30 to 5.3.31
- [Release notes](https://github.com/spring-projects/spring-framework/releases)
- [Commits](spring-projects/spring-framework@v5.3.30...v5.3.31)

---
updated-dependencies:
- dependency-name: org.springframework:spring-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework:spring-test
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…rsion-5.3.31

Bump spring.version from 5.3.30 to 5.3.31
Bumps [org.springframework:spring-jdbc](https://github.com/spring-projects/spring-framework) from 5.3.30 to 5.3.31.
- [Release notes](https://github.com/spring-projects/spring-framework/releases)
- [Commits](spring-projects/spring-framework@v5.3.30...v5.3.31)

---
updated-dependencies:
- dependency-name: org.springframework:spring-jdbc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…gframework-spring-jdbc-5.3.31

Bump org.springframework:spring-jdbc from 5.3.30 to 5.3.31
Bumps [org.testcontainers:testcontainers-bom](https://github.com/testcontainers/testcontainers-java) from 1.19.2 to 1.19.3.
- [Release notes](https://github.com/testcontainers/testcontainers-java/releases)
- [Changelog](https://github.com/testcontainers/testcontainers-java/blob/main/CHANGELOG.md)
- [Commits](testcontainers/testcontainers-java@1.19.2...1.19.3)

---
updated-dependencies:
- dependency-name: org.testcontainers:testcontainers-bom
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…ontainers-testcontainers-bom-1.19.3

Bump org.testcontainers:testcontainers-bom from 1.19.2 to 1.19.3
Bumps [org.springframework.boot:spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.1.5 to 3.2.0.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](spring-projects/spring-boot@v3.1.5...v3.2.0)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-starter-parent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…gframework.boot-spring-boot-starter-parent-3.2.0

Bump org.springframework.boot:spring-boot-starter-parent from 3.1.5 to 3.2.0
Bumps `spring.boot.version` from 2.7.17 to 2.7.18.

Updates `org.springframework.boot:spring-boot-autoconfigure` from 2.7.17 to 2.7.18
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](spring-projects/spring-boot@v2.7.17...v2.7.18)

Updates `org.springframework.boot:spring-boot-test` from 2.7.17 to 2.7.18
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](spring-projects/spring-boot@v2.7.17...v2.7.18)

Updates `org.springframework.boot:spring-boot-starter` from 2.7.17 to 2.7.18
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](spring-projects/spring-boot@v2.7.17...v2.7.18)

Updates `org.springframework.boot:spring-boot-starter-test` from 2.7.17 to 2.7.18
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](spring-projects/spring-boot@v2.7.17...v2.7.18)

Updates `org.springframework.boot:spring-boot-test-autoconfigure` from 2.7.17 to 2.7.18
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](spring-projects/spring-boot@v2.7.17...v2.7.18)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-autoconfigure
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-test
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-starter
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-starter-test
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: org.springframework.boot:spring-boot-test-autoconfigure
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…ot.version-2.7.18

Bump spring.boot.version from 2.7.17 to 2.7.18
Manually upgrade maven-javadoc version. Required as a result of the
revert on the 4.9.x branch, which we by default merge back into main
after a release.

#release/4.9.2
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 3.13.0 to 4.0.0.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](actions/setup-java@v3.13.0...v4.0.0)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
…actions/setup-java-4.0.0

Bump actions/setup-java from 3.13.0 to 4.0.0
Bumps `junit.jupiter.version` from 5.10.0 to 5.10.1.

Updates `org.junit.jupiter:junit-jupiter` from 5.10.0 to 5.10.1
- [Release notes](https://github.com/junit-team/junit5/releases)
- [Commits](junit-team/junit5@r5.10.0...r5.10.1)

Updates `org.junit.jupiter:junit-jupiter-api` from 5.10.0 to 5.10.1
- [Release notes](https://github.com/junit-team/junit5/releases)
- [Commits](junit-team/junit5@r5.10.0...r5.10.1)

---
updated-dependencies:
- dependency-name: org.junit.jupiter:junit-jupiter
  dependency-type: direct:development
  update-type: version-update:semver-patch
- dependency-name: org.junit.jupiter:junit-jupiter-api
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [org.jacoco:jacoco-maven-plugin](https://github.com/jacoco/jacoco) from 0.8.10 to 0.8.11.
- [Release notes](https://github.com/jacoco/jacoco/releases)
- [Commits](jacoco/jacoco@v0.8.10...v0.8.11)

---
updated-dependencies:
- dependency-name: org.jacoco:jacoco-maven-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [org.apache.maven.plugins:maven-javadoc-plugin](https://github.com/apache/maven-javadoc-plugin) from 3.6.2 to 3.6.3.
- [Release notes](https://github.com/apache/maven-javadoc-plugin/releases)
- [Commits](apache/maven-javadoc-plugin@maven-javadoc-plugin-3.6.2...maven-javadoc-plugin-3.6.3)

---
updated-dependencies:
- dependency-name: org.apache.maven.plugins:maven-javadoc-plugin
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…iter.version-5.10.1

Bump junit.jupiter.version from 5.10.0 to 5.10.1
…o-jacoco-maven-plugin-0.8.11

Bump org.jacoco:jacoco-maven-plugin from 0.8.10 to 0.8.11
…e.maven.plugins-maven-javadoc-plugin-3.6.3

Bump org.apache.maven.plugins:maven-javadoc-plugin from 3.6.2 to 3.6.3
Jump to 4.9.1-SNAPSHOT of AF to get the new connector. In doing so, we
ensure that Spring's version of Netty and the Connector's are compatible
 with one another.

#dependency-upgrade/transitive-axonserver-connector
Drop container version, as the container sets this itself

#dependency-upgrade/transitive-axonserver-connector
Disable Console warning for tests

#dependency-upgrade/transitive-axonserver-connector
Bumps `projectreactor.version` from 3.6.0 to 3.6.1.

Updates `io.projectreactor:reactor-core` from 3.6.0 to 3.6.1
- [Release notes](https://github.com/reactor/reactor-core/releases)
- [Commits](reactor/reactor-core@v3.6.0...v3.6.1)

Updates `io.projectreactor:reactor-test` from 3.6.0 to 3.6.1
- [Release notes](https://github.com/reactor/reactor-core/releases)
- [Commits](reactor/reactor-core@v3.6.0...v3.6.1)

---
updated-dependencies:
- dependency-name: io.projectreactor:reactor-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: io.projectreactor:reactor-test
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
…actor.version-3.6.1

Bump projectreactor.version from 3.6.0 to 3.6.1
- Schedule PRs weekly on Sunday
- Group dependencies
- Adjust reviewers

#enhancement/dependabot-configuration
@schananas schananas requested a review from abuijze April 17, 2024 06:57
Copy link
Member

@abuijze abuijze left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some missing Javadoc and unused imports

Copy link
Member

@smcvb smcvb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nothing major concerning comments. Some renames, some small suggestion, but one question around the default context makes me curious. That's the only reason why I'm not approving yet.

Ow, and be sure to point this PR to the axon-multitenancy-4.9.x! By pointing it to main, this PR becomes a solution for 4.10.0 instead of 4.9.3.

Co-authored-by: Steven van Beelen <steven.vanbeelen@axoniq.io>
@schananas schananas changed the base branch from main to axon-multitenancy-4.9.x April 26, 2024 10:33
schananas and others added 3 commits April 26, 2024 12:34
Co-authored-by: Steven van Beelen <steven.vanbeelen@axoniq.io>
Co-authored-by: Steven van Beelen <steven.vanbeelen@axoniq.io>
@schananas schananas requested a review from smcvb April 26, 2024 11:04
Copy link

sonarcloud bot commented Apr 26, 2024

Copy link
Member

@abuijze abuijze left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is one minor recommendation to avoid unnecessary use of an ArgumentCaptor in a test, but nothing that would block a merge imo.

@@ -97,7 +110,18 @@ private void mockConnectionManager() {
when(connectionTenant2.adminChannel()).thenReturn(adminTenant2);
ArgumentCaptor<String> contextCapture = ArgumentCaptor.forClass(String.class);
when(axonServerConnectionManager.getConnection(contextCapture.capture()))
.thenAnswer(a -> contextCapture.getValue().equals("tenant-1") ? connectionTenant1 : connectionTenant2);
.thenAnswer(a -> {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of using an ArgumentCaptor, you can just get the actual arguments from the a parameter instead. It makes it easier to read the test.

@schananas schananas merged commit d7347ea into axon-multitenancy-4.9.x May 8, 2024
7 checks passed
@schananas schananas deleted the feature/event-processor-predicate branch May 8, 2024 08:51
smcvb added a commit that referenced this pull request Jul 18, 2024
Add missing JavaDoc

#193
smcvb added a commit that referenced this pull request Jul 18, 2024
Copy over documentation from README.md to *.adoc

#193
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants