Skip to content

New connection manager performance issues #543

Open
@adam-fowler

Description

@adam-fowler

Describe the issue

The new connection manager that PostgresClient uses has performance issues with lock contention

Vapor version

Not using

Operating system and version

MacOS 15.3.2 (24D81)

Swift version

Apple Swift version 6.0.3

Steps to reproduce

If PostgresClient is setup with a sizeable number of connections then it will lock the state of the connection manager for long periods as ConnectionGroup searches through the list of connections repeatedly using code like this

let index = self.connections.firstIndex(where: { $0.id == connection.id })
```

### Outcome

Its slow!!

### Additional notes

_No response_

Metadata

Metadata

Assignees

No one assigned

    Labels

    ConnectionPoolFeatures and bugs that are related to the impl in ConnectionPoolModulebugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions