Hi,

Installed fipy trunk on a new computer and I seem to have a trilinos issue.
I found the error also here: http://matforge.org/fipy/wiki/TrilinosMapPuzzle

What I do is open a console, import fipy, then CTRL+D to exit it. I
immediately obtain a warning Teuchos::RCPNode

Any ideas on what is happening?

output:

bm@iuap1:/werkdir/bm$ python
Python 2.7.3 (default, Aug  1 2012, 05:14:39)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import fipy
>>>

***
*** Warning! The following Teuchos::RCPNode objects were created but have
*** not been destroyed yet.  A memory checking tool may complain that these
*** objects are not destroyed correctly.
***
*** There can be many possible reasons that this might occur including:
***
***   a) The program called abort() or exit() before main() was finished.
***      All of the objects that would have been freed through destructors
***      are not freed but some compilers (e.g. GCC) will still call the
***      destructors on static objects (which is what causes this message
***      to be printed).
***
***   b) The program is using raw new/delete to manage some objects and
***      delete was not called correctly and the objects not deleted hold
***      other objects through reference-counted pointers.
***
***   c) This may be an indication that these objects may be involved in
***      a circular dependency of reference-counted managed objects.
***

  0: RCPNode (map_key_void_ptr=0x2d81710)
       Information = {T=Epetra_MpiComm, ConcreteT=Epetra_MpiComm,
p=0x2d81710, has_ownership=1}
       RCPNode address = 0x2d7cbf0
       insertionNumber = 378
  1: RCPNode (map_key_void_ptr=0x2d7caa0)
       Information = {T=Epetra_MpiComm, ConcreteT=Epetra_MpiComm,
p=0x2d7caa0, has_ownership=1}
       RCPNode address = 0x2d85ae0
       insertionNumber = 379

NOTE: To debug issues, open a debugger, and set a break point in the
function where
the RCPNode object is first created to determine the context where the
object first
gets created.  Each RCPNode object is given a unique insertionNumber to
allow setting
breakpoints in the code.  For example, in GDB one can perform:

1) Open the debugger (GDB) and run the program again to get updated object
addresses

2) Set a breakpoint in the RCPNode insertion routine when the desired
RCPNode is first
inserted.  In GDB, to break when the RCPNode with insertionNumber==3 is
added, do:

  (gdb) b 'Teuchos::RCPNodeTracer::addNewRCPNode( [TAB] [ENTER]
  (gdb) cond 1 insertionNumber==3 [ENTER]

3) Run the program in the debugger.  In GDB, do:

  (gdb) run [ENTER]

4) Examine the call stack when the prgoram breaks in the function
addNewRCPNode(...)
bm@iuap1:/werkdir/bm$

So import of fipy causes this.

Benny
_______________________________________________
fipy mailing list
[email protected]
http://www.ctcms.nist.gov/fipy
  [ NIST internal ONLY: https://email.nist.gov/mailman/listinfo/fipy ]

Reply via email to