I believe Artemis ships Eclipse preferences under the "etc" directory.  I don't 
use Eclipse so I'm not 100% certain.


Justin

----- Original Message -----
From: "Lachezar Dobrev" <l.dob...@gmail.com>
To: users@activemq.apache.org
Sent: Tuesday, January 26, 2016 9:47:20 AM
Subject: Re: Cluster/Federated Artemis problems

  Thank you. I'll try to remember this.
  BTW. Is there any code style settings for ActiveMQ/Artemis for developers
using Eclipse? The 3 space indentation got me broad-side…

2016-01-26 17:17 GMT+02:00 Clebert Suconic <clebert.suco...@gmail.com>:

> just to let you know.. to build with checkstyle activated, you have to
> build with the dev profile:
>
> mvn -Pdev install (etc).
>
>
>
> On Tue, Jan 26, 2016 at 6:14 AM, Lachezar Dobrev <l.dob...@gmail.com>
> wrote:
> >   Well, not that you have explained this it is really "Obvious".
> >   I'm using Artemis as JMS client+server, and internals are a bit obscure
> > for me. I'll have to wrap my head around the fact, that there is more
> than
> > JMS to that.
> >
> >   Package size issue:
> >   https://issues.apache.org/jira/browse/ARTEMIS-362
> >
> >   Git Pull-Request with fix and test case:
> >   https://github.com/apache/activemq-artemis/pull/348
> >
> >   Jenkins does not like me however, The build passed, but the pull
> request
> > is marked erroneous:
> >   https://builds.apache.org/job/ActiveMQ-Artemis-PR-Build/965/
> >
> >   Please advise.
> >
> >   Lachezar
> >
> > 2016-01-25 18:59 GMT+02:00 Justin Bertram <jbert...@apache.com>:
> >
> >> The documentation is pretty clear (IMO) about the purpose of the
> "address"
> >> property of the cluster connection.  There's nothing "magic" about it.
> In
> >> short, "Each cluster connection only applies to addresses that match the
> >> specified address field. An address is matched on the cluster connection
> >> when it begins with the string specified in this field."  The
> documentation
> >> itself [1] includes a more thorough explanation (including a few simple
> >> examples), but I didn't want to paste the whole thing here when you can
> >> simply go there and read it yourself.
> >>
> >> In your particular case, the value of "jms" works for you because you're
> >> ostensibly using a JMS topic and all addresses for JMS topics are queues
> >> are prefixed with "jms.".  You can read more about how JMS maps to the
> >> Artemis "core" API here [2].
> >>
> >> If you could open a JIRA [3] regarding the datagram issue you observed
> and
> >> outline a way I can observe that myself that would go a long way in
> making
> >> sure the issue is resolved.  Thanks!
> >>
> >>
> >> Justin
> >>
> >> [1] http://activemq.apache.org/artemis/docs/1.1.0/clusters.html (see
> the
> >> "Configuring Cluster Connections" section)
> >> [2] http://activemq.apache.org/artemis/docs/1.1.0/jms-core-mapping.html
> >> [3] https://issues.apache.org/jira/browse/ARTEMIS
> >>
> >> ----- Original Message -----
> >> From: "Lachezar Dobrev" <l.dob...@gmail.com>
> >> To: users@activemq.apache.org
> >> Sent: Monday, January 25, 2016 10:35:36 AM
> >> Subject: Re: Cluster/Federated Artemis problems
> >>
> >>   Your help is appreciated, and effective.
> >>
> >>   I have misunderstood the configuration elements. I was not clear that
> the
> >> acceptor and the connector describe the same end-point. After fixing
> that I
> >> saw a few logging messages about bridges being built.
> >>   The configuration help that you pointed me to showed an inexplicable
> (to
> >> me) address for the cluster "jms".
> >>   After putting this *magic* address the cluster is now up and running.
> >>
> >>   Now I'm trying to implement the fixed-peer cluster. I'm having trouble
> >> with that, but the progress is good.
> >>
> >>   I still believe sending 4K datagrams is a bug though.
> >>
> >>
> >> 2016-01-25 17:02 GMT+02:00 Justin Bertram <jbert...@apache.com>:
> >>
> >> > I imagine this is just a configuration issue somewhere.  We ship lots
> of
> >> > examples which use clustering (although not embedded), and the
> test-suite
> >> > is full of embedded clustering tests.  As far as I know all these are
> >> > working properly.
> >> >
> >> > When you say the NettyAcceptor and NettyConnector use a
> >> "random-high-port"
> >> > are they both using the same port?  If not, that would be a problem.
> >> >
> >> > You can configure a cluster "statically" (i.e. without UDP discovery).
> >> > Check out the "clustered-static-discovery" example and also see the
> >> > documentation [1].
> >> >
> >> > I'd like to understand a bit more about how/why your current
> >> configuration
> >> > is failing.  Could you provide a reproducible test-case?
> >> >
> >> > Lastly, I think you'd be best served by being on Artemis 1.2 which we
> >> > recently released.
> >> >
> >> >
> >> > Justin
> >> >
> >> > [1] http://activemq.apache.org/artemis/docs/1.1.0/clusters.html (see
> the
> >> > "Discovery using static Connectors" section)
> >> >
> >> > ----- Original Message -----
> >> > From: "Lachezar Dobrev" <l.dob...@gmail.com>
> >> > To: users@activemq.apache.org
> >> > Sent: Monday, January 25, 2016 5:22:16 AM
> >> > Subject: Cluster/Federated Artemis problems
> >> >
> >> >   Hello group members.
> >> >
> >> >   I'm having problems with clustering/federating an application's
> Artemis
> >> > embedded server.
> >> >   The application is a .WAR with Springframework 4 and Embedded
> Artemis
> >> > 1.1.0 (from Spring).
> >> >
> >> >   Multiple instances of the application are expected to be deployed in
> >> > multiple spots. The Artemis component is expected to cluster a JMS
> Topic
> >> > between nodes so that if any node sends a message on the topic all
> >> > listeners on all nodes should receive the message.
> >> >   With a few problems I was able to make the Embedded Artemis Server
> >> handle
> >> > topic in a single deployment.
> >> >
> >> >   Every application connects to the Embedded Artemis using InVM
> >> connector.
> >> >
> >> >   Trying to cluster instances does not work!
> >> >
> >> >   My configuration contains:
> >> >   - A NettyAcceptor  on (host):(random-high-port)
> >> >   - A NettyConnector on (host):(random-high-port) named
> >> "cluster-connector"
> >> >   - A BroadcastGroupConfiguration named "cluster-broadcast"
> >> >     = UDPBroadcastEndpointFactory
> >> >       * group-host 239.1.2.3
> >> >       * group-port 12345
> >> >       * local-host (host)
> >> >       * local-port (random-high-port)
> >> >     = ConnectorInfos
> >> >       * "cluster-connector"
> >> >   - DiscoveryGroupConfiguration named "cluster-discovery"
> >> >     = UDPBroadcastEndpointFactory
> >> >       * group-host 239.1.2.3
> >> >       * group-port 12345
> >> >       * local-host (host)
> >> >       * local-port (random-high-port)
> >> >   - ClusterConnectionConfiguration named "cluster"
> >> >     = address: "cluster-address"
> >> >     = connectorName: "cluster-connector"
> >> >     = discoveryGroupName: "cluster-discovery"
> >> >
> >> >   The configuration is done in Java (not XML) via
> >> > o.a.a.a.core.config.Configuration
> >> >
> >> >   As already noted this does not work, even worse when a second
> >> application
> >> > instance is brought up the VMs on both instances hang on attempt to
> >> > shut-down.
> >> >
> >> >   I noticed a possible problem: the network monitor showed, that the
> >> > applications keep open UDP socket that has a Send-Q that continuously
> >> grows
> >> > until about 200K pending, and then it seizes. Further using a tcpdump
> I
> >> > noticed, that the packages being sent by Artemis look invalid, as
> they're
> >> > really BIG: 4096 bytes broadcast datagrams!
> >> >
> >> >   Looking further I found out a possible BUG in
> >> > …cluster.impl.BroadcastGroupImpl in the broadcastConnectors() method.
> It
> >> > seems the method works incorrectly with the ActiveMQBuffer and the
> >> > underlying NIO ByteBuffer, and instead of sending a package with the
> >> needed
> >> > data it sends the whole Buffer of nearly 4K zeros and only a few
> hundred
> >> > bytes of actual payload. A package of 4K is next to impossible to send
> >> as a
> >> > datagram packet.
> >> >
> >> >   I've tried to perform a hot-fix for this issue and succeeded (the
> >> > datagrams fell to about 250 bytes), datagrams are sent and received,
> but
> >> > the cluster still does not form.
> >> >
> >> >   Please advise!
> >> >   Is there a way to create a cluster without using discovery?
> Assuming I
> >> > know every instance of the application at initialisation time is it
> >> > possible to create a cluster of pre-defined nodes?
> >> >
> >> >   Hope I get help.
> >> >
> >>
>
>
>
> --
> Clebert Suconic
>

Reply via email to