bugCERTI - Bugs: bug #24627, rtig error in program sequence

 
 

bug #24627: rtig error in program sequence

Submitted by:  Enrico von Otte <vonotte>
Submitted on:  Wed 22 Oct 2008 08:40:33 AM UTC  
 
Category: CERTISeverity: 3 - Normal
Item Group: Software errorStatus: In Progress
Privacy: PublicAssigned to: Eric NOULARD <erk>
Open/Closed: ClosedRelease: 3.3.1
Reproducibility: NoneFixed Release: 3.4.0

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Thu 23 Oct 2008 01:51:35 PM UTC, comment #4:

First pass fix [the 2) solution] has been merged in CVS
with the patch provided by Enrico.

Eric NOULARD <erk>
Project AdministratorIn charge of this item.
Wed 22 Oct 2008 11:46:09 AM UTC, comment #3:

I think we need both:

1) a "clean" clean-up sequence.
2) a robust NetworkMessage class.

Go ahead for proposing a patch for 2).
We will see if someone can tackle the 1).

Regarding the necessary knowledge for 1),
don't be afraid to dive into the source and
ask necessary questions on certi-devel ML
(if you want and have time to try)
http://lists.nongnu.org/mailman/listinfo/certi-devel

Eric NOULARD <erk>
Project AdministratorIn charge of this item.
Wed 22 Oct 2008 11:33:20 AM UTC, comment #2:

hi,

as mentioned before there would be two basic ways to get rid of that behaviour:

1. check the cleanup sequence -- which would be a bit more work and detailled knowledge of federation and federate classes would be neccessary
- i'm not really able to do that, i guess

2. change NetworkMessage::send to check for socket parameter against null -- which would be 2 lines of code but only a workaround and it would have general (minor) impact to performance since all callers of NetworkMessage::send are affected
- i'm able to apply that lines

in general i would prefer the second way because of the fact that generating a debug-message in every case of receiving a null socket could show up even more cases of wrong parameterisation by only small performance impact.

Enrico von Otte <vonotte>
Wed 22 Oct 2008 11:05:28 AM UTC, comment #1:

Hi Enrico,

Thank you for this precise report.
Would you be able to propose a patch for it?

Eric NOULARD <erk>
Project AdministratorIn charge of this item.
Wed 22 Oct 2008 08:40:33 AM UTC, original submission:

in RTIG::execute in file RTIG.cc the rtig causes a closeConnection on NetworkError exception with parameter "emergency" set to true.

closeConnection first causes all sockets to be closed and deleted. afterwards "emergency" cleanup with given federate is done.

in case of federation set time regulation to be enabled the sequence FederationList::killFederate -> Federation::kill -> Federation::removeRegulator -> Federation::broadcastAnyMessage leads to a NetworkMessage::send on a deleted/closed socket.

in case of networking error NetworkMessage::send should be aware of parameter "socket" ==0 or the cleanup sequence should be changed.

Enrico von Otte <vonotte>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Digest:
   bug dependencies, patch dependencies.

 

Carbon-Copy List
  • -unavailable- added by erk (Posted a comment)
  • -unavailable- added by vonotte (Submitted the item)
  • -unavailable- added by vonotte
  •  

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 8 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Thu 11 Nov 2010 12:36:28 PM UTCerkOpen/ClosedOpen=>Closed
      Fixed ReleaseNextRelease=>3.4.0
    Sat 08 Nov 2008 11:18:54 PM UTCerkFixed Release3.3.1=>NextRelease
    Thu 23 Oct 2008 01:59:46 PM UTCerkDependencies-=>bugs #23755 is dependent
    Thu 23 Oct 2008 01:57:32 PM UTCerkDependencies-=>bugs #24160 is dependent
    Thu 23 Oct 2008 01:51:35 PM UTCerkStatusNone=>In Progress
      Assigned toNone=>erk
    Wed 22 Oct 2008 08:40:33 AM UTCvonotteCarbon-Copy-=>Added vonotte

    Back to the top


    Powered by Savane 3.1-cleanup1