private boolean insertJobExecutionEvent()

in ecosystem/tracing/rdb/src/main/java/org/apache/shardingsphere/elasticjob/tracing/rdb/storage/repository/RDBJobEventRepository.java [195:218]


    private boolean insertJobExecutionEvent(final JobExecutionEvent event) {
        boolean result = false;
        try (
                Connection connection = dataSource.getConnection();
                PreparedStatement preparedStatement = connection.prepareStatement(sqlMapper.getInsertForJobExecutionLog())) {
            preparedStatement.setString(1, event.getId());
            preparedStatement.setString(2, event.getJobName());
            preparedStatement.setString(3, event.getTaskId());
            preparedStatement.setString(4, event.getHostname());
            preparedStatement.setString(5, event.getIp());
            preparedStatement.setInt(6, event.getShardingItem());
            preparedStatement.setString(7, event.getSource().toString());
            preparedStatement.setBoolean(8, event.isSuccess());
            preparedStatement.setTimestamp(9, new Timestamp(event.getStartTime().getTime()));
            preparedStatement.execute();
            result = true;
        } catch (final SQLException ex) {
            if (!isDuplicateRecord(ex)) {
                // TODO log failure directly to output log, consider to be configurable in the future
                log.error(ex.getMessage());
            }
        }
        return result;
    }