Client listener failovers when connectivity drops (ISPN-7031)
by Galder Zamarreño
Hi all,
Re: https://issues.jboss.org/browse/ISPN-7031
A potential solution here would be for the client listener, if it receives a "Connection reset by peer" IOException, to try to fail over all listeners connected to that node.
The first tricky aspect is how to make sure that if you have N connected listeners, only one of them fails over the connected listeners, and hence avoid all connected listeners trying to failover all of them. A simple solution here would be for each listener to try to failover itself.
Even more tricky is how to deal with the situation when failover fails. E.g. imagine you have only one server and connectivity drops. The connect is reset and the failover fails since there's no other servers. What does the listener do about it? One thing it could do is failover itself periodically until it works, but this is not ideal. Another option would be to avoid any failover until the client sends an operation and gets a connection. The latter option has a bigger chance of missing events but we have the state receiving option for those who must receive state.
Any other ideas?
Cheers,
--
Galder Zamarreño
Infinispan, Red Hat
9 years
Testing a Hot Rod client app, with smart routing disabled?
by Sanne Grinovero
Hi all,
I'm testing a concurrent update protocol based on Hot Rod client's
support for versioned entries.
I would love to be able to write a test having multiple client
endpoints, each connecting to a specific server. Of course HR's "smart
routing" prevents me from controlling this explicitly.. is there a way
to control it?
For example having servers {A, B} connected in cluster I'd like to
create two clients {A', B}', each one connected exclusively to one of
them and not aware of the other server node. (A <-> A', B <-> B').
Thanks,
Sanne
9 years
Early Access build 136 for JDK 9 & JDK 9 with Project Jigsaw are available on java.net
by Rory O'Donnell
Hi Galder,
Early Access b136 <https://jdk9.java.net/download/> for JDK 9 is
available on java.net, summary of changes are listed here
<http://www.java.net/download/java/jdk9/changes/jdk-9+136.html>.
Early Access b136 <https://jdk9.java.net/jigsaw/> (#5506) for JDK 9 with
Project Jigsaw is available on java.net, summary of changes are listed
here
<http://www.java.net/download/java/jigsaw/archive/136/binaries/jdk-9+136.html>.
There have been a number of fixes to bugs reported by Open Source
projects since the last availability email :
* 8165723 - b136 - core-libs JarFile::isMultiRelease() method returns
false when it should return true
* 8165116 - b136 - xml redirect function is not allowed even with
enableExtensionFunctions
NOTE:- Build 135 included a fix for JDK-8161016 which *has introduced a
behavioral change to HttpURLConnection, more info:*
The behavior of HttpURLConnection when using a ProxySelector has been
modified with this JDK release. Currently, HttpURLConnection.connect()
call would fallback to a DIRECT connection attempt if the configured
proxy/proxies failed to make a connection. This release introduces a
change whereby no DIRECT connection will be attempted in such a
scenario. Instead, the HttpURLConnection.connect() method will fail and
throw an IOException which occurred from the last proxy tested. This
behavior now matches with the HTTP connections made by popular web
browsers. But this change will bring compatibility issues for the
applications expecting a DIRECT connection when a proxy server is down
or when wrong proxies are provided.
*
JDK 9 Outreach Survey*
In order to encourage and receive additional feedback from developers
testing their applications with JDK 9,
the OpenJDK Quality Outreach effort has put together a very brief survey
about your experiences with JDK 9 so far.
It is available at***https://www.surveymonkey.de/r/JDK9EA*
We would love to hear feedback from you!
Rgds,Rory
--
Rgds,Rory O'Donnell
Quality Engineering Manager
Oracle EMEA , Dublin, Ireland
9 years
Hot Rod clients & payload size estimates
by Sanne Grinovero
Hi all,
I just noticed that the payload size estimates are ignored by the Hot
Rod client when using the ProtoStreamMarshaller.
That sounds good, as the estimating strategies are typically based on
dumb statistics, while in case we're using protobuf-encoded data we
have a schema which implies the ProtoStreamMarshaller could know
better.. however this marshaller doesn't seem to try optimise the
buffer size at all.
Some types in protobuf will still need variable lenght encoding for
obvious reasons (i.e. encode a String type), but some message types
could have a pre-computed constant size.
Even for those messages which include some variable length fields we
could define at least:
- a minimum size
- try guess a good a reasonable default size depending on the type
and number of fields
- a per- message type sampler?
With the OGM Grid Dialect for Hot Rod I'm sending several different
kinds of objects over the wire, which implies wildfly different buffer
sizes. Would be nice to be able to control this better?
Thanks,
Sanne
9 years
Multi tenancy support for Infinispan
by Sebastian Laskawiec
Dear Community,
Please have a look at the design of Multi tenancy support for Infinispan
[1]. I would be more than happy to get some feedback from you.
Highlights:
- The implementation will be based on a Router (which will be built
based on Netty)
- Multiple Hot Rod and REST servers will be attached to the router which
in turn will be attached to the endpoint
- The router will operate on a binary protocol when using Hot Rod
clients and path-based routing when using REST
- Memcached will be out of scope
- The router will support SSL+SNI
Thanks
Sebastian
[1]
https://github.com/infinispan/infinispan/wiki/Multi-tenancy-for-Hotrod-Se...
9 years
Combining AS modules
by Tristan Tarrant
Hi all,
we currently distribute two separate packages for WildFly modules:
embedded and client. Unfortunately we only list the former on the
download page.
My proposal is to combine the two packages into one. WDYT ?
Tristan
--
Tristan Tarrant
Infinispan Lead
JBoss, a division of Red Hat
9 years