Uploaded image for project: 'Kudu'
  1. Kudu
  2. KUDU-3495

TServer: Unexpected result of write with old schema.

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.14.0
    • 1.18.0
    • tserver
    • None

    Description

      For table test with two column a(primary key), b.

      If I do following operations in client side:

      1. openTable(test) to get a kudu table object KuduTable1 whose schema is (a, b)
      2. Add a column c to table test.
      3. openTable(test) to get another kudu table object KuduTable2 whose schema is (a, b, c)
      4. Insert 1 row  ("d", "e", "f") using KuduTable2
      5. Upsert 1 row  ("d", "g") using KuduTable1

      The expected result is ("d", "g", "f") since I hope to keep the value of column c.

      But the result i got was ("d", "g", NULL)

      After looking through the code, I think the original reason is that the isset_bitmap is not all 0 at start.

      So I initialize the bitmap like below:

      After this modification, the result is as my expect.

      So I wonder if it is a bug since normally a user does not want to change the column which he did not request to.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            Song Jiacheng Song Jiacheng
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment