Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit cc9d712

Browse files
pass pool preference
1 parent d682d7f commit cc9d712

File tree

1 file changed

+21
-5
lines changed

1 file changed

+21
-5
lines changed

‎Sources/FluentPostgresDriver/PostgresConnection+Database.swift‎

Lines changed: 21 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,16 +19,20 @@ final class PostgresDatabaseDriver: DatabaseDriver {
1919
sql = PostgresReturning(sql)
2020
default: break
2121
}
22-
return self.pool.execute(sql: sql) { row in
23-
onRow(row as! PostgresRow)
22+
return self.pool.withConnection(eventLoop: database.eventLoopPreference.pool) { conn in
23+
conn.execute(sql: sql) { row in
24+
onRow(row as! PostgresRow)
25+
}
2426
}
2527
}
2628

2729
func execute(schema: DatabaseSchema, database: Database) -> EventLoopFuture<Void> {
2830
let sql = SQLSchemaConverter(delegate: PostgresConverterDelegate())
2931
.convert(schema)
30-
return self.pool.execute(sql: sql) { row in
31-
fatalError("unexpected output")
32+
return self.pool.withConnection(eventLoop: database.eventLoopPreference.pool) { conn in
33+
conn.execute(sql: sql) { row in
34+
fatalError("unexpected output")
35+
}
3236
}
3337
}
3438

@@ -43,7 +47,7 @@ extension PostgresDatabaseDriver: PostgresClient {
4347
}
4448

4549
func send(_ request: PostgresRequest) -> EventLoopFuture<Void> {
46-
return self.pool.withConnection { 0ドル.send(request) }
50+
return self.pool.withConnection(eventLoop:.indifferent) { 0ドル.send(request) }
4751
}
4852
}
4953

@@ -58,3 +62,15 @@ private struct PostgresReturning: SQLExpression {
5862
serializer.write(#" RETURNING id as "fluentID""#)
5963
}
6064
}
65+
66+
67+
extension EventLoopPreference {
68+
var pool: ConnectionPoolEventLoopPreference {
69+
switch self {
70+
case .delegate(on: let eventLoop):
71+
return .delegate(on: eventLoop)
72+
case .indifferent:
73+
return .indifferent
74+
}
75+
}
76+
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /