[ 
https://issues.apache.org/jira/browse/CASSANDRA-3668?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13267348#comment-13267348
 ] 

Sylvain Lebresne commented on CASSANDRA-3668:
---------------------------------------------

bq. What I wanted to do here is to prevent sending SESSION_FINISHED message 
multiple times as well.

Yes, but we must equally avoid to add multiple times the sstables to the CFS, 
which can happen if you reuse isClosed that way because when checking its value 
in closeIfFinished we don't set it at the same time atomically. What I'm 
suggesting is to move all the code that adds sstables and build 2ndary indexes 
to closeInternal (only in the case where it's successful) since close guarantee 
it is called only once, and then, we could make AbstractStreamSession.close 
return true if it did perform the closing, and false if it was already closed 
and return that value in closeIfFinished to avoid multiple send of 
SESSION_FINISHED.

bq. In addition, there is the problem in StreamOutSession that first stream in 
session does not contain all pending files in its stream header when stream in 
parallel.

Right, which means we have an additional problem: MessagingService.stream() is 
non-blocking, so it's possible another file is streamed before the first one 
has been started and thus before the session has been created on the receiving 
node. The problem is, the correct way to fix that would probably be to change 
streaming to 1) send the stream header and wait for the other node to 
acknowledge the reception and 2) start streaming files. But such change pretty 
much imply changing the target of this to 1.2.

Another option could be to wait for the first file to be streamed before 
starting other ones, but that would diminish the interest of this patch. Though 
I'm starting to wonder if it's really reasonable to push this to a "stable" 
release anyway.

                
> Performance of sstableloader is affected in 1.0.x
> -------------------------------------------------
>
>                 Key: CASSANDRA-3668
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-3668
>             Project: Cassandra
>          Issue Type: Bug
>          Components: API
>    Affects Versions: 1.0.0
>            Reporter: Manish Zope
>            Assignee: Yuki Morishita
>            Priority: Minor
>              Labels: streaming
>             Fix For: 1.1.1
>
>         Attachments: 3668-1.1-v2.txt, 3668-1.1.txt, 
> 3688-reply_before_closing_writer.txt, sstable-loader performance.txt
>
>   Original Estimate: 48h
>  Remaining Estimate: 48h
>
> One of my colleague had reported the bug regarding the degraded performance 
> of the sstable generator and sstable loader.
> ISSUE :- https://issues.apache.org/jira/browse/CASSANDRA-3589 
> As stated in above issue generator performance is rectified but performance 
> of the sstableloader is still an issue.
> 3589 is marked as duplicate of 3618.Both issues shows resolved status.But the 
> problem with sstableloader still exists.
> So opening other issue so that sstbleloader problem should not go unnoticed.
> FYI : We have tested the generator part with the patch given in 3589.Its 
> Working fine.
> Please let us know if you guys require further inputs from our side.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to