[
https://issues.apache.org/jira/browse/ASTERIXDB-1588?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Xikui Wang updated ASTERIXDB-1588:
----------------------------------
Description:
Following ddl with 'autogenerated' will cause indexOutOfBoundary exception at
the SocketFeed part.
{quote}
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
{quote}
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.
was:
Following ddl with 'autogenerated' will cause indexOutOfBoundary exception at
the SocketFeed part.
{quote}
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
{quote}
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.
> Exception when using auto generated uuid primary key and socket feed
> --------------------------------------------------------------------
>
> Key: ASTERIXDB-1588
> URL: https://issues.apache.org/jira/browse/ASTERIXDB-1588
> Project: Apache AsterixDB
> Issue Type: Bug
> Components: Feeds
> Reporter: Xikui Wang
>
> Following ddl with 'autogenerated' will cause indexOutOfBoundary exception at
> the SocketFeed part.
> {quote}
> 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
> {quote}
> 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.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)