Bingz2 commented on PR #2585: URL: https://github.com/apache/incubator-seatunnel/pull/2585#issuecomment-1237013761
> > > > >  > > > > > You e2e test cases also have some problems, please check. > > > > > > > > > > > >  If I add this code, Excel sink Write's `finishAndCloseWriteFile` method will be called twice when executed with Flink, resulting in an error! > > > > However, if you remove this code and run it with Spark, Text sink Write is executed instead of Excel sink Write > > > > > > > > > Can you provide the detailed call stack information? > > > > > >   > > `SparkDataWriter's` `commit()` method clears `commitInfo` after execution, However, the `prepareCommit` of `FlinkSinkWrite` does not clear commitInfo, so it writes `ExcelWorkBook` when it calls the close() method of `FlinkSlinkWrite`, but it does the WorkBook when it executes `prepareCommit` It has been closed. I don't understand why SparkDataWriter and FlinkSinkWrite have different commit logic. Do I need to determine whether the workbook is close in `finishAndCloseWriteFile`? > > The reason already in comment: `combine the prepareCommit and commit in this method.`. Flink Support Committer and GlobalCommitter, but spark only support GlobalCommitter(same logic different name). So spark use commit() to run prepareCommit() and Committer.commit(). ok,My local E2E and compile passed, but CI/CD failed and I didn't use ES.  -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
