From twright at bbn.com Wed Apr 4 11:40:58 2007 From: twright at bbn.com (Todd Wright) Date: Wed, 04 Apr 2007 11:40:58 -0400 Subject: Fwd: Question about pending messages and crash recovery Message-ID: <4613C70A.5030404@bbn.com> The following question was posted to the cougaar.org forum: ning zhang (wy1238) wrote: > Hi, > I consult a question about cougaar 12.0 . > How to let MTS insure a message be sended for certain? For example, > there are two node need communication . The node of "A" want send a > message to the node "B" ,the flow is : > 1> "B" be killed . > 2> "A" publish message to blackboard .(have RMIException) > 3> "A" be killed . > 4> "B" reboot. > 5> "A" reboot. > Then I find ,the message not be sended .( Before 3,the message already > persist into file . after 5,another manual message can be sended and > received. ) If you enable agent persistence and agent "A" saves its state between steps 2 and 3, then when "A" reboots it will send the message again. However, Cougaar agents only save their state every couple minutes, so there's no guarantee that agent "A" will save it state in between steps 2 and 3. This is "lazy persistence", as described in: http://cougaar.org/docman/view.php/7/200/oc04-rob.pdf As described in the above paper, most Cougaar applications would not want the message from "A" to "B" to be sent if both agents crash. In your case, if you want "A" to resent the message when it reboots, you'd need to save the fact that agent "A" sent the message. This fact could be saved to a local file or database. Todd From twright at bbn.com Wed Apr 4 11:59:38 2007 From: twright at bbn.com (Todd Wright) Date: Wed, 04 Apr 2007 11:59:38 -0400 Subject: Fwd: Real time OS Message-ID: <4613CB6A.9060208@bbn.com> The following question was posted to the cougaar.org forum: Jeff Kirk (jrkirk) wrote: > Can Cougaar SE or ME be run on a real time operating system, such as > LynxOS-SE? Lynx is Linux ABI compatible, and uses the Aonix Perc real > time java JVM, so, in theory it should work. Are there any gotchas? Does > Cougaar require jars aoutside of the standard JRE? Memory issues? synch > issues? Has anyone ever run Cougaar on a real time OS? > > Thanks in advance for any and all input! CougaarSE is known to run on Sun's JDK 1.5 and 1.6 on Windows, Linux, Solaris, and OS X. We've also run CougaarSE on a Geode 233 MHz embedded CPU with Java 1.5: http://en.wikipedia.org/wiki/Geode_(processor) CougaarME is no longer supported. It was a completely separate Cougaar-like framework that ran on the Java Micro Edition JVM. As far as I know, we've never tried running Cougaar on a real-time OS. So long as that OS supports Sun's JDK 1.5 or later, I imagine Cougaar would be fine. Cougaar uses Java's standard threading services, so (by default) it wouldn't take advantage of the real-time support. Cougaar's thread pool design may simplify the code changes required to support real-time threads; see: http://cougaar.cougaar.org/software/latest/OnlineManual/ThreadService/ Todd From RTomlinson at bbn.com Thu Apr 12 13:40:16 2007 From: RTomlinson at bbn.com (Ray Tomlinson) Date: Thu, 12 Apr 2007 13:40:16 -0400 Subject: Execute works on getAddedCollection but not getChangedCollection In-Reply-To: <5E39C4594D28CB4B854E6C61FC43690A1561FF@ED.TFMT.IAC> References: <5E39C4594D28CB4B854E6C61FC43690A1561FF@ED.TFMT.IAC> Message-ID: <461E6F00.4060102@bbn.com> James Livingood wrote: > Hello all, > > I?ve subscribed to the object I want: > > HypothesisSub = (IncrementalSubscription) > getBlackboardService().subscribe(HYPOTHESIS_PRED); > > And in my execute() I have: > > for (Iterator i = HypothesisSub.getAddedCollection().iterator(); > i.hasNext();) { > > // grabs all the information and puts it into MS SQL. > > } > > for (Iterator i = HypothesisSub.getChangedCollection().iterator(); > i.hasNext();) { > > // grab all the data AGAIN and put it into MS SQL > > } > > Why does the getAddedCollection run when the plugin is first started up > The addedCollection contains all newly added objects (added with publishAdd) including ones that were already present when you first subscribe. > > , but the getChangedCollection does not run when objects that I've > subscribed to change/new ones are added/etc? > The changedCollection contains newly changed objects (with publishChange). The "add" and "change" refers to how the object is published not to the overall status of the subscription. -- Ray Tomlinson BBN Technologies 10 Moulton St. Cambridge, MA 02138 (617) 873-3363 From hakan at elgin.nl Fri Apr 13 04:08:48 2007 From: hakan at elgin.nl (Hakan Elgin) Date: Fri, 13 Apr 2007 10:08:48 +0200 Subject: ccm source Message-ID: <461F3A90.3030904@elgin.nl> Hi Cougaar community, I want to use ccm package of cougaar but I want to make some little changes for may needs in this application thus I fetch source code of ccm from cvs in my eclipse env. but until now I am not succeed to compile this code, I get errors about missing class and libs as com.cougaarsoftware.core.mobility.util.Constants.SharableObjectType; com.cougaarsoftware.core.mobility.configuration.CSIMobilityConfigurationObject; some more. import org.jgraph.layout.JGraphLayoutAlgorithm I include all cougaar lib and sys jars, demo application with pizza-party demo work correct in my pc. any help will be welcom, Hakan Elgin -------------- next part -------------- A non-text attachment was scrubbed... Name: hakan.vcf Type: text/x-vcard Size: 174 bytes Desc: not available Url : http://cougaar.org/pipermail/cougaar-developers/attachments/20070413/d523978d/hakan.vcf