You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by GitBox <gi...@apache.org> on 2022/07/22 10:03:44 UTC

[GitHub] [doris-flink-connector] yeyudefeng opened a new pull request, #50: 解决setMaxRetries(0)导致的异常

yeyudefeng opened a new pull request, #50:
URL: https://github.com/apache/doris-flink-connector/pull/50

   
   # Proposed changes
   
   Issue Number: close #Fix bug when maxRetry is set to 0
   
   ## Problem Summary:
   
   When using Doris Flink connector, if the retry is set to 0, 100% of the error will be reported.
   the version is : 
   
           <dependency>
               <groupId>org.apache.doris</groupId>
               <artifactId>flink-doris-connector-1.14_2.12</artifactId>
               <version>1.1.0</version>
           </dependency>
   
   
   for example :
   
   DorisExecutionOptions.builder().setMaxRetries(0);
   
   error: 
   
   Caused by: TimerException{org.apache.doris.flink.exception.DorisRuntimeException: stream load error: null}
   	... 14 more
   Caused by: org.apache.doris.flink.exception.DorisRuntimeException: stream load error: null
   	at org.apache.doris.flink.sink.committer.DorisCommitter.commitTransaction(DorisCommitter.java:107)
   	at org.apache.doris.flink.sink.committer.DorisCommitter.commit(DorisCommitter.java:71)
   	at org.apache.flink.streaming.runtime.operators.sink.StreamingCommitterHandler.commit(StreamingCommitterHandler.java:54)
   	at org.apache.flink.streaming.runtime.operators.sink.AbstractStreamingCommitterHandler.retry(AbstractStreamingCommitterHandler.java:96)
   	at org.apache.flink.streaming.runtime.operators.sink.AbstractCommitterHandler.retry(AbstractCommitterHandler.java:66)
   	at org.apache.flink.streaming.runtime.operators.sink.CommitRetrier.retry(CommitRetrier.java:80)
   	at org.apache.flink.streaming.runtime.operators.sink.CommitRetrier.lambda$retryAt$0(CommitRetrier.java:63)
   	at org.apache.flink.streaming.runtime.tasks.StreamTask.invokeProcessingTimeCallback(StreamTask.java:1693)
   	... 13 more
   
   Reason:
   
   	If the maxRetry is set to 0, the while loop in the committransaction method will never enter.
   	statusCode != 200 will be true forever, and throw exception.
   	so I change the code, modify the code 'retry++ < maxRetry' as 'retry++ <= maxRetry' 
   
       private void commitTransaction(DorisCommittable committable) throws IOException {
           int statusCode = -1;
           String reasonPhrase = null;
           int retry = 0;
           String hostPort = committable.getHostPort();
           CloseableHttpResponse response = null;
           while (retry++ <= maxRetry) {
                    
               }
           if (statusCode != 200) {
               throw new DorisRuntimeException("stream load error: " + reasonPhrase);
           }
       }
   	
   	
   
   
   ## Checklist(Required)
   
   1. Does it affect the original behavior: I Don't know
   2. Has unit tests been added: No
   3. Has document been added or modified: Yes
   4. Does it need to update dependencies: No
   5. Are there any changes that cannot be rolled back: No
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


[GitHub] [doris-flink-connector] hf200012 merged pull request #50: [Bug] Solve the exception caused by MaxRetries = 0

Posted by GitBox <gi...@apache.org>.
hf200012 merged PR #50:
URL: https://github.com/apache/doris-flink-connector/pull/50


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org