-
Notifications
You must be signed in to change notification settings - Fork 583
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
CTR : not working in SNAPSHOT-3.0.0 #6071
Comments
Hello, If you were to create the following CTR definition, |
I will try to do what you asked asap. But in the mean time, I can confirm: we deployed a CTR Boot 3 version with a SCDF 2.11.5. Because we are so desperate to get our Boot 3 tasks/jobs running in SCDF. We really need them to be Boot 3 (and not Boot 2 anymore) because we want to use Boot 3's support for improved metrics with Micrometer and new distributed tracing support with Micrometer Tracing. So we configured the SCDF Helm chart as follows:
Using the default Boot 2 CTR in combination with SB3 jobs simply didn't work, as that CTR will write in different tables. Juggling with table prefixes didn't lead anywhere. But from what I understood from your answer, running a Boot 3 CTR on SCDF 2.11.5 won't be possible anyway, right? |
CTR 2.11.5 can launch Boot 3 applications. So don't use CTR 3.0.0 with SCDF 2.11.5. |
We didn't get CTR 2.11.5 working with Boot 3 BATCH applications. The CTR itself started reading/writing in BOOT3-prefixed tables, while it is a Boot 2 application. We received SQL exceptions about jobs not existing etc. We will check this again and give more details. |
Hey @cbonami, in your task application are you defining a custom If so try to autowire JobRepositoryFactoryBean factory = new JobRepositoryFactoryBean();
// ....
Optional.ofNullable(batchProperties)
.map(BatchProperties::getJdbc)
.map(BatchProperties.Jdbc::getTablePrefix)
.ifPresent(factory::setTablePrefix);
factory.afterPropertiesSet();
return Objects.requireNonNull(factory.getObject()); JobExplorerFactoryBean jobExplorerFactoryBean = new JobExplorerFactoryBean();
// ....
Optional.ofNullable(batchProperties)
.map(BatchProperties::getJdbc)
.map(BatchProperties.Jdbc::getTablePrefix)
.ifPresent(jobExplorerFactoryBean::setTablePrefix);
jobExplorerFactoryBean.afterPropertiesSet();
return Objects.requireNonNull(jobExplorerFactoryBean.getObject()); |
@klopfdreh , thanks for your reply. But no, we did not provide a custom JobExplorer or JobRepository. Anyway, in the meantime we could get it running via a hack. At least, we consider this a hack. We reverted everything to SCDF 2.11.5 and the standard Boot2-based CTR. We deployed our Composed Task comprising 2 subtasks: a Boot3 task, and a Boot3 batch app.
This is what put us on the wrong foot during our first experiments when we tried the CTR (Boot2) with the 2 subtasks that where Boot2 before, but that we converted to Boot3. At that time we received exactly the same error, something that we never encountered in the Boot2-world. This made us conclude that the CTR also needed to be Boot3, which apparently is not the case. So now, we circumvented this problem by adding an argument (called 'unique') when starting the CT. The argument contains a random UUID. Now we can run the CT multiple times without any problem; this is what we see in the logs:
As you can see, |
To clarify. Its CTR that is throwing the |
Description:
Our journey began when trying to have a Composed Task with a Boot 3 based applications. The CTR of the latest released version of SCDF is still based on Boot 2. So the CTR itself started reading/writing in BOOT3-prefixed tables, while it is a Boot 2 application. That's why this didn't work. We also assumed that it is even not supposed to work due to the combination of Boot2 and Boot3. A bit odd, as Boot 3 is available already for such a long time.
So we hoped that the Boot 3 version of the CTR, available in SCDF github branch 'main3' would solve our issue. We also assumed that this branch corresponds to the image on dockerhub
springcloud/spring-cloud-dataflow-composed-task-runner:3.0.0-SNAPSHOT
.We ran our composed task with SCDF version:
bitnami/spring-cloud-dataflow:2.11.5-debian-12-r3
.But then, even before sub-tasks are launched, we encounter this exception in the container running the composed task:
No clue why this happens.
Is this (still) as expected? Do we have to wait for the final 3.0.0 version of the CTR?
Release versions:
bitnami/spring-cloud-dataflow:2.11.5-debian-12-r3
springcloud/spring-cloud-dataflow-composed-task-runner:3.0.0-SNAPSHOT
The text was updated successfully, but these errors were encountered: