[ 
https://issues.apache.org/jira/browse/DERBY-3567?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12585125#action_12585125
 ] 

Øystein Grøvlen commented on DERBY-3567:
----------------------------------------

I think forceFlush also needs to consider the stopShipping flag. If the flag is 
set, the log shipper thread may exit its loop without notifying the waiting 
thread.  This will cause an unecessary delay of a waiting user thread.

> AsynchronousLogShipper#forceFlush should time out
> -------------------------------------------------
>
>                 Key: DERBY-3567
>                 URL: https://issues.apache.org/jira/browse/DERBY-3567
>             Project: Derby
>          Issue Type: Bug
>          Components: Replication
>    Affects Versions: 10.4.0.0, 10.5.0.0
>            Reporter: Jørgen Løland
>            Assignee: Jørgen Løland
>         Attachments: derby-3567-1a.diff, derby-3567-1a.stat, 
> derby-3567-1b.diff
>
>
> If the network connection to the slave is lost, 
> ObjectOutputStream#writeObject may be blocked for 2 minutes before failing 
> (not configurable TCP property). 
> Currently, ALS#forceFlush sends a chunk of log to the slave using the client 
> thread. The client thread cannot be blocked for 2 minutes before giving up. 
> Rather, it should notify the log shipper that it has to send log immediately, 
> and then wait for a short while (until notified or e.g. maximum 5 seconds). 
> If the log shipper has not been able to empty some space in the log buffer by 
> then, replication should be stopped.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to