diff --git a/src/main/java/org/springframework/data/jdbc/core/function/DefaultDatabaseClient.java b/src/main/java/org/springframework/data/jdbc/core/function/DefaultDatabaseClient.java index 5066cb2..1385ff6 100644 --- a/src/main/java/org/springframework/data/jdbc/core/function/DefaultDatabaseClient.java +++ b/src/main/java/org/springframework/data/jdbc/core/function/DefaultDatabaseClient.java @@ -933,7 +933,7 @@ class DefaultDatabaseClient implements DatabaseClient, ConnectionAccessor { @Override public Mono then() { - return Mono.from(objectToInsert).map(toInsert -> exchange(toInsert, (row, md) -> row).all()).then(); + return Mono.from(objectToInsert).flatMapMany(toInsert -> exchange(toInsert, (row, md) -> row).all()).then(); } @Override @@ -977,8 +977,9 @@ class DefaultDatabaseClient implements DatabaseClient, ConnectionAccessor { return statement; }; - Function> resultFunction = it -> Flux - .from(insertFunction.apply(it).executeReturningGeneratedKeys()); + Function> resultFunction = it -> { + return Flux.from(insertFunction.apply(it).executeReturningGeneratedKeys()); + }; return new DefaultSqlResult<>(DefaultDatabaseClient.this, // sql, //