Commit Graph

1315 Commits

Author SHA1 Message Date
Olga Maciaszek-Sharma
dce413ae66 Do not pass response body to LB lifecycle beans. (#864)
* Do not pass response body to LB lifecycle beans.

* Fix argument name.
2020-12-09 13:37:58 +01:00
Olga Maciaszek-Sharma
0f98419c47 Request based sticky session (#860)
* Implement first draft for sticky-session load-balancing.

* Make setting instance cookie opt-in.

* Add tests.

* Make adding request cookie opt-in.

* Add docs and javadocs.

* Add default configuration with blocking discovery client.

* Fix docs after review.
2020-12-07 13:08:06 +01:00
Olga Maciaszek-Sharma
c3223934f8 Merge remote-tracking branch 'origin/2.2.x' 2020-12-04 19:00:39 +01:00
Olga Maciaszek-Sharma
c1128e5065 Fix @since info. 2020-12-04 18:59:34 +01:00
Olga Maciaszek-Sharma
2a1a50848f Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/src/main/asciidoc/spring-cloud-commons.adoc
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/annotation/LoadBalancerClientConfiguration.java
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/RoundRobinLoadBalancer.java
#	spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/core/LoadBalancerTests.java
2020-12-04 18:57:33 +01:00
Olga Maciaszek-Sharma
843cb79649 Support same service instance preference (#862)
* Draft initial implementation.

* Rename default configuration property. Check previously chosen instance for equality.

* Verify previous service instance for null. Add tests.

* Add docs.

* Add javadocs.

* Fix javadocs after review.
2020-12-04 18:18:10 +01:00
buildmaster
3d645bbc57 Going back to snapshots 2020-12-01 22:32:07 +00:00
buildmaster
b5801856a3 Update SNAPSHOT to 3.0.0-M6 2020-12-01 22:30:40 +00:00
Olga Maciaszek-Sharma
5a3c2b7364 Add ServerHttpRequestContext. (#857) 2020-12-01 17:08:33 +01:00
Olga Maciaszek-Sharma
c65dfbca6b Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/src/main/asciidoc/_configprops.adoc
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/LoadBalancerProperties.java
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/HealthCheckServiceInstanceListSupplier.java
#	spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/core/HealthCheckServiceInstanceListSupplierTests.java
2020-12-01 11:31:55 +01:00
Olga Maciaszek-Sharma
cbedae2e82 Allow refetching instances for healthcheck (#855)
* Allow refetching instances by HealthCheckServiceInstanceListSupplier.

* Add docs and javadocs.

* Fix docs after review.
2020-12-01 11:14:14 +01:00
Dave Syer
7287a3c767 Re-implement /pause endpoint
A new interface PauseHandler provides a callback for /pause and
/resume. The only implementation provided out of the box is for
Spring Integration's Pausable (so it will work with Spring Cloud
Stream Kafka for instance).

Fixes gh-788
2020-12-01 09:47:59 +00:00
buildmaster
48d315fa5b Bumping versions 2020-11-19 16:05:15 +00:00
buildmaster
4215a9a046 Going back to snapshots 2020-11-17 18:24:16 +00:00
buildmaster
99f2a754d8 Update SNAPSHOT to 3.0.0-M5 2020-11-17 18:22:45 +00:00
buildmaster
ad00eaeeae Bumping versions 2020-11-17 16:04:58 +00:00
spencergibb
f6a3988ed6 Merge branch '2.2.x' 2020-11-16 16:38:04 -05:00
spencergibb
18109085aa formatting 2020-11-16 16:35:52 -05:00
spencergibb
17a82c21aa Move properties to parameter.
Fixes gh-850
2020-11-16 16:34:31 -05:00
buildmaster
97189b4142 Bumping versions 2020-11-16 16:05:02 +00:00
Olga Maciaszek-Sharma
f5a5bef06f Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/pom.xml
#	pom.xml
#	spring-cloud-commons-dependencies/pom.xml
#	spring-cloud-commons/pom.xml
#	spring-cloud-context-integration-tests/pom.xml
#	spring-cloud-context-webflux-integration-tests/pom.xml
#	spring-cloud-context/pom.xml
#	spring-cloud-loadbalancer/pom.xml
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/annotation/LoadBalancerClientConfiguration.java
#	spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/annotation/LoadBalancerClientConfigurationTests.java
#	spring-cloud-starter-loadbalancer/pom.xml
#	spring-cloud-starter/pom.xml
#	spring-cloud-test-support/pom.xml
2020-11-16 13:19:56 +01:00
Olga Maciaszek-Sharma
17e9a2af38 Remove LB caching from default health-check config, since HealthCheckServiceInstanceListSupplier has a separate caching mechanism. Fixes gh-849. 2020-11-16 13:11:35 +01:00
Olga Maciaszek-Sharma
7f23cb852f Add Reactive retries for SC LoadBalancer (#847)
* Implement retry logic.

* Fix retrying on next instance when RetryExhausted in same instance.

* Fix retrying on next instance when RetryExhausted in same instance.

* Fix retrying on next instance when RetryExhausted in same instance.

* Move duplicated methods to utility class. Fix checkstyle.

* Fix test.

* Add more tests.

* Fix test.

* Add autoConfiguration.

* Refactor and add javadocs.

* Add javadocs.

* Use RetryAwareServiceInstanceListSupplier with reactive retries.

* Update properties.

* Fix the docs.

* Rename utility class.

* Verify interactions in order.
2020-11-12 11:49:33 +01:00
buildmaster
259df6f4ee Bumping versions to 2.2.7.BUILD-SNAPSHOT after release 2020-11-09 09:32:26 +00:00
buildmaster
439c966bb8 Going back to snapshots 2020-11-09 09:32:25 +00:00
buildmaster
30bf7336c9 Update SNAPSHOT to 2.2.6.RELEASE 2020-11-09 09:26:11 +00:00
Marcin Grzejszczak
1195581e02 Ignored a test; added conditional on property 2020-11-05 10:29:42 +01:00
buildmaster
a09abe00a4 Bumping versions 2020-10-12 16:04:56 +00:00
Olga Maciaszek-Sharma
4b3a399f7b Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/DefaultServiceInstance.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/discovery/simple/SimpleDiscoveryClient.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/discovery/simple/SimpleDiscoveryClientAutoConfiguration.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/discovery/simple/reactive/SimpleReactiveDiscoveryClientAutoConfiguration.java
#	spring-cloud-commons/src/test/java/org/springframework/cloud/client/discovery/simple/SimpleDiscoveryClientTests.java
#	spring-cloud-commons/src/test/java/org/springframework/cloud/client/discovery/simple/reactive/SimpleReactiveDiscoveryClientTests.java
#	spring-cloud-commons/src/test/java/org/springframework/cloud/client/loadbalancer/reactive/LoadBalancerExchangeFilterFunctionTests.java
#	spring-cloud-commons/src/test/java/org/springframework/cloud/client/loadbalancer/reactive/ReactorLoadBalancerExchangeFilterFunctionTests.java
#	spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/blocking/client/BlockingLoadBalancerClientTests.java
2020-10-12 15:33:22 +02:00
Olga Maciaszek-Sharma
ba8fd08adf Adjust after PR merge. Minor refactoring. 2020-10-12 14:20:51 +02:00
alchemy24
72762d76ed Deprecates SimpleServiceInstance in favor of DefaultServiceInstance (#835)
* Initial Commit

* Added URI to DefaultServiceInstance

* Added default constructor

* Fixed PR Comments
2020-10-12 13:41:39 +02:00
buildmaster
44b35c2cbf Going back to snapshots 2020-10-03 13:41:52 +00:00
buildmaster
83b7a1d6b3 Update SNAPSHOT to 3.0.0-M4 2020-10-03 13:39:52 +00:00
Ryan Baxter
084da119a1 Revert "Setting reactor bom to 2020.0.0-SNAPSHOT due to reactor bom overriding in HATEOAS"
This reverts commit 6ea0b4738b.
2020-10-02 12:46:03 -04:00
Olga Maciaszek-Sharma
e1c570af07 Add equals(), hashCode() and toString() methods to HintRequestContext and RetryableRequestContext. 2020-10-02 13:55:34 +02:00
Olga Maciaszek-Sharma
0fc6f97974 Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/DefaultRequest.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/DefaultRequestContext.java
2020-10-02 13:43:26 +02:00
Olga Maciaszek-Sharma
653222d561 Override equals(), hashCode() and toString() in DefaultRequest and DefaultRequestContext. 2020-10-02 13:38:54 +02:00
Ralph Goers
4a2e83ea46 Remove URL check that causes loading 401 responses from Spring Cloud Config 2020-10-01 10:35:54 -04:00
Olga Maciaszek-Sharma
0f0a4963d9 Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/RetryLoadBalancerInterceptor.java
2020-10-01 14:46:55 +02:00
Olga Maciaszek-Sharma
8748ef400f Add more logs. 2020-10-01 14:38:39 +02:00
Olga Maciaszek-Sharma
25c17082ee Avoid retrying on same instance (#834)
* cherry-pick switching to properties

* Pass information on previous ServiceInstance to RequestContext.

# Conflicts:
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/blocking/retry/BlockingLoadBalancedRetryPolicy.java

* Add a RoundRobinLoadBalancer implementation that avoids same service instance while retrying.

* Wrap instances in ArrayList. Add tests.

* Enable AvoidPreviousInstanceRoundRobinLoadBalancer by default if SpringRetry on classpath.

* Fix failing tests. Add javadocs and author tags.

* Fix properties.

* Add documentation.

* Fix docs after review.

* Fix docs after review.

* Handle avoiding previous instance with ServiceInstanceListSupplier in place of LoadBalancer.

* Fix property name.

* Change spelling.
2020-09-29 19:36:54 +02:00
Olga Maciaszek-Sharma
cbe4bb1139 Merge remote-tracking branch 'origin/2.2.x' 2020-09-28 18:41:36 +02:00
Mushtaq Ahmed
d95a4d8c44 Updating Evictor Project link 2020-09-28 18:37:49 +02:00
Jay Bryant
4900893c14 Wording changes (#784)
Replacing some terms
2020-09-28 10:34:58 -04:00
Olga Maciaszek-Sharma
1badef953f Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/src/main/asciidoc/spring-cloud-commons.adoc
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/InterceptorRetryPolicy.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/LoadBalancerAutoConfiguration.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/RetryLoadBalancerInterceptor.java
#	spring-cloud-commons/src/test/java/org/springframework/cloud/client/loadbalancer/AbstractLoadBalancerAutoConfigurationTests.java
#	spring-cloud-commons/src/test/java/org/springframework/cloud/client/loadbalancer/InterceptorRetryPolicyTest.java
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/config/BlockingLoadBalancerClientAutoConfiguration.java
#	spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/config/BlockingLoadBalancerClientAutoConfigurationTests.java
2020-09-24 18:02:35 +02:00
Olga Maciaszek-Sharma
5401628aed Add retry support for blocking LoadBalancer (#832)
* Add LoadBalancerProperties and BlockingLoadBalancedRetryPolicy. Add spring-retry dependency in LoadBalancer.

* Add BlockingLoadBalancedRetryFactory

* Move retry properties to LoadBalancerRetryProperties.

* Refactor and remove deprecations, fix checkstyle.

* Add BlockingLoadBalancedRetryPolicy to autoconfiguration. Set default retryableStatusCode prop. Fix javadoc.

* Allow using @Order on LoadBalancedRetryFactory beans.

* Add tests. Reformat tests. Add explanatory comments.

* Add documentation.

* Fix javadoc.

* Fix docs after review.

* Change field name.
2020-09-24 17:31:38 +02:00
Olga Maciaszek-Sharma
00668991a4 Reformat. 2020-09-17 09:44:37 -04:00
Olga Maciaszek-Sharma
034768bc8f Adjust to updates in boot. 2020-09-17 09:44:37 -04:00
spencergibb
f9bc96747d Merge branch '2.2.x' 2020-09-15 14:21:47 -04:00
Dave Syer
f7360b05ad Compatibility check if Spring Boot version is unknown
It is better not to fail the compatibility check if the Spring Boot version is unknown.
2020-09-15 14:18:06 -04:00