Skip to content

v1.13.0-pre1

Compare
Choose a tag to compare
@github-actions github-actions released this 23 Apr 12:45
· 103 commits to main since this release
7ba6405
fix: Stop locking catalog for every resources.

Historically, this provider takes a (golang) lock on a database for every resource of this database.
So only one create/update/delete of resource by database can be done at the same time.

(As it's a RWLock, read of resources can be parallelized)

Since #5 refactoring, I mistakenly change the lock which now takes a write lock even for read operations
(basically the plan part of Terraform). So provider was slower since v1.10

We could fix this and take a read lock for read operations as before but actually I don't see the point of this lock.
For me, most operations could be done at the same time.

Most of the request are now done in a transaction, the only risk is that a transaction will fail to commit
if multiple resources modifies the same database line.
That's the case for `postgresql_default_privileges`, one `pg_default_acl` row could represents multiple resources,
so this PR takes a lock on the owner role to avoid that.

This should make the provider way faster.

Fix #48