← Prev in month ← Prev in thread

Issue 194: Faults for uninitialized partnerLinks

From
Tony Fletcher <>
Date
2005-03-04T21:35:25+00:00
ID
000701c52102$126afda0$
Thread
Issue 194: Faults for uninitialized partnerLinks
Title: Message

 

This issue has been added to the 
wsbpel issue list with a status of "received". The status will be changed to 
"open" if the TC accepts it as identifying a bug in the spec or decides it 
should be accepted specially. Otherwise it will be closed without further 
consideration (but will be marked as "Revisitable") 

The issues list is posted as a Technical Committee 
document to the OASIS WSBPEL TC pages on a regular 
basis. The current edition, as a TC document, is the most recent version of the 
document entitled in the "Issues" folder of the WSBPEL TC document list - 
the next posting as a TC document will include this issue. The list editor's 
working copy, which will normally include an issue when it is announced, is 
available at this constant URL.    

 

 Issue 194: Faults for uninitialized 
partnerLinksStatus: received
Date added: 4 Mar 
2005
Categories: Partner 
Links
Date submitted: 04 March 2005
Submitter: Yaron Y. Goland
Description: Thanks 
to Alexandre Alves of BEA for pointing this problem out. 

What happens if someone tries to do an invoke or a receive on a partnerLink 
that doesn't have an initialized EPR? 

An interesting question is - can such errors ever happen? As I argue below I 
believe the answer is yes. 

In the case of receive the answer would seem to be no. Only the engine can 
set myRole EPRs so it's reasonable to assume that the engine will set all EPRs. 

But one wonders. 

For example, what if an administrator sets up their server (using a mechanism 
completely outside of BPEL) to say 'myRole in partnerLink PLA should be set to 
the same value as myRole in partnerLink PLB' and then at run time PLB never 
actually gets set because it's never used? Such an error could only be 
statically determined using pessimistic analysis which we have generally stayed 
away from. So it is at least theoretically possible for a myRole to be 
uninitialized at run time. What's interesting though is that this is a server 
and not a programmer error but it's an error nevertheless. 

In the case of invoke the answer is more likely to be yes, the error can 
happen. If we assume that static analysis occurs before binding then clearly one 
can end up in situations where the code was written to rely on a binding that 
could set EPRs and instead ended up deployed on one that didn't. Similarly even 
if static analysis occurs after binding we still have a problem because if the 
binding doesn't set EPRs and the program is required to manually set them we 
still end up with the pessimistic analysis problem. That is, the only way we can 
be sure that a BPEL using a non-EPR setting binding won't fault out on an 
uninitialized partnerRole on an invoke is if we use pessimistic static 
analysis.
Submitter’s proposal: Introduce a 
bpws:uninitializedPartnerRole fault.
Changes: 4 Mar 2005 - new 
issue

 Best 
Regards,

Tony                           

  
  

    
      

    
      
Tony 
      Fletcher

      
Technical 
      Advisor 
      
Choreology 
      Ltd.
68, Lombard Street, London EC3V 9L J  
       UK

  

    
      
Phone:  
      

    
      
+44 
      (0) 1473 729537

  

    
      
Mobile: 
      

    
      
+44 
      (0) 7801 948219

  

    
      
Fax:    
      

    
      
+44 
      (0) 870 7390077

  

    
      
Web:

    
      
www.choreology.com

  

    
      
Cohesions™

  

    
      
Business 
      transaction management software for application 
      coordination

  

    
      

      

Work:  
      

  

    
      
Home: 
      
← Prev in month ← Prev in thread