Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-136024

The oracle OCI SQl Plugin is unusable

    XMLWordPrintable

Details

    • All
    • 4e94132fb (6.9), 4a8350da2 (6.9)

    Description

      The oracle OCI SQl Plugin is unusable. The first query results in an exception.

      Exception thrown: read access violation.
      {}d{} was 0xFFFFFFFFFFFFFF27.

      The exception is thrown on delete d->cols; in line 1911 in qsql_oci.cpp function QOCIResult::internal_prepare.

      The debugger shows 0xcdcdcdcdcdcdcdcd as value for d.

      There is a new QOCIResultPrivate *d_ptr; in class QOCIResult, but that pointer is never initialized in the constructor.

      Qt was built with:
      ..\Qt6.9\configure -debug -c+std c+20 -force-debug-info -prefix c:\Qt\6.9.0-debug -sql-oci -no-feature-accessibility -skip qtwebengine -skip qtpdf – -DOracle_LIBRARY=C:\ocisdk\oci.lib -DOracle_INCLUDE_DIR=C:\ocisdk\include
      cmake --build . --parallel
      cmake --install .

       

      When following is inserted in the constructor
      d_ptr = (QOCIResultPrivate*)QSqlCachedResult::d_ptr;
      in the constructor, the simple example works. Seems the pimpl handling is messed up completly.

       

      Problem was said to have started with
      https://codereview.qt-project.org/c/qt/qtbase/+/553808
      and this made it build
      https://codereview.qt-project.org/c/qt/qtbase/+/571566

      Attachments

        For Gerrit Dashboard: QTBUG-136024
        # Subject Branch Project Status CR V

        Activity

          People

            chehrlic Christian Ehrlicher
            tommimtauriainen Tommi M. Tauriainen
            Votes:
            2 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes