GSI run time errors related to deallocation

Submitted by huihuojia on Wed, 04/14/2021 - 19:55

Recently, I am working on GSIv3.7, then I encountered a weird problem. GSI exits with errors which are related to the deallocation of pointers.

 

When I tried to locate the source of errors, it traced back to the “obsdiags_reset” in the pcgsoi. Then I found out the problem occurred when it could NOT deallocate the arrays (or should I say the pointers) for the observations. Which makes it even more weird, the pointers could be deallocated for “PS” observation, but NOT for “T” and “U/V” observation.

 

Have you encountered these problems? do you have some ideas about why?

 

 

 

PS: the error message is like the following:

[036]m_obsLList::nodeDestroy_(): >>> ERROR <<< can not deallocate(node), stat = 173

[036]m_obsLList::nodeDestroy_(): >>> ERROR <<<                      %mytype() = "[tNode]"

[036]m_obsLList::lreset_(): >>> ERROR <<< call nodeDestroy_(), stat = 173

[036]m_obsLList::lreset_(): >>> ERROR <<<                     count = 1

[036]m_obsLList::lreset_(): >>> ERROR <<<        l_obsNode%mytype() = "[tNode]"

[036]m_obsLList::lreset_(): >>> ERROR <<<      headLL%mold%mytype() = "[tNode]"

[036]m_obsdiags::reset_(): >>> ERROR <<< call obsLList_reset(), stat = 173

[036]m_obsdiags::reset_(): >>> ERROR <<<                        ibin = 1

[036]m_obsdiags::reset_(): >>> ERROR <<<                       jtype = 2

[036]m_obsdiags::reset_(): >>> ERROR <<<               mold%mytype() = "[tNode]"

[036]m_obsdiags::reset_(): >>> ERROR <<< terminated

 

Yes, that could happen for some version of compilers. Please check whether your version of compiler is in the supported compiler list.

 

Permalink

In reply to by guoqing.ge

I checked my version of IFORT, and it's v13, maybe old.

I compiled the GSI on a cluster, which many other users use also. I am not sure whether update the IFORT will cause trouble for other people or not.

Is there some work-around for this problem without changing the IFORT version?