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 a MySQL JDBC driver extension #4067
Conversation
} | ||
|
||
@BuildStep | ||
void registerExceptionsForReflection(BuildProducer<ReflectiveClassBuildItem> reflectiveClass) { |
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.
I pushed an upstream PR mysql/mysql-connector-j#43 to reduce some of these. The PR has been moved in the internal queue mysql/mysql-connector-j#43 (comment), hope to see it merged.
42b5098
to
dd43f63
Compare
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.
Hi @machi1990 that's awesome progress, thanks a lot!
I made some minor remarks in various comments - please have a look.
Most importantly, I tried to run it in native but couldn't correctly connect to the database. It's a bit late now so I didn't investigate yet - I will continue with that tomorrow, but could you check in the meantime that the integration test worked fine for you even in native mode?
Thanks!
This seems to be the main problem:
Also, less cricital but I had to run the mysql docker image manually as the wait conditions for |
dd43f63
to
4ad6b85
Compare
@Sanne thanks for the review. I have taken into account your feedback.
I was able to run the integration test natively with the timezone property set on my connection url that's why I missed this error. I'll take a look later today. Thanks for spotting this.
Yeah, I had intermittent problems too and decided to run the docker image manually too (on a separate terminal) and do my tests. |
4ad6b85
to
a936d5f
Compare
a936d5f
to
6516bdd
Compare
@Sanne Seems like this resource To solve this, I used substitution to read the resource during build time and substitute the method that required it after trying producing a |
How do they load the properties? I would have expected a |
With this piece of code
the file |
I guess there's a little performance benefit in the approach you took as you pre-parse the stream. If you want to keep the current approach, maybe it;s worth doing one more step and also run the iteration on |
+1. I'll do this. |
hi @machi1990 , could you also rebase and test it on the rebased version please? I'm afraid the tests need some additional work after recent merges to master, as the servlet API is no longer available by default to the JPAFunctionalityTestEndpoint |
If possible, I would avoid fiddling with substitutions if we can get
SubstrateResourceBuildItem to work.
I don't think the potential perf benefit is worth the maintenance burden.
How did you register the resource? Maybe it's about the path not being
right?
…On Thu, Sep 19, 2019 at 3:12 PM Sanne Grinovero ***@***.***> wrote:
hi @machi1990 <https://github.com/machi1990> , could you also rebase and
test it on the rebased version please?
I'm afraid the tests need some additional work after recent merges to
master, as the servlet API is no longer available by default to the
JPAFunctionalityTestEndpoint
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#4067?email_source=notifications&email_token=AAJYOBILSDWISJS72LRC7DTQKN3CHA5CNFSM4IXTGXUKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7DNGKA#issuecomment-533123880>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAJYOBJDQZC2XVIHEZPUCEDQKN3CHANCNFSM4IXTGXUA>
.
|
I tried producing a |
6516bdd
to
965b47c
Compare
I don't think the initial You can add |
965b47c
to
8282002
Compare
01743ce
to
1951e36
Compare
Hmm this test failure https://dev.azure.com/quarkus-ci/quarkus/_build/results?buildId=8111&view=logs
seems unrelated. I forced pushed to re-launch the build. |
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.
Hi @machi1990 ,
Very nice work as usual. I added a few questions and a few suggestions. Could you have a look?
As for CI, I don't know if we could support MySQL testing at least for JVM Linux. It would be simple if we don't already test MariaDB :).
As for the suggestion for native and initializing the class at runtime, I think it's worth a try. It really looks like a class that should be initialized at runtime and it should solve the threading issue. Or maybe not if we end up hitting a GraalVM bug but, in any case, it seems like the direction we should follow.
Feel free to ping me on Zulip if you want to chat about it!
azure-pipelines.yml
Outdated
modules: | ||
- jpa-mysql | ||
name: jpa_mysql | ||
mysql: true |
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.
I think I would have made it part of the job below, which has only 2 tasks right now (jpa and jpa-postgresql).
There wouldn't be any port conflict so I think we are relatively safe.
.../main/java/io/quarkus/jdbc/mysql/runtime/graal/AbandonedConnectionCleanupThread_disable.java
Show resolved
Hide resolved
1951e36
to
40d0a6e
Compare
40d0a6e
to
e2697d0
Compare
Done.
Thanks Guillaume for your availability yesterday. Additional comments added for the |
@Sanne I think we're all good now. As you requested changes, I let you check them and merge if you think it's OK. Thanks @machi1990 , great work. |
Tested it all once more locally. Awesome, great job! |
@gsmet I see it's marked for milestone 0.24 rather than 0.23. Does it mean I should hold to merge? Or feel free to merge.. thanks! |
master is 0.24.0 right now, we have a branch for 0.23 release. Things will be easier tomorrow hopefully. Merging! |
fixes #2323
/ cc @Sanne @gsmet