Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 1.0.5
    • 1.0.6
    • None
    • None
    • Win7/Pro 32bit using VFP9/SP2. MariaDB 10.1.9

    Description

      Error connecting with MariaDB Connector/ODBC 1.0.5, I get an error using a DSN or a connection string from VFP. The "test" the DSN says it connects successfully.

      ConnectHandle = SQLSTRINGCONNECT("Driver=

      {MariaDB ODBC 1.0 Driver}

      ;Server=127.0.0.1;UID=root;PWD=secret;DB=test;Port=3306;Options=3;")

      The error is:
      Connectivity error: Unknown system variable 'max_allowed_packet_size'

      and in the logfile, I see an attempt to set "max_allowed_packet_size" to 4096, and the next entry is "Quit". I do see "max_allowed_packet_size" in the debug symbols for the driver.

      Attachments

        Activity

          The connector doesn't try to set max_allowed_packet on its own - only if application asks it to. And application can do that only by setting aforementioned connection option.

          Lawrin Lawrin Novitsky added a comment - The connector doesn't try to set max_allowed_packet on its own - only if application asks it to. And application can do that only by setting aforementioned connection option.

          The fix and the testcase have been pushed to both branches

          Lawrin Lawrin Novitsky added a comment - The fix and the testcase have been pushed to both branches
          Fred Taylor Fred Taylor added a comment -

          Thanks for the pretty rapid "fix". However, while the new version (1.06) now loads OK, in trying to retrieve some tables from a MariaDB 10.1.9 database, it crashes VFP with a C0000005 error. In my experience, that's the "catch-all" error code, so it probably won't be much use in finding the issue. I haven't narrowed it down yet as to what it is about the tables it doesn't like. Some tables work fine, even ones with 100K+ rows, but right now it seems to be the total field width of a row or maybe the number of fields. The ones that crash are our customer table (118 fields, 1431 bytes wide), and the inventory table (102 fields, 1701 bytes wide). I need to do more research to see exactly what's happening.

          The error occurred with the 32 bit version of the driver, I have not yet tried the 64 bit version. VFP can only use the 32 bit version anyways, but it will be more than just VFP accessing the data (also will be C# .NET , ASP .NET, php and python programs, so will be a mix of 32-bit and 64-bit.

          Let me know if there is any other info that may be of use to you.

          Fred Taylor Fred Taylor added a comment - Thanks for the pretty rapid "fix". However, while the new version (1.06) now loads OK, in trying to retrieve some tables from a MariaDB 10.1.9 database, it crashes VFP with a C0000005 error. In my experience, that's the "catch-all" error code, so it probably won't be much use in finding the issue. I haven't narrowed it down yet as to what it is about the tables it doesn't like. Some tables work fine, even ones with 100K+ rows, but right now it seems to be the total field width of a row or maybe the number of fields. The ones that crash are our customer table (118 fields, 1431 bytes wide), and the inventory table (102 fields, 1701 bytes wide). I need to do more research to see exactly what's happening. The error occurred with the 32 bit version of the driver, I have not yet tried the 64 bit version. VFP can only use the 32 bit version anyways, but it will be more than just VFP accessing the data (also will be C# .NET , ASP .NET, php and python programs, so will be a mix of 32-bit and 64-bit. Let me know if there is any other info that may be of use to you.
          Fred Taylor Fred Taylor added a comment -

          Looks like the issue is with BIT type fields (1 bit). Removing the BIT fields from the table allows the connector to retrieve data from the table. If there is a bit field, it crashes.

          Fred Taylor Fred Taylor added a comment - Looks like the issue is with BIT type fields (1 bit). Removing the BIT fields from the table allows the connector to retrieve data from the table. If there is a bit field, it crashes.

          Thanks, I will look into it

          Lawrin Lawrin Novitsky added a comment - Thanks, I will look into it

          People

            Lawrin Lawrin Novitsky
            Fred Taylor Fred Taylor
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.