-
Notifications
You must be signed in to change notification settings - Fork 41.1k
Add starter and sample for Apache Geode. #5445
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
Add starter and sample for Apache Geode. #5445
Conversation
DO NOT MERGE (yet)! This PR is a preview for feedback only. So, it turns out the As further verification, my independent, example/test application declaring the I believe this is related to the inclusion of the Spring Data Maven BOM file directly based on the Spring Data version currently used by Spring Boot. The problem is 1) the published Spring Data Maven BOM file has a hard version on the
Thus as I have done in the I am thinking at this point, if there is no special Maven magic to work around this issue, then we might have to go with an actual, separate Spring Data GemFire dependency, as in spring-data-geode, making "Spring Data GemFire with Apache Geode support" a top-level module (i.e. Spring Data Geode) in the Spring Data portfolio. Thoughts? |
@@ -135,6 +135,7 @@ | |||
<spring-amqp.version>1.6.0.M1</spring-amqp.version> | |||
<spring-cloud-connectors.version>1.2.1.RELEASE</spring-cloud-connectors.version> | |||
<spring-batch.version>3.0.6.RELEASE</spring-batch.version> | |||
<spring-data-geode.version>1.7.0.APACHE-GEODE-EA-M1</spring-data-geode.version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unrelated but that's a weird version naming. Any reason why it has to be that long?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As I explained here and here, this is not a usual version number.
Essentially, 2 separate releases of Spring Data GemFire are occurring off 1 codebase (in GitHub) right now. Though, the Spring Data GemFire Support for Apache Geode is technically occurring off a branch (apache-geode
).
Based on the issues I had with the starter, I think now, even more than ever/before, it is time to consider Spring Data GemFire with Apache Geode Support as a separate project (SD module) having a separately releasable artifact (i.e. spring-data-geode
) and intuitive version number (i.e. 1.0.0.M1
).
5fb6b64
to
3026557
Compare
* @since 1.4.0 | ||
*/ | ||
@SpringBootApplication | ||
@ConfigurationProperties |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's wrong. This should be@EnableConfigurationProperties(SampleDataGeodeProperties.class)
and you should define that class with the list of keys that the sample needs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will do!
3026557
to
94af046
Compare
Note, I cleaned up both #5444 and this PR by...
#5444 (polishing the GemFire starter/sample) is complete. This PR still needs to sort out the @olivergierke what say you? |
Note, out of curiosity, I also observed that including the following in the
Rather than...
With the explicit Pivotal GemFire is still used over Apache Geode in the The only workaround is to put the above Therefore, everything rides on creating a separate artifact (i.e. Spring Data Geode), or simply not having a Spring Boot Starter for Apache Geode. However, I do think it would be nice and convenient for our users. DISCLAIMER: I know that we don't want to include the |
c11ef56
to
0081a38
Compare
@SpringBootTeam - Alright, after all checks pass, this PR is ready to go (review and merge after your approval). If there are any questions or concerns, please let me know. Thanks! |
thanks, @jxblum. What's the plan for a final release of both Geode and the accompanying Spring Data module? We can't use a milestone dependency in a final release of Spring Boot so this may have to wait till after 1.4.0. |
Hi @wilkinsona - There has only been recent mention of an official Apache Geode 1.0.0-incubating GA release. However, there is no current plan or schedule in place yet. Still, both Apache Geode
Technically, the only reason why I have the newly minted Spring Data Geode module tagged as a milestone (i.e. Cheers, |
Thanks. We'll wait for Geode to reach GA. |
0081a38
to
403687f
Compare
403687f
to
10b59c1
Compare
@wilkinsona, @snicoll & Spring Boot team- This PR to add support for Apache Geode has been updated with the latest release of Spring Data Geode If you have questions, let me know. Thanks! |
10b59c1
to
5366e0f
Compare
As with #6952 we should wait for a non incubating release I think. |
As discussed, this code is going to be delivered in a separate module outside of Spring Boot. |
@philwebb, @wilkinsona - I heard the message loud and clear on the SD Geode Caching and Repository support, but why does the Spring Boot "starter" for Spring Data Geode need to live outside of Spring Boot? If that is the case, then why do we include the spring-boot-starter-data-gemfire in Spring Boot? What's the difference? |
The rule that we apply is that we only provide starters and samples for something if we also have auto-configuration for it. We've rejected other requests for starters and samples based on this rule and we need to apply it consistently. The GemFire starter is an exception to that rule for reasons that escape me. If we were doing things again, we wouldn't have that starter either. |
Closes gh-5438.