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

Is it necessary to re-try analyzing a service? #13

Open
bakhtos opened this issue Jul 9, 2024 · 1 comment
Open

Is it necessary to re-try analyzing a service? #13

bakhtos opened this issue Jul 9, 2024 · 1 comment

Comments

@bakhtos
Copy link
Contributor

bakhtos commented Jul 9, 2024

Currently, the code works so that if a certain microservice fails to be processed, its try-count is increased by 1.
The loop iterates over all unprocessed services until either all are exhausted or all the leftovers have a try-count over 3.

Is this really necessary? Could the analysis first fail and then succeed during the same run?

This arrangement complicates the Native Image logic and data structures.

I can remove this while working on #9

@bakhtos
Copy link
Contributor Author

bakhtos commented Jul 22, 2024

After studying the code, I noticed that several attempts are necessary because of classpath:

this.classpath = microservicePath + "/target/BOOT-INF/classes" + ":" + microservicePath + "/target/BOOT-INF/lib/*";
} else {
// retry without looping considering libs
this.classpath = microservicePath + "/target/BOOT-INF/classes";

But still, this logic can be implemented fully inside NativeImageRunner in case the first attempt fails, i.e. the service should be re-tried with the new classpath immediately instead of waiting in the loop for another turn.

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

No branches or pull requests

1 participant