Hey Chris, I', not to deep into this, but I observed a "wrong magic byte..." or so error message from time to time last week. This came while working at the plc scraper when sending many requests (and cancling long running ones). Could this be a related problem?
Julian Am 28.11.18, 16:28 schrieb "Christofer Dutz" <[email protected]>: Hi all, today we started working on a first codecentric Plc4x POC using the Siemens S7 driver. Unfortunately we stumbled into a problem that will probably affect other drivers too. In the IsoOnTcpProtocol, I check if the packet starts with the IsoOnTcp magic number and if enough bytes have been read. I was expecting Netty to re-send the buffer, if I don’t consume it. This worked nicely in cases of slow networks. However in case of a fast network, Netty seems to chunk the responses into 512 byte chunks. If I don’t process these, they are not re-sent. Then the next call comes and it doesn’t detect the magic byte at the beginning and then an exception is thrown. I need to work out how to handle this case (Fast network and responses with a TCP payload greater than 512 bytes) I’m tracking things in PLC4X-76 - When receiving responses with more than 512 byte, the IsoOnTcp protocol doesn't work https://issues.apache.org/jira/browse/PLC4X-76 Think we should double check the other drivers as I’m expecting Netty to behave similarly in other drivers too. Chris
