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

Exception when using auto generated uuid primary key and socket feed

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: ING - Ingestion
    • Labels:
      None

      Description

      Following ddl with 'autogenerated' will cause indexOutOfBoundary exception at the SocketFeed part.

      drop dataverse feeds if exists;
      create dataverse feeds;
      use dataverse feeds;

      create type TwitterUser if not exists as open{
      screen-name: uuid
      };

      create dataset TwitterUsers1(TwitterUser) primary key screen-name autogenerated;
      create feed UserFeed1 using socket_adapter
      (
      ("sockets"="127.0.0.1:10001"),
      ("address-type"="IP"),
      ("type-name"="TwitterUser"),
      ("format"="adm")
      );
      use dataverse feeds;
      set wait-for-completion-feed "false";
      connect feed UserFeed1 to dataset TwitterUsers1

      The reason this happens is when SocketServerInputStream found no available bytes, it will trigger the TupleForwarder to flush all tuples. org/apache/asterix/external/input/stream/SocketServerInputStream.java:70

      This causes the indexOutOfBoundary exception at org/apache/asterix/external/util/FeedUtils.java:123

      Same ddl without 'autogenerated' will work properly.

        Attachments

          Activity

            People

            • Assignee:
              idleft Xikui Wang
              Reporter:
              idleft Xikui Wang
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: