[Libreoffice] ODBC handles, a quibble

Terrence Enger tenger at iseries-guru.com
Thu Sep 29 09:02:01 PDT 2011


Silly me!  While reading some of the LibreOffice code for
ODBC connections, I started to look at ...

    ISO/IEC FCD 9075-3:2006(E)
    Title: Information technology - Database Languages - SQL
        - Part 3: Call-Level Interface (SQL/CLI)
    <http://jtc1sc32.org/doc/N1501-1550/32N1527T-text%20for%20FCD%209075-3.pdf>

This passage in section "4.4.1 Handles" catches my eye:

    The validity of a handle in a compilation unit other
    than the one in which the identified resource was
    allocated is implementation-defined.

Yikes!  How can any large (or moderate sized) project avoid
assuming the validity of ODBC handles across the boundaries
of compilation units?  LibreOffice seems to assume continued 
validity; for example
connectivity/source/drivers/odbcbase/OConnection.cxx line
640 allocates a statement handle which
connectivity/source/drivers/odbcbase/OStatement.cxx line 94
copies for use later.

So, I wonder ...

(*) Is there a better reference document for me to look at?

(*) What ODBC driver invalidates an ODBC handle across
    compilation unit boundaries?

(*) By what magic can the driver know anything about its
    caller's compilation units, anyway?

Will some kind soul here please tell me that I need not
worry about such things?

Thanks,
Terry.




More information about the LibreOffice mailing list