[JBoss JIRA] (ISPN-3718) Select which protobuf fields to index
by Adrian Nistor (JIRA)
[ https://issues.jboss.org/browse/ISPN-3718?page=com.atlassian.jira.plugin.... ]
Adrian Nistor commented on ISPN-3718:
-------------------------------------
Yes, we need those options to bear more complex values than just a boolean. A little known aspect of protobuf options is they are very rich and can represent tuples and arrays also, even arrays of tuples or tuples of arrays. You get the idea :) So it would be perfectly doable even to completely emulate the whole HS indexing annotations.
Here's a valid protobuf example of a field being annotated with an option:
{code}
message User {
//...
required string name = 3 [
(infinispan.Field) = {
indexed : true,
analyzed : false,
some_array : [111, 222, 333], /* yes! even arrays of values */
}
];
//...
}
{code}
The stuff between [ ] that follows a field declaration is the list of options attached to the field - its metadata/annotations. There can be multiple options, separated with comma. Unfortunately the protobuf syntax is not very nice and requires you to surround the option name in (). The value of the option is either a scalar value or a tuple surrounded by { }.
The structure of the option has to be defined in advance (not shown here), so its usage can be validated by the protobuf schema compiler. Options values can have defaults, so the verbosity can be drastically reduced.
So, would you consider this as a valid approach to define our indexing metadata?
> Select which protobuf fields to index
> -------------------------------------
>
> Key: ISPN-3718
> URL: https://issues.jboss.org/browse/ISPN-3718
> Project: Infinispan
> Issue Type: Feature Request
> Components: Embedded Querying
> Reporter: Adrian Nistor
> Assignee: Adrian Nistor
>
> Currently we index all fields. An interesting idea is to use a custom protobuf Option (see 'Custom Options' section here https://developers.google.com/protocol-buffers/docs/proto) to indicate which message types and specifically which fields should be indexed, similar to Hibernate Search annotations.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 6 months
[JBoss JIRA] (ISPN-3942) HotRod client keep trying recover a connection to a cluster member after shutdown
by Pedro Ruivo (JIRA)
[ https://issues.jboss.org/browse/ISPN-3942?page=com.atlassian.jira.plugin.... ]
Pedro Ruivo commented on ISPN-3942:
-----------------------------------
[~dan.berindei], Radim has a point. Note that this is another problem...
In the client, the first attempt is performed in the owner (or primary owner, not sure) of the key, let's say server A. If A is down, the next attempt will use the RequestBalancingStrategy. However, this strategy can return the same server again. Why? because we didn't contact any live server so we don't have an updated list.
Eventually, it will hit a live server and will get the updated list. In the meanwhile, the fix will avoid an extra wait.
> HotRod client keep trying recover a connection to a cluster member after shutdown
> ---------------------------------------------------------------------------------
>
> Key: ISPN-3942
> URL: https://issues.jboss.org/browse/ISPN-3942
> Project: Infinispan
> Issue Type: Bug
> Components: Remote Protocols
> Affects Versions: 6.0.1.Final, 7.0.0.Alpha1
> Environment: Infinispan server with HotRod client in server-client mode and replicated caches.
> Reporter: Wolf-Dieter Fink
> Assignee: Pedro Ruivo
> Priority: Critical
> Labels: clustered, hotrod, hotrod-java-client
> Fix For: 7.0.0.Alpha1, 7.0.0.Final
>
> Attachments: hotrod-client.log
>
>
> If a HotRod client is connected to a server cluster and one of the servers do a correct shutdown, the client keep try to reconnect the server after the cluster view has changed.
> There is only a replicated cache configured.
> From the server-logfile the new cluster view is established
> 16:00:22,290 INFO [org.infinispan.remoting.transport.jgroups.JGroupsTransport] (Incoming-3,shared=udp) ISPN000094: Received new cluster view: [node1/clustered|2] (1) [node1/clustered]
> There is no failure from the application perspective, but there there is always a retry if the RoundRobin return the unavailable server.
> This might end in a performance or failure issue if there is a larger cluster and a part going out of work for some reason.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years, 7 months