uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From nelson rivera <nelsonriver...@gmail.com>
Subject Re: How know when "Session is closed" after establish connections between uima-as client and ActiveMQ?
Date Mon, 17 Jul 2017 17:18:28 GMT
Sorry for the delay, I took holidays days, i will test the snapshot very now.

I can build the snapshot from
https://svn.apache.org/repos/asf/uima/uima-as/trunk?, the change is
there?

2017-07-14 9:28 GMT-04:00, Jaroslaw Cwiklik <cwiklik@apache.org>:
> Hi, please download a new snapshot
>
> https://repository.apache.org/content/repositories/snapshots/org/apache/uima/uima-as/2.9.1-SNAPSHOT/uima-as-2.9.1-20170714.131835-3.tgz
> or
> https://repository.apache.org/content/repositories/snapshots/org/apache/uima/uima-as/2.9.1-SNAPSHOT/uima-as-2.9.1-20170714.131915-4.zip
>
> You can check signatures of the above here:
> https://repository.apache.org/content/repositories/snapshots/org/apache/uima/uima-as/2.9.1-SNAPSHOT/
>
> uima-as-2.9.1-20170714.131835-3.tgz.md5
> uima-as-2.9.1-20170714.131835-3.tgz.sha1
>
> uima-as-2.9.1-20170714.131915-4.zip.md5
> uima-as-2.9.1-20170714.131915-4.zip.sha1
>
>
>
> On Tue, Jul 11, 2017 at 10:17 AM, nelson rivera <nelsonrivera12@gmail.com>
> wrote:
>
>> Thanks very much, actually i have my application in production but
>> with this bug as reported. i wait
>>
>> 2017-07-11 9:59 GMT-04:00, Jaroslaw Cwiklik <cwiklik@apache.org>:
>> > Hi, I am investigating this issue now. Are you having this problem in
>> > production or testing? The multi-client recovery is quite complicated
>> > and
>> > subject to race conditions. I need to first re-create the problem and
>> work
>> > on a solution if this in fact is a bug. From what you sent it looks
>> > like
>> > there is a bug in client recovery. This may take some time to sort out.
>> > Will let you know what I find.
>> >
>> > Jerry
>> >
>> > On Tue, Jul 11, 2017 at 9:02 AM, nelson rivera
>> > <nelsonrivera12@gmail.com
>> >
>> > wrote:
>> >
>> >> analyzing more deep the issue, I have observed that after restart the
>> >> broker, the first uima-as client that is consumed (no matter which),
>> >> has a correct behavior, the instruccion to uima-as client
>> >> "BaseUIMAAsynchronousEngine_impl.connectionOpen()" return "false" and
>> >> correctly initializes the client again and process the request.
>> >>
>> >> All next uima-as client to consume returns "true" to the instruccion
>> >> "BaseUIMAAsynchronousEngine_impl.connectionOpen()" and them get the
>> >> error:
>> >>
>> >> jul 11, 2017 8:11:52 AM
>> >> org.apache.uima.adapter.jms.client.ActiveMQMessageSender createSession
>> >> INFORMACIÓN: UIMA AS Client Failed Creating Session To Destination:
>> >> XCharsetDetector Managed By Broker: tcp://nelson-XPS-8700:61616
>> >> jul 11, 2017 8:11:52 AM
>> >> org.apache.uima.adapter.jms.client.ActiveMQMessageSender createSession
>> >> INFORMACIÓN: UIMA AS Client Connection To Destination:
>> >> XCharsetDetector Managed By Broker: tcp://nelson-XPS-8700:61616 Is
>> >> Closed
>> >> jul 11, 2017 8:11:52 AM
>> >> org.apache.uima.adapter.jms.client.ActiveMQMessageSender run
>> >> ADVERTENCIA:
>> >> org.apache.activemq.ConnectionClosedException: The connection is
>> already
>> >> closed
>> >>         at org.apache.activemq.ActiveMQConnection.checkClosed(
>> >> ActiveMQConnection.java:1459)
>> >>         at org.apache.activemq.ActiveMQConnection.checkClosedOrFailed(
>> >> ActiveMQConnection.java:1446)
>> >>         at org.apache.activemq.ActiveMQConnection.createSession(
>> >> ActiveMQConnection.java:328)
>> >>         at org.apache.uima.adapter.jms.client.ActiveMQMessageSender.
>> >> createSession(ActiveMQMessageSender.java:108)
>> >>         at org.apache.uima.adapter.jms.client.ActiveMQMessageSender.
>> >> initializeProducer(ActiveMQMessageSender.java:143)
>> >>         at org.apache.uima.adapter.jms.client.ActiveMQMessageSender.
>> >> createTextMessage(ActiveMQMessageSender.java:191)
>> >>         at org.apache.uima.adapter.jms.client.BaseMessageSender.run(
>> >> BaseMessageSender.java:330)
>> >>         at java.lang.Thread.run(Thread.java:748)
>> >>
>> >> 2017-07-11 8:50 GMT-04:00, nelson rivera <nelsonrivera12@gmail.com>:
>> >> > My client application not receive any exception in any time. I use
>> >> > both, in some uima-as client  use sendAndReceive() and in others use
>> >> > send(), each uima-as client has try-catch and none of them receive
a
>> >> > exception, the following lines are printed in the console output,but
>> >> > the uima-as client is not notified and keeps waiting.
>> >> >
>> >> > 2017-07-10 16:48 GMT-04:00, Jaroslaw Cwiklik <uimaee@gmail.com>:
>> >> >> it looks like the UIMA-AS client is setup to throw an exception
>> >> >> back
>> >> >> to
>> >> >> the
>> >> >> application in this case. Did your application receive an
>> >> >> exception?
>> >> >> Are
>> >> >> you using sendAndReceive() or send()? The UIMA-AS client rejects
>> >> requests
>> >> >> while a connection is down.
>> >> >>
>> >> >> Jerry
>> >> >>
>> >> >> On Mon, Jul 10, 2017 at 4:19 PM, Jaroslaw Cwiklik <
>> cwiklik@apache.org>
>> >> >> wrote:
>> >> >>
>> >> >>> Hmm, this is a different exception from Session closed. This
time
>> >> >>> it
>> >> >>> is
>> >> >>> a
>> >> >>> Connection is closed. Seems like a race condition. How many
>> >> >>> UIMA-AS
>> >> >>> clients
>> >> >>> do you have running in this process?
>> >> >>>
>> >> >>> Jerry
>> >> >>>
>> >> >>> On Mon, Jul 10, 2017 at 3:51 PM, nelson rivera
>> >> >>> <nelsonrivera12@gmail.com>
>> >> >>> wrote:
>> >> >>>
>> >> >>>> i just tested the snapshot build from
>> >> >>>> https://svn.apache.org/repos/asf/uima/uima-as/trunk, and
the
>> >> >>>> behavior
>> >> >>>> still are similar for many uima-as client, end in a exception,
>> >> >>>> but
>> >> >>>> now
>> >> >>>> show this stacktrace:
>> >> >>>>
>> >> >>>> org.apache.activemq.ConnectionClosedException: The connection
is
>> >> >>>> already
>> >> >>>> closed
>> >> >>>>         at org.apache.activemq.ActiveMQConnection.
>> >> checkClosed(ActiveMQC
>> >> >>>> onnection.java:1459)
>> >> >>>>         at org.apache.activemq.ActiveMQConnection.
>> >> checkClosedOrFailed(A
>> >> >>>> ctiveMQConnection.java:1446)
>> >> >>>>         at org.apache.activemq.ActiveMQConnection.
>> >> createSession(ActiveM
>> >> >>>> QConnection.java:328)
>> >> >>>>         at org.apache.uima.adapter.jms.
>> client.ActiveMQMessageSender.
>> >> cre
>> >> >>>> ateSession(ActiveMQMessageSender.java:108)
>> >> >>>>         at org.apache.uima.adapter.jms.
>> client.ActiveMQMessageSender.
>> >> ini
>> >> >>>> tializeProducer(ActiveMQMessageSender.java:143)
>> >> >>>>         at org.apache.uima.adapter.jms.
>> client.ActiveMQMessageSender.
>> >> cre
>> >> >>>> ateTextMessage(ActiveMQMessageSender.java:191)
>> >> >>>>         at org.apache.uima.adapter.jms.
>> client.BaseMessageSender.run(
>> >> Bas
>> >> >>>> eMessageSender.java:330)
>> >> >>>>         at java.lang.Thread.run(Thread.java:748)
>> >> >>>>
>> >> >>>> 2017-07-07 15:33 GMT-04:00, nelson rivera
>> >> >>>> <nelsonrivera12@gmail.com>:
>> >> >>>> > Sorry for the delay, i am building the framework from
the
>> >> >>>> > source
>> >> >>>> > at
>> >> >>>> > https://svn.apache.org/repos/asf/uima/uima-as/trunk,
when test
>> the
>> >> >>>> > issue, i will comment the result.
>> >> >>>> >
>> >> >>>> > 2017-07-06 10:04 GMT-04:00, Jaroslaw Cwiklik
>> >> >>>> > <cwiklik@apache.org
>> >:
>> >> >>>> >> Hello, the snapshot binaries (zip + tar) are here:
>> >> >>>> >>
>> >> >>>> >> https://repository.apache.org/content/repositories/snapshots
>> >> >>>> /org/apache/uima/uima-as/2.9.1-SNAPSHOT/
>> >> >>>> >>
>> >> >>>> >> Jerry
>> >> >>>> >>
>> >> >>>> >> On Thu, Jul 6, 2017 at 8:51 AM, Jaroslaw Cwiklik
>> >> >>>> >> <cwiklik@apache.org>
>> >> >>>> >> wrote:
>> >> >>>> >>
>> >> >>>> >>> Hi, instructions how to build from source
are here:
>> >> >>>> >>> https://uima.apache.org/building-uima.html
>> >> >>>> >>>
>> >> >>>> >>> It's a bit involved process so I will try
to post a snapshot
>> >> >>>> >>> of
>> >> >>>> uima-as
>> >> >>>> >>> to
>> >> >>>> >>> Apache snapshot repository and will provide
you with a link
>> >> >>>> >>> later
>> >> >>>> today.
>> >> >>>> >>>
>> >> >>>> >>> Jerry
>> >> >>>> >>>
>> >> >>>> >>> On Wed, Jul 5, 2017 at 4:32 PM, nelson rivera
<
>> >> >>>> nelsonrivera12@gmail.com>
>> >> >>>> >>> wrote:
>> >> >>>> >>>
>> >> >>>> >>>> Please can you give me the url to source
code with the
>> changes,
>> >> to
>> >> >>>> >>>> test.
>> >> >>>> >>>>
>> >> >>>> >>>> 2017-07-05 16:19 GMT-04:00, Jaroslaw Cwiklik
>> >> >>>> >>>> <cwiklik@apache.org
>> >> >:
>> >> >>>> >>>> > Just delivered a few changes to deal
with a stale Session.
>> >> >>>> >>>> > Can
>> >> >>>> >>>> > you
>> >> >>>> >>>> > build
>> >> >>>> >>>> > from source and test.
>> >> >>>> >>>> > Jerry
>> >> >>>> >>>> >
>> >> >>>> >>>> > On Wed, Jul 5, 2017 at 2:21 PM, Jaroslaw
Cwiklik <
>> >> >>>> cwiklik@apache.org>
>> >> >>>> >>>> > wrote:
>> >> >>>> >>>> >
>> >> >>>> >>>> >> Thanks. Will check the code and
work on a fix
>> >> >>>> >>>> >>
>> >> >>>> >>>> >> Jerry
>> >> >>>> >>>> >>
>> >> >>>> >>>> >> On Wed, Jul 5, 2017 at 2:10 PM,
nelson rivera <
>> >> >>>> >>>> nelsonrivera12@gmail.com>
>> >> >>>> >>>> >> wrote:
>> >> >>>> >>>> >>
>> >> >>>> >>>> >>> Here the stack trace for
the error that asked me:
>> >> >>>> >>>> >>> jul 05, 2017 2:08:50 PM
>> >> >>>> >>>> >>> org.apache.uima.adapter.jms.client.ActiveMQMessageSender
>> >> >>>> >>>> >>> run
>> >> >>>> >>>> >>> ADVERTENCIA:
>> >> >>>> >>>> >>> javax.jms.IllegalStateException:
The Session is closed
>> >> >>>> >>>> >>>         at org.apache.activemq.ActiveMQSe
>> >> >>>> >>>> ssion.checkClosed(ActiveMQSess
>> >> >>>> >>>> >>> ion.java:771)
>> >> >>>> >>>> >>>         at org.apache.activemq.ActiveMQSe
>> >> >>>> >>>> ssion.configureMessage(ActiveM
>> >> >>>> >>>> >>> QSession.java:759)
>> >> >>>> >>>> >>>         at org.apache.activemq.ActiveMQSe
>> >> >>>> >>>> ssion.createTextMessage(Active
>> >> >>>> >>>> >>> MQSession.java:440)
>> >> >>>> >>>> >>>         at org.apache.uima.adapter.jms.cl
>> >> >>>> >>>> ient.ActiveMQMessageSender.cre
>> >> >>>> >>>> >>> ateTextMessage(ActiveMQMessageSender.java:184)
>> >> >>>> >>>> >>>         at org.apache.uima.adapter.jms.cl
>> >> >>>> >>>> ient.BaseMessageSender.run(Bas
>> >> >>>> >>>> >>> eMessageSender.java:307)
>> >> >>>> >>>> >>>         at java.lang.Thread.run(Thread.java:748)
>> >> >>>> >>>> >>>
>> >> >>>> >>>> >>> 2017-07-05 12:16 GMT-04:00,
nelson rivera
>> >> >>>> >>>> >>> <nelsonrivera12@gmail.com>:
>> >> >>>> >>>> >>> > This behavior is random,
not occurs always. In the
>> >> >>>> >>>> >>> > most
>> >> >>>> >>>> >>> > of
>> >> >>>> >>>> >>> > the
>> >> >>>> >>>> simple
>> >> >>>> >>>> >>> > programs and simple
test case tested, after restart
>> >> >>>> >>>> >>> > the
>> >> >>>> >>>> >>> > UIMA-AS
>> >> >>>> >>>> Broker
>> >> >>>> >>>> >>> > without restart service
uima-as, the instruccion to
>> >> >>>> >>>> >>> > uima-as
>> >> >>>> >>>> >>> > client
>> >> >>>> >>>> >>> > "BaseUIMAAsynchronousEngine_impl.connectionOpen()"
>> return
>> >> >>>> "false"
>> >> >>>> >>>> and
>> >> >>>> >>>> >>> > correctly i initialize
the client again.
>> >> >>>> >>>> >>> >
>> >> >>>> >>>> >>> > The incorrect behavior
is most frequently with many
>> >> >>>> >>>> >>> > uima-as
>> >> >>>> >>>> >>> > client
>> >> >>>> >>>> >>> > instances. Is the case
of my general application in
>> which
>> >> >>>> >>>> >>> > i
>> >> >>>> have
>> >> >>>> >>>> many
>> >> >>>> >>>> >>> > service uima-as, and
for each one creates one instace
>> >> >>>> >>>> >>> > of
>> >> >>>> uima-as
>> >> >>>> >>>> >>> > client (BaseUIMAAsynchronousEngine_impl)
and keep it
>> >> >>>> >>>> >>> > alive
>> >> >>>> >>>> >>> > to
>> >> >>>> >>>> process
>> >> >>>> >>>> >>> > all requests of the
service uima-as.
>> >> >>>> >>>> >>> >
>> >> >>>> >>>> >>> > Is in this scenario
with many instancies of uima-as
>> >> >>>> >>>> >>> > client
>> >> >>>> >>>> >>> > (BaseUIMAAsynchronousEngine_impl)
in the same program
>> (a
>> >> >>>> >>>> >>> > monolithic
>> >> >>>> >>>> >>> > application web in tomcat)
where after restart the
>> >> >>>> >>>> >>> > UIMA-AS
>> >> >>>> Broker
>> >> >>>> >>>> >>> > without restart any
service uima-as, many uima-as
>> >> >>>> >>>> >>> > client
>> >> >>>> returns
>> >> >>>> >>>> >>> > "true" to the instruccion
>> >> >>>> >>>> >>> > "BaseUIMAAsynchronousEngine_impl.connectionOpen()"
but
>> >> them
>> >> >>>> throw
>> >> >>>> >>>> >>> > "javax.jms.IllegalStateException:
The Session is
>> closed"
>> >> >>>> >>>> >>> > when proces the request.
>> >> >>>> >>>> >>> >
>> >> >>>> >>>> >>> > 2017-07-04 16:13 GMT-04:00,
nelson rivera
>> >> >>>> >>>> >>> > <nelsonrivera12@gmail.com
>> >> >>>> >>>> >:
>> >> >>>> >>>> >>> >> One peculiarity
is that, is a primitive annotator
>> >> implented
>> >> >>>> >>>> >>> >> in
>> >> >>>> >>>> >>> >> c++,
>> >> >>>> >>>> >>> >> but is deployed
with de deployAsyncService.sh de
>> uima-as
>> >> >>>> >>>> >>> >> directly.
>> >> >>>> >>>> >>> >>
>> >> >>>> >>>> >>> >> 2017-07-04 14:53
GMT-04:00, nelson rivera <
>> >> >>>> >>>> nelsonrivera12@gmail.com>:
>> >> >>>> >>>> >>> >>> In my program
main, i initialize a uimas-as client
>> only
>> >> >>>> >>>> >>> >>> once
>> >> >>>> >>>> >>> >>> and
>> >> >>>> >>>> >>> >>> I
>> >> >>>> >>>> >>> >>> use
>> >> >>>> >>>> >>> >>> this client
to consume all requests to a displayed
>> >> service
>> >> >>>> >>>> uima-as.
>> >> >>>> >>>> >>> >>>
>> >> >>>> >>>> >>> >>> Before process
a request i ask to uima-as client
>> >> >>>> >>>> >>> >>> with:
>> >> >>>> >>>> >>> >>> BaseUIMAAsynchronousEngine_impl.connectionOpen()
>> >> >>>> >>>> >>> >>> and if the result
es "false", i stop the uima-as
>> client
>> >> >>>> >>>> >>> >>> and
>> >> >>>> >>>> >>> >>> initialize
>> >> >>>> >>>> >>> >>> it
>> >> >>>> >>>> >>> >>> again.
>> >> >>>> >>>> >>> >>>
>> >> >>>> >>>> >>> >>> With some steps,
still undefined, but after restart
>> the
>> >> >>>> UIMA-AS
>> >> >>>> >>>> >>> >>> Broker
>> >> >>>> >>>> >>> >>> without restart
service uima-as.
>> >> >>>> >>>> >>> >>> The instruccion
to uima-as client
>> >> >>>> >>>> >>> >>> BaseUIMAAsynchronousEngine_impl.connectionOpen()
>> return
>> >> >>>> "true",
>> >> >>>> >>>> but
>> >> >>>> >>>> >>> >>> them i get a
"javax.jms.IllegalStateException: The
>> >> Session
>> >> >>>> is
>> >> >>>> >>>> >>> >>> closed"
>> >> >>>> >>>> >>> >>> when proces
the request.
>> >> >>>> >>>> >>> >>>
>> >> >>>> >>>> >>> >>> Wich is the
best way to know when connections
>> >> >>>> >>>> >>> >>> betewen
>> >> >>>> >>>> >>> >>> cliente
>> >> >>>> >>>> >>> >>> uima-as
>> >> >>>> >>>> >>> >>> and ActiveMQ
is broken? and i should restart uima-as
>> >> >>>> >>>> >>> >>> client.
>> >> >>>> >>>> >>> >>>
>> >> >>>> >>>> >>> >>
>> >> >>>> >>>> >>> >
>> >> >>>> >>>> >>>
>> >> >>>> >>>> >>
>> >> >>>> >>>> >>
>> >> >>>> >>>> >
>> >> >>>> >>>>
>> >> >>>> >>>
>> >> >>>> >>>
>> >> >>>> >>
>> >> >>>> >
>> >> >>>>
>> >> >>>
>> >> >>>
>> >> >>
>> >> >
>> >>
>> >
>>
>

Mime
View raw message