Petals CDK

[Notification] Notification Publishers not unregistered on componant "stop" when the se-notification service is unavailable

Details

  • Type: Bug Bug
  • Status: Resolved Resolved
  • Priority: Critical Critical
  • Resolution: Fixed
  • Affects Version/s: 5.0.3
  • Fix Version/s: 5.1.1
  • Component/s: Notifications
  • Security Level: Public
  • Description:
    Hide

    Usecase :

    • 1 petals instance with se-notification and se-kpi
    • 1 petals instance with components producing notifications
    • First, stop petals instance containing se-notif
    • Then, stop petals instance containing notification producers (components with notification property = "true")

    Producer never be unregistered. You could see that the "work/SavePublisherRegistrationRPs" directory of se-notif component contains publisher registrations.
    When you restart petals instances, an incoherant situation is obtained where notifications are duplicated because the same producer is registered twice.

    Show
    Usecase :
    • 1 petals instance with se-notification and se-kpi
    • 1 petals instance with components producing notifications
    • First, stop petals instance containing se-notif
    • Then, stop petals instance containing notification producers (components with notification property = "true")
    Producer never be unregistered. You could see that the "work/SavePublisherRegistrationRPs" directory of se-notif component contains publisher registrations. When you restart petals instances, an incoherant situation is obtained where notifications are duplicated because the same producer is registered twice.
  • Environment:
    petals-esb 3.1.x, petals-se-notif 1.0.x, petals-se-kpi 1.1.x, petals-cdk 5.0.x

Issue Links

Activity

Hide
Olivier Fabre added a comment - Wed, 13 Oct 2010 - 14:26:17 +0200

Publisher that can't unregister on broker during component shutdown, mustn't re-register on broker at future startup (because registration is backuped by the broker) and must restore their previous state to be able to process notifications.

Show
Olivier Fabre added a comment - Wed, 13 Oct 2010 - 14:26:17 +0200 Publisher that can't unregister on broker during component shutdown, mustn't re-register on broker at future startup (because registration is backuped by the broker) and must restore their previous state to be able to process notifications.
Hide
Olivier Fabre added a comment - Fri, 24 Sep 2010 - 17:12:01 +0200

this issue is nearly fixed. the regiter publisher persisted file is always here after se-notif shutdown but linked side effects are fixed : subscritions and notifications aren't duplicated and so, flowstep parameters will also be ok in petals view.
See linked issues (PETALSCDK-25 and PETALSSENOTIF-7) for more information on fixed bugs.

Show
Olivier Fabre added a comment - Fri, 24 Sep 2010 - 17:12:01 +0200 this issue is nearly fixed. the regiter publisher persisted file is always here after se-notif shutdown but linked side effects are fixed : subscritions and notifications aren't duplicated and so, flowstep parameters will also be ok in petals view. See linked issues (PETALSCDK-25 and PETALSSENOTIF-7) for more information on fixed bugs.
Hide
Christophe Hamerling added a comment - Thu, 23 Sep 2010 - 16:03:55 +0200 - edited

On restart, the SE-Notification is sending a 'subscribe' message to the SE-KPI, but the SE-KPI does not handle this type of message, there is a problem in the recover process...

