apex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vlad Rozov (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (APEXCORE-640) BufferServer - purge crashes when the window purged is the last available
Date Thu, 09 Feb 2017 15:27:42 GMT

    [ https://issues.apache.org/jira/browse/APEXCORE-640?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15859652#comment-15859652
] 

Vlad Rozov commented on APEXCORE-640:
-------------------------------------

The code in the BufferServer that handles the case when all data published so far is purged
needs to be re-written. The purpose of SerializedData object is not clear. The exception thrown
by the Slice initialization is on purpose, as SerialziedData object is invalid.

> BufferServer - purge crashes when the window purged is the last available
> -------------------------------------------------------------------------
>
>                 Key: APEXCORE-640
>                 URL: https://issues.apache.org/jira/browse/APEXCORE-640
>             Project: Apache Apex Core
>          Issue Type: Bug
>            Reporter: Sandesh
>            Assignee: Sandesh
>            Priority: Minor
>
> While working on the unit test of BufferServer saw this behavior, 
> purge on the last window in the buffer server crashes it.
> {noformat}
> java.lang.IllegalArgumentException: Invalid slice: offset=2118, length=0 array.length=4096
> 	at com.datatorrent.netlet.util.Slice.<init>(Slice.java:43)
> 	at com.datatorrent.bufferserver.util.SerializedData.<init>(SerializedData.java:40)
> 	at com.datatorrent.bufferserver.internal.DataList$Block.purge(DataList.java:712)
> 	at com.datatorrent.bufferserver.internal.DataList.purge(DataList.java:192)
> 	at com.datatorrent.bufferserver.server.Server.handlePurgeRequest(Server.java:199)
> 	at com.datatorrent.bufferserver.server.Server.access$1100(Server.java:65)
> 	at com.datatorrent.bufferserver.server.Server$UnidentifiedClient.onMessage(Server.java:526)
> 	at com.datatorrent.netlet.AbstractLengthPrependerClient.read(AbstractLengthPrependerClient.java:149)
> 	at com.datatorrent.netlet.AbstractClient.read(AbstractClient.java:104)
> 	at com.datatorrent.netlet.DefaultEventLoop.handleSelectedKey(DefaultEventLoop.java:364)
> 	at com.datatorrent.netlet.OptimizedEventLoop$SelectedSelectionKeySet.forEach(OptimizedEventLoop.java:59)
> 	at com.datatorrent.netlet.OptimizedEventLoop.runEventLoop(OptimizedEventLoop.java:192)
> 	at com.datatorrent.netlet.OptimizedEventLoop.runEventLoop(OptimizedEventLoop.java:157)
> 	at com.datatorrent.netlet.DefaultEventLoop.run(DefaultEventLoop.java:156)
> 	at java.lang.Thread.run(Thread.java:745)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message