etch-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aaron Frueh (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ETCH-278) EtchPacketizer isn't able to receive multiple Packages in one Buffer
Date Fri, 07 Mar 2014 12:39:44 GMT

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

Aaron Frueh commented on ETCH-278:
----------------------------------

Thanks, you're completely right.

The problem I see is that after this happens the Buffer is corrupted. And we need to search
the remaining buffer for the SIG. If not, we lose all Packages until suddenly there is a package
with the Header at the beginning of the Package.

e.g.
| Hea | der | Data ............ | Header | Data | 

We got half a Header in the savedBuffer. The complete Header is defect because of a wrong
SIG, so we have to discard that package but we don't know if another Header is still existing
inside of the remaining buffer. Even worse the next Header could be split up again. 

Damaged Package:
| Hea | der | Data ............ | He |
Next Package:
| ader | Data .... | .......

I will extend my suggestion to solve that issue. But i'm really not sure if this is handled
correctly in the other etch-Bindings.

> EtchPacketizer isn't able to receive multiple Packages in one Buffer
> --------------------------------------------------------------------
>
>                 Key: ETCH-278
>                 URL: https://issues.apache.org/jira/browse/ETCH-278
>             Project: Etch
>          Issue Type: Bug
>          Components: binding-cpp
>    Affects Versions: 1.3.0
>            Reporter: Aaron Frueh
>            Priority: Critical
>         Attachments: 0001-HotFix-for-EtchPacketizer-receive-of-multiple-packag.patch
>
>
> The packetizer should be able to receive multiple Etch-Packages within one buffer. (see
also Etch-C-Binding)
> This can happen if the socket-receive is somehow blocked or delayed and the internal
socket buffer contains multiple packages.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message