You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@plc4x.apache.org by "Łukasz Dywicki (Jira)" <ji...@apache.org> on 2021/09/06 10:52:00 UTC

[jira] [Updated] (PLC4X-311) ADS driver lost with short replies for read requests

     [ https://issues.apache.org/jira/browse/PLC4X-311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Łukasz Dywicki updated PLC4X-311:
---------------------------------
    Description: 
I began testing functionality which did work with ADS driver in 0.6 release. Part of the test was reading address {{0xf00f/0x0}} (it is elsewhere referred as {{SYM_UPLOADINFO2}}) which returns up to 24 bytes of data. First 4 is symbol count, next 4 is symbol list length. Not sure what are remaining ones.
I made an attempt to read less than 24 bytes. All requests which query below 24 bytes get response which do not contain index group and offset.
I attach PCAP which clearly indicates issue.

Actual code:
{code:lang=java}
PlcConnection = new PlcDriverManager().getConnection("ads:tcp://...");
ReadRequestBuilder readRequestBuilder = plcConnection.readRequestBuilder();
PlcReadRequest request = readRequestBuilder
     // change array size to 23 to face the issue
    .addItem("symbol", "0xf00f/0x0:BYTE[24]").build();
PlcReadResponse rsp = request.execute().whenComplete((r, e) -> {
    if (e != null) {
        e.printStackTrace();
    } else {
        dump(r);
    }
}).get();
{code}

  was:
I began testing functionality which did work with ADS driver in 0.6 release. Part of the test was reading address {{0xf00f/0x0}} (it is elsewhere referred as {{SYM_UPLOADINFO2}}) which returns up to 24 bytes of data. First 4 is symbol count, next 4 is symbol list length. Not sure what are remaining ones.
I made an attempt to read less than 24 bytes. All requests which query below 24 bytes get response which do not contain index group and offset.
I attach PCAP which clearly indicates issue.


> ADS driver lost with short replies for read requests
> ----------------------------------------------------
>
>                 Key: PLC4X-311
>                 URL: https://issues.apache.org/jira/browse/PLC4X-311
>             Project: Apache PLC4X
>          Issue Type: Bug
>          Components: Driver-ADS
>    Affects Versions: 0.9.0
>            Reporter: Łukasz Dywicki
>            Priority: Major
>              Labels: regresion
>         Attachments: amsads-shortanswer.pcapng
>
>
> I began testing functionality which did work with ADS driver in 0.6 release. Part of the test was reading address {{0xf00f/0x0}} (it is elsewhere referred as {{SYM_UPLOADINFO2}}) which returns up to 24 bytes of data. First 4 is symbol count, next 4 is symbol list length. Not sure what are remaining ones.
> I made an attempt to read less than 24 bytes. All requests which query below 24 bytes get response which do not contain index group and offset.
> I attach PCAP which clearly indicates issue.
> Actual code:
> {code:lang=java}
> PlcConnection = new PlcDriverManager().getConnection("ads:tcp://...");
> ReadRequestBuilder readRequestBuilder = plcConnection.readRequestBuilder();
> PlcReadRequest request = readRequestBuilder
>      // change array size to 23 to face the issue
>     .addItem("symbol", "0xf00f/0x0:BYTE[24]").build();
> PlcReadResponse rsp = request.execute().whenComplete((r, e) -> {
>     if (e != null) {
>         e.printStackTrace();
>     } else {
>         dump(r);
>     }
> }).get();
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)