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

ASF GitHub Bot commented on FLINK-2125:
---------------------------------------

Github user fhueske commented on a diff in the pull request:

    https://github.com/apache/flink/pull/1077#discussion_r39749641
  
    --- Diff: 
flink-staging/flink-streaming/flink-streaming-core/src/main/java/org/apache/flink/streaming/api/functions/source/SocketTextStreamFunction.java
 ---
    @@ -117,12 +122,13 @@ private void streamFromSocket(SourceContext<String> 
ctx, Socket socket) throws E
                                        continue;
                                }
     
    -                           if (data == delimiter) {
    -                                   ctx.collect(buffer.toString());
    -                                   buffer = new StringBuilder();
    -                           } else if (data != '\r') { // ignore carriage 
return
    -                                   buffer.append((char) data);
    +                           buffer.append(charBuffer, 0, readCount);
    +                           String[] splits = 
buffer.toString().split(delimiter);
    --- End diff --
    
    `String.split()` and `String.replace()` create new String objects which 
must be garbage collected. This adds quite some overhead, because these 
functions are called very often. The previous implementation was operating on a 
byte-level and avoiding the creation of new objects. It would be good if we 
could preserve this behavior.


> String delimiter for SocketTextStream
> -------------------------------------
>
>                 Key: FLINK-2125
>                 URL: https://issues.apache.org/jira/browse/FLINK-2125
>             Project: Flink
>          Issue Type: Improvement
>          Components: Streaming
>    Affects Versions: 0.9
>            Reporter: Márton Balassi
>            Priority: Minor
>              Labels: starter
>
> The SocketTextStreamFunction uses a character delimiter, despite other parts 
> of the API using String delimiter.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to