Uploaded image for project: 'MariaDB ColumnStore'
  1. MariaDB ColumnStore
  2. MCOL-2108

Possible bug in disk join

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Won't Do
    • 1.0.15, 1.1.6, 1.2.2
    • Icebox
    • N/A
    • None

    Description

      Looking a little more into MCOL-2105, I spotted something in the code that might be wrong but I don't have time to chase it down right now.

      When it's reading data for the small side, it's iterating over the rows deciding what to do depending on the type of join. I see this:
      {{ if (antiWithMatchNulls && hasNullJoinColumn(row))
      {
      if (needsAllNullRows || !gotNullRow)

      { for (j = 0; j < (int) bucketCount; j++) ret += buckets[j]->insertSmallSideRow(row); gotNullRow = true; }

      continue;
      } }}

      After that, the row gets inserted.

      I think this means that if the row has a NULL join value, but is NOT an anti-join where it's supposed to match NULLs, the row gets inserted. In other words, if the join is a simple inner join, the NULL row gets inserted.

      I THINK the operator at the top of the code above should be an || not an &&.

      Attachments

        Activity

          People

            Unassigned Unassigned
            pleblanc Patrick LeBlanc (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 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.