[Petals.Container.Components.petals-se-notification]-FINE 2010-09-23 15:46:48,969 target producer Service to subscribe to : {http://petals.ow2.org/component}NotificationProducerService

[Petals.Container.Components.petals-se-notification]-FINE 2010-09-23 15:46:48,969 target producer Interface to subscribe to : {http://docs.oasis-open.org/wsn/bw-2}NotificationProducer

[Petals.Container.Components.petals-se-notification]-FINE 2010-09-23 15:46:48,969 target producer Endpoint to subscribe to : edpt-0F6EDB524A3CC2A7EA12852479437149770001

[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,973 Message in with Id 'petals:uid:C27E5794683EC5B323128524960897386400053' to send
[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,974 Operation : {http://docs.oasis-open.org/wsn/b-2}Subscribe
[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,974 MEP : http://www.w3.org/2004/08/wsdl/in-out
[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,975 Message Content : <?xml version="1.0" encoding="MacRoman" standalone="no"?><wsnt:Subscribe xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"><wsnt:ConsumerReference><wsa:Address xmlns:wsa="http://www.w3.org/2005/08/addressing">http://petals.ow2.org/cdk</wsa:Address><wsa:ReferenceParameters xmlns:wsa="http://www.w3.org/2005/08/addressing"><ebm:SOAParameter xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes"><ebm:InterfaceName xmlns="http://docs.oasis-open.org/wsn/brw-2">NotificationBroker</ebm:InterfaceName><ebm:ServiceName xmlns="http://petals.ow2.org/petals-se-notification">NotificationBrokerService</ebm:ServiceName><ebm:Endpoint>NotificationBrokerServiceEndpoint</ebm:Endpoint></ebm:SOAParameter></wsa:ReferenceParameters></wsnt:ConsumerReference><wsnt:Filter><wsnt:TopicExpression xmlns:petals="http://petals.ow2.org/topic" Dialect="http://docs.oasis-open.org/wsn/t-1/TopicExpression/Full">petals:component/cdk/producer/fault[@wstop:topic='true']</wsnt:TopicExpression><wsnt:MessageContent Dialect="http://www.ebmwebsourcing.com/wsnotification/soaparameter"><ebm:SOAParameter xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes"><ebm:InterfaceName xmlns="http://notification.test.petals.ebmwebsourcing.com">NotifyImpl</ebm:InterfaceName><ebm:ServiceName xmlns="http://notification.test.petals.ebmwebsourcing.com">NotifyImpl</ebm:ServiceName><ebm:Endpoint>NotifyImplPort</ebm:Endpoint></ebm:SOAParameter></wsnt:MessageContent></wsnt:Filter><wsnt:SubscriptionPolicy><ebm:TransformPolicy xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes"><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"><xsl:output indent="yes" method="xml"/><xsl:template match="/"><wsnebm:NotifyContent xmlns:wsnebm="http://www.ebmwebsourcing.com/WS-BaseNotification/NotifyContent" processType="1"><wsnebm:params>	
				
				
			</wsnebm:params>
		</wsnebm:NotifyContent>
	</xsl:template>
</xsl:stylesheet></ebm:TransformPolicy><ebm:ProcessPolicy xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes" action="create"/><ebm:ContextPolicy xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes" correlationId="true" endpoint="true" interface="true" meuuid="true" notifDate="true" service="true" status="true"/></wsnt:SubscriptionPolicy></wsnt:Subscribe>
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,979 Accepting a JBI message with Id : petals:uid:C27E5794683EC5B323128524960897386400053
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,979 Process an exchange as PROVIDER with id : petals:uid:C27E5794683EC5B323128524960897386400053
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,980 Process an exchange managed directly by the component
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,980 		 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,980 Notification Message received on "onNotificationMessage" method !
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 Message out with Id 'petals:uid:C27E5794683EC5B323128524960897386400053' to send
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 Operation : {http://docs.oasis-open.org/wsn/b-2}Subscribe
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 MEP : http://www.w3.org/2004/08/wsdl/in-out
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 Message Content is null
[Petals.Container.Components.petals-se-notification]-WARNING 2010-09-23 15:46:49,006  [forwardSubscriptionRequest(...) ] - A WS-Notification Fault have been return on "subscribe" request !!
(inOutExchange Fault Content : 
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Fault xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <faultcode>soapenv:Server</faultcode>
  <faultstring>The KPI process only WS-Notification Notify on InOnly</faultstring>
  <faultactor>http://petals.ow2.org/exception</faultactor>
  <detail>
    <stackTrace>org.ow2.petals.component.framework.api.exception.SOAP11FaultServerException: The KPI process only WS-Notification Notify on InOnly
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processInOutAsProvider(MessageExchangeProcessor.java:667)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processAsProvider(MessageExchangeProcessor.java:389)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.process(MessageExchangeProcessor.java:233)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.run(MessageExchangeProcessor.java:177)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:637)
</stackTrace>
  </detail>
</soapenv:Fault>
Show
Christophe Hamerling added a comment - Thu, 23 Sep 2010 - 16:03:55 +0200 - edited On restart, the SE-Notification is sending a 'subscribe' message to the SE-KPI, but the SE-KPI does not handle this type of message, there is a problem in the recover process...
[Petals.Container.Components.petals-se-notification]-FINE 2010-09-23 15:46:48,969 target producer Service to subscribe to : {http://petals.ow2.org/component}NotificationProducerService

[Petals.Container.Components.petals-se-notification]-FINE 2010-09-23 15:46:48,969 target producer Interface to subscribe to : {http://docs.oasis-open.org/wsn/bw-2}NotificationProducer

[Petals.Container.Components.petals-se-notification]-FINE 2010-09-23 15:46:48,969 target producer Endpoint to subscribe to : edpt-0F6EDB524A3CC2A7EA12852479437149770001

[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,973 Message in with Id 'petals:uid:C27E5794683EC5B323128524960897386400053' to send
[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,974 Operation : {http://docs.oasis-open.org/wsn/b-2}Subscribe
[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,974 MEP : http://www.w3.org/2004/08/wsdl/in-out
[Petals.Container.Components.petals-se-notification]-FINEST 2010-09-23 15:46:48,975 Message Content : <?xml version="1.0" encoding="MacRoman" standalone="no"?><wsnt:Subscribe xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"><wsnt:ConsumerReference><wsa:Address xmlns:wsa="http://www.w3.org/2005/08/addressing">http://petals.ow2.org/cdk</wsa:Address><wsa:ReferenceParameters xmlns:wsa="http://www.w3.org/2005/08/addressing"><ebm:SOAParameter xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes"><ebm:InterfaceName xmlns="http://docs.oasis-open.org/wsn/brw-2">NotificationBroker</ebm:InterfaceName><ebm:ServiceName xmlns="http://petals.ow2.org/petals-se-notification">NotificationBrokerService</ebm:ServiceName><ebm:Endpoint>NotificationBrokerServiceEndpoint</ebm:Endpoint></ebm:SOAParameter></wsa:ReferenceParameters></wsnt:ConsumerReference><wsnt:Filter><wsnt:TopicExpression xmlns:petals="http://petals.ow2.org/topic" Dialect="http://docs.oasis-open.org/wsn/t-1/TopicExpression/Full">petals:component/cdk/producer/fault[@wstop:topic='true']</wsnt:TopicExpression><wsnt:MessageContent Dialect="http://www.ebmwebsourcing.com/wsnotification/soaparameter"><ebm:SOAParameter xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes"><ebm:InterfaceName xmlns="http://notification.test.petals.ebmwebsourcing.com">NotifyImpl</ebm:InterfaceName><ebm:ServiceName xmlns="http://notification.test.petals.ebmwebsourcing.com">NotifyImpl</ebm:ServiceName><ebm:Endpoint>NotifyImplPort</ebm:Endpoint></ebm:SOAParameter></wsnt:MessageContent></wsnt:Filter><wsnt:SubscriptionPolicy><ebm:TransformPolicy xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes"><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"><xsl:output indent="yes" method="xml"/><xsl:template match="/"><wsnebm:NotifyContent xmlns:wsnebm="http://www.ebmwebsourcing.com/WS-BaseNotification/NotifyContent" processType="1"><wsnebm:params>	
				
				
			</wsnebm:params>
		</wsnebm:NotifyContent>
	</xsl:template>
</xsl:stylesheet></ebm:TransformPolicy><ebm:ProcessPolicy xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes" action="create"/><ebm:ContextPolicy xmlns:ebm="http://www.ebmwebsourcing.com/wsnotification/specificTypes" correlationId="true" endpoint="true" interface="true" meuuid="true" notifDate="true" service="true" status="true"/></wsnt:SubscriptionPolicy></wsnt:Subscribe>
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,979 Accepting a JBI message with Id : petals:uid:C27E5794683EC5B323128524960897386400053
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,979 Process an exchange as PROVIDER with id : petals:uid:C27E5794683EC5B323128524960897386400053
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,980 Process an exchange managed directly by the component
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,980 		 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[Petals.Container.Components.petals-se-kpi]-FINE 2010-09-23 15:46:48,980 Notification Message received on "onNotificationMessage" method !
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 Message out with Id 'petals:uid:C27E5794683EC5B323128524960897386400053' to send
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 Operation : {http://docs.oasis-open.org/wsn/b-2}Subscribe
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 MEP : http://www.w3.org/2004/08/wsdl/in-out
[Petals.Container.Components.petals-se-kpi]-FINEST 2010-09-23 15:46:48,981 Message Content is null
[Petals.Container.Components.petals-se-notification]-WARNING 2010-09-23 15:46:49,006  [forwardSubscriptionRequest(...) ] - A WS-Notification Fault have been return on "subscribe" request !!
(inOutExchange Fault Content : 
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Fault xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
  <faultcode>soapenv:Server</faultcode>
  <faultstring>The KPI process only WS-Notification Notify on InOnly</faultstring>
  <faultactor>http://petals.ow2.org/exception</faultactor>
  <detail>
    <stackTrace>org.ow2.petals.component.framework.api.exception.SOAP11FaultServerException: The KPI process only WS-Notification Notify on InOnly
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processInOutAsProvider(MessageExchangeProcessor.java:667)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.processAsProvider(MessageExchangeProcessor.java:389)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.process(MessageExchangeProcessor.java:233)
	at org.ow2.petals.component.framework.process.MessageExchangeProcessor.run(MessageExchangeProcessor.java:177)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:637)
</stackTrace>
  </detail>
</soapenv:Fault>

People

Dates

  • Created:
    Tue, 21 Sep 2010 - 17:34:27 +0200
    Updated:
    Tue, 23 Nov 2010 - 15:38:40 +0100
    Resolved:
    Wed, 13 Oct 2010 - 14:26:45 +0200