vert-x3 / issues

Apache License 2.0
37 stars 7 forks source link

Vert.x 4 Roadmap #566

Open vietj opened 3 years ago

vietj commented 3 years ago

Other stuff

4.x, x > 3

4.4

4.3

Committed

Best effort

4.2

Expected

Others

angelsanzn commented 3 years ago

Could you provide a bit more info about the scope of the Oracle client item?

vietj commented 3 years ago

we are planning this for 4.2

On Tue, Jul 6, 2021 at 1:36 AM Ángel Sanz @.***> wrote:

Could you provide a bit more info about the scope of the Oracle client item?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/vert-x3/issues/issues/566#issuecomment-874369186, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABXDCQ5I6XWPFMKHMOKR2TTWI6W3ANCNFSM4UQ7376Q .

angelsanzn commented 3 years ago

Hi Julien, thanks for the prompt reply. My question was about the scope of the feature. Is it a full Oracle DB client which does not use JDBC?

vietj commented 3 years ago

this is actually a wrapper of Oracle JDBC Reactive Extensions (https://docs.oracle.com/en/database/oracle/oracle-database/21/jjdbc/jdbc-reactive-extensions.html#GUID-1C40C43B-3823-4848-8B5A-D2F97A82F79B)

it is not possible to perform or implement wire level access for Oracle for legal or technical reasons.

On Tue, Jul 6, 2021 at 1:20 PM Ángel Sanz @.***> wrote:

Hi Julien, thanks for the prompt reply. My question was about the scope of the feature. Is it a full Oracle DB client which does not use JDBC?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe.

geoand commented 2 years ago

@vietj what would be the best place to add PcapWriteHandler to the pipeline? Asking because when I added it in the same place as the LoggingHandler, things did not work becayse PcapWriteHandler needs to implement the channelActive method.

vietj commented 2 years ago

it is not clear what you mean ?

geoand commented 2 years ago

I am wondering what the proper place in Vertx is for adding the PcapWriteHandler to the Netty processing pipeline is. If I just add it in the same places where LoggingHandler is being setup, then PcapWriteHandler results in NPEs because its channelActive method has not been called (I presume because it was added too late).

vietj commented 2 years ago

that sounds weird, do you have a stack trace ?

geoand commented 2 years ago

I'll have to build everything again and capture it. I'll to do that later on today or tomorrow.

vietj commented 2 years ago

do you have a branch you can share too ?

geoand commented 2 years ago

https://github.com/geoand/vert.x/tree/4.2.2-custom is what I had done.

But in order to get that working, I needed to also patch Netty and implement handlerAdded in PcapWriteHandler to simply do what channelActive does

vietj commented 2 years ago

so the issue is that the handler is added too late and some handlers like logging handler do support it, but not the pcap write handler, is that right ?

geoand commented 2 years ago

Exactly, that is how I understood the issue

vietj commented 2 years ago

did you try subclassing the handler and have the handlerAdded call the channelActive method as workaround ?

geoand commented 2 years ago

I didn't, but I assume that could work.

vietj commented 2 years ago

just to see if that works

vietj commented 2 years ago

nevertheless it would be good to have this handler in netty lazily handle things

geoand commented 2 years ago

Yup, for sure. I'll take another look tomorrow

vietj commented 2 years ago

also this handler is final, so it could work with a wrapper I think

geoand commented 2 years ago

I have asked on https://github.com/netty/netty/issues/10385 to see if it's safe to implement handlerAdeed as well. I asked because I was seeing some weird behavior which I am not sure is due to me doing something wrong, or handlerAdded being incompatible with PcapWriteHandler

geoand commented 2 years ago

handlerAdeed seems to be safe, but I am having problems writing the client and server capture to the same file so I've asked again on the netty issue.

vietj commented 2 years ago

can the file path be specified ?

vietj commented 2 years ago

I think the file name should be specified when creating the client or the server with something like a pattern in options ?

geoand commented 2 years ago

Yes absolutely.

In what I have now, if the server and client files are different, the capture works properly.

But I really wanted to have the capability to use the same file for all capturing. We'll see if it can happen or not.

vietj commented 2 years ago

I think can we use something like a Function<SocketAddress, AsyncFile> on NetClient, NetServer etc... that would be configured with options by default.

vietj commented 2 years ago

so default would be to use options, but user can specify a function for ultimate flexibility

geoand commented 2 years ago

👍🏼

I'll wait and see what the Netty folks say about using a single file and then come back to this.

geoand commented 2 years ago

I found a few more cycles to take another look at this and actually it seems like the only issue is to properly manage writing the data from multiple sources into the output file.

Now I just need to think of what the proper way of doing that would be

geoand commented 2 years ago

https://github.com/eclipse-vertx/vert.x/pull/4260 is a first draft of what I have in mind

T-baby commented 2 years ago

I think the http 3 implementation should be prioritized over grpc transportability, that http3 has become the standard now.

hakarim740-com-ra commented 9 months ago

QUIC support is a must!

raviteja5678 commented 8 months ago

@vietj May I know if io.vertx.core.http.HttpServerRequest can be updated in next release to remove the deprecated class javax.security.cert.X509Certificate for Java 17 compatibility ?
Thanks

yeikel commented 7 months ago

@vietj May I know if io.vertx.core.http.HttpServerRequest can be updated in next release to remove the deprecated class javax.security.cert.X509Certificate for Java 17 compatibility ? Thanks

In what way does this block Java 17 for you?