Uploaded image for project: 'Apache AsterixDB'
  1. Apache AsterixDB
  2. ASTERIXDB-2331

Plan branch repeated

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Invalid
    • None
    • None
    • COMP - Compiler
    • None

    Description

      I didn't investigate. But it looks like unmaintained Split output.

      DDL

      DROP DATAVERSE SocialNetworkData IF EXISTS;
      CREATE DATAVERSE SocialNetworkData;
      
      USE SocialNetworkData;
      create type ChirpMessageType as {
          chirpid: int64,
          send_time: datetime
      };
      create type GleambookUserType as {
          id: int64,
          user_since: datetime
      };
      create type GleambookMessageType as {
          message_id: int64,
          author_id: int64,
          send_time: datetime
      };
      
      create dataset GleambookMessages(GleambookMessageType)
      primary key message_id;
      
      create dataset GleambookUsers(GleambookUserType)
      primary key id;
      
      create dataset ChirpMessages(ChirpMessageType)
      primary key chirpid;
      
      create index usrSinceIx on GleambookUsers(user_since);
      create index sndTimeIx on ChirpMessages(send_time);
      create index authorIdIx on GleambookMessages(author_id);
      

      Query:

      USE SocialNetworkData;
      EXPLAIN
      SELECT g.message_id
      FROM GleambookUsers as u, GleambookMessages as g
      WHERE u.id/*+indexnl*/ = g.author_id 
      AND u.user_since = datetime("2013-04-16T09:45:46")
      

      Plan:

      distribute result [$$28]
      -- DISTRIBUTE_RESULT  |PARTITIONED|
        exchange
        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
          union ($$54, $$55, $$28)
          -- UNION_ALL  |PARTITIONED|
            exchange
            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
              project ([$$54])
              -- STREAM_PROJECT  |PARTITIONED|
                assign [$$54] <- [{"message_id": $$52}]
                -- ASSIGN  |PARTITIONED|
                  project ([$$52])
                  -- STREAM_PROJECT  |PARTITIONED|
                    select (eq($$29, $$53.getField(1)))
                    -- STREAM_SELECT  |PARTITIONED|
                      project ([$$29, $$52, $$53])
                      -- STREAM_PROJECT  |PARTITIONED|
                        exchange
                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                          unnest-map [$$52, $$53] <- index-search("GleambookMessages", 0, "SocialNetworkData", "GleambookMessages", TRUE, FALSE, 1, $$46, 1, $$46, TRUE, TRUE, TRUE)
                          -- BTREE_SEARCH  |PARTITIONED|
                            exchange
                            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                              project ([$$29, $$46])
                              -- STREAM_PROJECT  |PARTITIONED|
                                exchange
                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                  split ($$47)
                                  -- SPLIT  |PARTITIONED|
                                    exchange
                                    -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                      project ([$$29, $$46, $$47])
                                      -- STREAM_PROJECT  |PARTITIONED|
                                        exchange
                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                          unnest-map [$$45, $$46, $$47] <- index-search("authorIdIx", 0, "SocialNetworkData", "GleambookMessages", TRUE, TRUE, 1, $$29, 1, $$29, TRUE, TRUE, TRUE)
                                          -- BTREE_SEARCH  |PARTITIONED|
                                            exchange
                                            -- BROADCAST_EXCHANGE  |PARTITIONED|
                                              union ($$43, $$38, $$29)
                                              -- UNION_ALL  |PARTITIONED|
                                                exchange
                                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                  project ([$$43])
                                                  -- STREAM_PROJECT  |PARTITIONED|
                                                    select (eq($$33, datetime: { 2013-04-16T09:45:46.000Z }))
                                                    -- STREAM_SELECT  |PARTITIONED|
                                                      project ([$$43, $$33])
                                                      -- STREAM_PROJECT  |PARTITIONED|
                                                        assign [$$33] <- [$$44.getField(1)]
                                                        -- ASSIGN  |PARTITIONED|
                                                          exchange
                                                          -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                            unnest-map [$$43, $$44] <- index-search("GleambookUsers", 0, "SocialNetworkData", "GleambookUsers", FALSE, FALSE, 1, $$38, 1, $$38, TRUE, TRUE, TRUE)
                                                            -- BTREE_SEARCH  |PARTITIONED|
                                                              exchange
                                                              -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                split ($$39)
                                                                -- SPLIT  |PARTITIONED|
                                                                  exchange
                                                                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                    project ([$$38, $$39])
                                                                    -- STREAM_PROJECT  |PARTITIONED|
                                                                      exchange
                                                                      -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                        unnest-map [$$37, $$38, $$39] <- index-search("usrSinceIx", 0, "SocialNetworkData", "GleambookUsers", FALSE, FALSE, 1, $$35, 1, $$36, TRUE, TRUE, TRUE)
                                                                        -- BTREE_SEARCH  |PARTITIONED|
                                                                          exchange
                                                                          -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                            assign [$$35, $$36] <- [datetime: { 2013-04-16T09:45:46.000Z }, datetime: { 2013-04-16T09:45:46.000Z }]
                                                                            -- ASSIGN  |PARTITIONED|
                                                                              empty-tuple-source
                                                                              -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                                exchange
                                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                  project ([$$38])
                                                  -- STREAM_PROJECT  |PARTITIONED|
                                                    exchange
                                                    -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                      split ($$39)
                                                      -- SPLIT  |PARTITIONED|
                                                        exchange
                                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                          project ([$$38, $$39])
                                                          -- STREAM_PROJECT  |PARTITIONED|
                                                            exchange
                                                            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                              unnest-map [$$37, $$38, $$39] <- index-search("usrSinceIx", 0, "SocialNetworkData", "GleambookUsers", FALSE, FALSE, 1, $$35, 1, $$36, TRUE, TRUE, TRUE)
                                                              -- BTREE_SEARCH  |PARTITIONED|
                                                                exchange
                                                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                  assign [$$35, $$36] <- [datetime: { 2013-04-16T09:45:46.000Z }, datetime: { 2013-04-16T09:45:46.000Z }]
                                                                  -- ASSIGN  |PARTITIONED|
                                                                    empty-tuple-source
                                                                    -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
            exchange
            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
              project ([$$55])
              -- STREAM_PROJECT  |PARTITIONED|
                assign [$$55] <- [{"message_id": $$46}]
                -- ASSIGN  |PARTITIONED|
                  project ([$$46])
                  -- STREAM_PROJECT  |PARTITIONED|
                    exchange
                    -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                      split ($$47)
                      -- SPLIT  |PARTITIONED|
                        exchange
                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                          project ([$$29, $$46, $$47])
                          -- STREAM_PROJECT  |PARTITIONED|
                            exchange
                            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                              unnest-map [$$45, $$46, $$47] <- index-search("authorIdIx", 0, "SocialNetworkData", "GleambookMessages", TRUE, TRUE, 1, $$29, 1, $$29, TRUE, TRUE, TRUE)
                              -- BTREE_SEARCH  |PARTITIONED|
                                exchange
                                -- BROADCAST_EXCHANGE  |PARTITIONED|
                                  union ($$43, $$38, $$29)
                                  -- UNION_ALL  |PARTITIONED|
                                    exchange
                                    -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                      project ([$$43])
                                      -- STREAM_PROJECT  |PARTITIONED|
                                        select (eq($$33, datetime: { 2013-04-16T09:45:46.000Z }))
                                        -- STREAM_SELECT  |PARTITIONED|
                                          project ([$$43, $$33])
                                          -- STREAM_PROJECT  |PARTITIONED|
                                            assign [$$33] <- [$$44.getField(1)]
                                            -- ASSIGN  |PARTITIONED|
                                              exchange
                                              -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                unnest-map [$$43, $$44] <- index-search("GleambookUsers", 0, "SocialNetworkData", "GleambookUsers", FALSE, FALSE, 1, $$38, 1, $$38, TRUE, TRUE, TRUE)
                                                -- BTREE_SEARCH  |PARTITIONED|
                                                  exchange
                                                  -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                    split ($$39)
                                                    -- SPLIT  |PARTITIONED|
                                                      exchange
                                                      -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                        project ([$$38, $$39])
                                                        -- STREAM_PROJECT  |PARTITIONED|
                                                          exchange
                                                          -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                            unnest-map [$$37, $$38, $$39] <- index-search("usrSinceIx", 0, "SocialNetworkData", "GleambookUsers", FALSE, FALSE, 1, $$35, 1, $$36, TRUE, TRUE, TRUE)
                                                            -- BTREE_SEARCH  |PARTITIONED|
                                                              exchange
                                                              -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                                assign [$$35, $$36] <- [datetime: { 2013-04-16T09:45:46.000Z }, datetime: { 2013-04-16T09:45:46.000Z }]
                                                                -- ASSIGN  |PARTITIONED|
                                                                  empty-tuple-source
                                                                  -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
                                    exchange
                                    -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                      project ([$$38])
                                      -- STREAM_PROJECT  |PARTITIONED|
                                        exchange
                                        -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                          split ($$39)
                                          -- SPLIT  |PARTITIONED|
                                            exchange
                                            -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                              project ([$$38, $$39])
                                              -- STREAM_PROJECT  |PARTITIONED|
                                                exchange
                                                -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                  unnest-map [$$37, $$38, $$39] <- index-search("usrSinceIx", 0, "SocialNetworkData", "GleambookUsers", FALSE, FALSE, 1, $$35, 1, $$36, TRUE, TRUE, TRUE)
                                                  -- BTREE_SEARCH  |PARTITIONED|
                                                    exchange
                                                    -- ONE_TO_ONE_EXCHANGE  |PARTITIONED|
                                                      assign [$$35, $$36] <- [datetime: { 2013-04-16T09:45:46.000Z }, datetime: { 2013-04-16T09:45:46.000Z }]
                                                      -- ASSIGN  |PARTITIONED|
                                                        empty-tuple-source
                                                        -- EMPTY_TUPLE_SOURCE  |PARTITIONED|
      

      Attachments

        Activity

          People

            wangsaeu Taewoo Kim
            wyk Wail Y. Alkowaileet
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: