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 ]