[infinispan-dev] Weekly IRC Meeting logs 2018-04-16

2018-04-16 Thread Tristan Tarrant
Get them here:

http://transcripts.jboss.org/meeting/irc.freenode.org/infinispan/2018/infinispan.2018-04-16-14.00.log.html

Tristan
___
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev


Re: [infinispan-dev] WFLYTX0013 in the Infinispan Openshift Template

2018-04-16 Thread Sebastian Laskawiec
Adding +WildFly Dev  to the loop

Thanks for the explanation Rado.

TL;DR: A while ago Sanne pointed out that we do not set `node-identifier`
in transaction subsystem by default. The default value for the
`node-identifier` attribute it `1`. Not setting this attribute might cause
problems in transaction recovery. Perhaps we could follow Rado's idea and
set it to node name by default?

Some more comments inlined.

Thanks,
Sebastian

On Fri, Apr 13, 2018 at 7:07 PM Radoslav Husar  wrote:

> Hi Sebastian,
>
> On Wed, Apr 11, 2018 at 2:31 PM, Sebastian Laskawiec
>  wrote:
> > Hey Rado, Paul,
> >
> > I started looking into this issue and it turned out that WF subsystem
> > template doesn't provide `node-identifier` attribute [1].
>
> I assume you mean that the default WildFly server profiles do not
> explicitly define the attribute. Right – thus the value defaults in
> the model to "1"
>
> https://github.com/wildfly/wildfly/blob/master/transactions/src/main/java/org/jboss/as/txn/subsystem/TransactionSubsystemRootResourceDefinition.java#L97
> which sole intention seems to be to log a warning on boot if the value
> is unchanged.
> Why they decided on a constant that will be inherently not unique as
> opposed to defaulting to the node name (which we already require to be
> unique) as clustering node name or undertow instance-id does, is
> unclear to me.
> Some context is on https://issues.jboss.org/browse/WFLY-1119.
>

In OpenShift environment we could set it to `hostname`. This is guaranteed
to be unique in whole OpenShift cluster.


>
> > I'm not sure if you guys are the right people to ask, but is it safe to
> > leave it set to default? Or shall I override our Infinispan templates and
> > add this parameter (as I mentioned before, in OpenShift this I wanted to
> set
> > it as Pod name trimmed to the last 23 chars since this is the limit).
>
> It is not safe to leave it set to "1" as that results in inconsistent
> processing of transaction recovery.
> IIUC we already set it to the node name for both EAP and JDG
>
> https://github.com/jboss-openshift/cct_module/blob/master/os-eap70-openshift/added/standalone-openshift.xml#L411
>
> https://github.com/jboss-openshift/cct_module/blob/master/os-jdg7-conffiles/added/clustered-openshift.xml#L282
> which in turn defaults to the pod name – so which profiles are we
> talking about here?
>

Granted, we set it by default in CCT Modules. However in Infinispan we just
grab provided transaction subsystem when rendering full configuration from
featurepacks:
https://github.com/infinispan/infinispan/blob/master/server/integration/feature-pack/src/main/resources/configuration/standalone/subsystems-cloud.xml#L19

The default configuration XML doesn't contain the `node-identifier`
attribute. I can add it manually in the cloud.xml but I believe the right
approach is to modify the transaction subsystem.


> Rado
>
> > Thanks,
> > Seb
> >
> > [1] usually set to node-identifier="${jboss.node.name}"
> >
> >
> > On Mon, Apr 9, 2018 at 10:39 AM Sanne Grinovero 
> > wrote:
> >>
> >> On 9 April 2018 at 09:26, Sebastian Laskawiec 
> wrote:
> >> > Thanks for looking into it Sanne. Of course, we should add it (it can
> be
> >> > set
> >> > to the same name as hostname since those are unique in Kubernetes).
> >> >
> >> > Created https://issues.jboss.org/browse/ISPN-9051 for it.
> >> >
> >> > Thanks again!
> >> > Seb
> >>
> >> Thanks Sebastian!
> >>
> >> >
> >> > On Fri, Apr 6, 2018 at 8:53 PM Sanne Grinovero 
> >> > wrote:
> >> >>
> >> >> Hi all,
> >> >>
> >> >> I've started to use the Infinispan Openshift Template and was
> browsing
> >> >> through the errors and warnings this produces.
> >> >>
> >> >> In particular I noticed "WFLYTX0013: Node identifier property is set
> >> >> to the default value. Please make sure it is unique." being produced
> >> >> by the transaction system.
> >> >>
> >> >> The node id is usually not needed for developer's convenience and
> >> >> assuming there's a single node in "dev mode", yet clearly the
> >> >> Infinispan template is meant to work with multiple nodes running so
> >> >> this warning seems concerning.
> >> >>
> >> >> I'm not sure what the impact is on the transaction manager so I asked
> >> >> on the Narayana forums; Tom pointed me to some thourough design
> >> >> documents and also suggested the EAP image does set the node
> >> >> identifier:
> >> >>  - https://developer.jboss.org/message/981702#981702
> >> >>
> >> >> WDYT? we probably want the Infinispan template to set this as well,
> or
> >> >> silence the warning?
> >> >>
> >> >> Thanks,
> >> >> Sanne
> >> >> ___
> >> >> infinispan-dev mailing list
> >> >> infinispan-dev@lists.jboss.org
> >> >> https://lists.jboss.org/mailman/listinfo/infinispan-dev
> >> >
> >> >
> >> > ___
> >> > 

Re: [infinispan-dev] Passing client listener parameters programmatically

2018-04-16 Thread Adrian Nistor

+1 for both points.

And I absolutely have to add that I never liked the annotation based 
listeners, both the embedded and the remote ones.


On 04/16/2018 10:48 AM, Dan Berindei wrote:
+1 to not require annotations, but -100 to ignore the annotations if 
present, we should throw an exception instead.


Dan

On Fri, Apr 13, 2018 at 9:57 PM, William Burns > wrote:


I personally have never been a fan of the whole annotation thing
to configure your listener, unfortunately it just has been this way.

If you are just proposing to adding a new addClientListener method
that takes those arguments, I don't have a problem with it.

void addClientListener(Object listener, String filterFactoryName,
Object[] filterFactoryParams, String converterFactoryName,
Object[] converterFactoryParams);

I would think we would use these values only and ignore any
defined on the annotation.


Also similar to this but I have some API ideas I would love to
explore for ISPN 10 surrounding events and the consumption of them.

 - Will

On Fri, Apr 13, 2018 at 11:12 AM Galder Zamarreno
> wrote:

Hi,

We're working with the OpenWhisk team to create a generic Feed
that allows Infinispan remote events to be exposed in an
OpenWhisk way.

So, you'd pass in Hot Rod endpoint information, name of cache
and other details and you'd establish a feed of data from that
cache for create/updated/removed data.

However, making this generic is tricky when you want to pass
in filter/converter factory names since these are defined at
the annotation level.

Ideally we should have a way to pass in filter/converter
factory names programmatically. To avoid limiting ourselves,
you could potentially pass in an instance of the annotation in
an overloaded method or as optional parameter [1].

Thoughts?

Cheers,
Galder

[1]

https://stackoverflow.com/questions/16299717/how-to-create-an-instance-of-an-annotation


___
infinispan-dev mailing list
infinispan-dev@lists.jboss.org

https://lists.jboss.org/mailman/listinfo/infinispan-dev



___
infinispan-dev mailing list
infinispan-dev@lists.jboss.org 
https://lists.jboss.org/mailman/listinfo/infinispan-dev





___
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev



___
infinispan-dev mailing list
infinispan-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/infinispan-dev