vrogier / ocilib

OCILIB (C and C++ Drivers for Oracle) - Open source C and C++ library for accessing Oracle databases

Home Page:http://www.ocilib.net

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Free memory after dequeue

Kyle-SZJVSCH opened this issue · comments

Hello,

If the OCI_MsgGetEnqueueTime function is called after receiving a message from AQ, the OCI_Cleanup function will generate an error Error occurred at OcilibEnvironmentCleanup: Found 48 non freed allocated bytes. Do I have to release it explicitly?

Example part of code:

            OCI_Inititalize 
            int priority = OCI_MsgGetPriority( msg ) ;
            time_t enq_time ;
            time_t deq_time = time(nullptr) ;
            std::string message_id ;
            std::shared_ptr<ms::database::Object> payload ;
            auto date = OCI_MsgGetEnqueueTime(msg) ;
            OCI_DateToCTime(date, nullptr, &enq_time) ;
            auto obj = OCI_MsgGetObject(msg) ;
            OCI_Cleanup

Hi,

Thanks for reporting the issue.
It has been resolved in current development branch 4.7.7.

Regards,

Vincent