Consultor Eletrônico



Kbase P64716: When reading data via a socket, random data corruption is ha
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   1/27/2004
Status: Unverified

FACT(s) (Environment):

Progress 9.1x

SYMPTOM(s):

Java application is sending large XML files to Progress via sockets

Randomly the data within the 4GL program is slightly corrupted

CAUSE:

The code in the applications read-response procedure is having a problem processing the data because the READ method is invoked using the READ-AVAILABLE option instead of READ-EXACT-NUM.  Basically, the code is not handling the possibility that more data may arrive between the time when GET-BYTES-AVAILABLE is invoked and when the READ method is invoked.

FIX:

Modify the source code to read exactly the number of bytes returned by the initial call to GET-BYTES-AVAILABLE.