Changes between Version 2 and Version 3 of Import-Export


Ignore:
Timestamp:
02/29/12 15:55:43 (8 years ago)
Author:
branden
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Import-Export

    v2 v3  
    3232 
    3333== NEW: export_ack, export_scnl_ack == 
    34   This new version of export expects to receive an acknowledgment packet  for every packet it writes to the socket. Creation of this new version  was desired because we observed during the export of continuous trace data that during a communication failure, export was able to successfully write several messages to the (broken?) socket, but import never received them. When the socket was re-established, those messages were lost forever.  
     34This new version of export expects to receive an acknowledgment packet  for every packet it writes to the socket. Creation of this new version  was desired because we observed during the export of continuous trace data that during a communication failure, export was able to successfully write several messages to the (broken?) socket, but import never received them. When the socket was re-established, those messages were lost forever.  
    3535 
    36   Acknowledgments are received asynchronously by the socket-reading thread.  A circular buffer, !SendQueue, tracks the status of msgs after they been  pulled from the !MessageStacker queue. If the socket is broken/reconnected,  export*ack re-sends any msgs in the !SendQueue which haven't been  acknowledged. In normal operation, if export*ack laps the !SendQueue and  finds a message that has been sent but not ACKed, it will sleep 10ms and  then check status again, looping until an ACK is received before preparing  to send the next message.  
     36Acknowledgments are received asynchronously by the socket-reading thread.  A circular buffer, !SendQueue, tracks the status of msgs after they been  pulled from the !MessageStacker queue. If the socket is broken/reconnected,  export*ack re-sends any msgs in the !SendQueue which haven't been  acknowledged. In normal operation, if export*ack laps the !SendQueue and  finds a message that has been sent but not ACKed, it will sleep 10ms and  then check status again, looping until an ACK is received before preparing  to send the next message.  
    3737 
    38   The !SendQueue length is configurable, from 1 to 254 messages (default=100).   Using a shorter !SendQueue can cause a decrease in the rate at which export will send messages. A slower rate might be desireable so  that an import system is not flooded by data after a prolonged  communication break. In testing with export and import on the same  machine, these are export's approximate maximum data rates: 
     38The !SendQueue length is configurable, from 1 to 254 messages (default=100).   Using a shorter !SendQueue can cause a decrease in the rate at which export will send messages. A slower rate might be desireable so  that an import system is not flooded by data after a prolonged  communication break. In testing with export and import on the same  machine, these are export's approximate maximum data rates: 
    3939 
    4040{{{