You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Electric loads entire transactions from Postgres logical replication into memory before starting to write to shape logs. For very large transactions this might exhaust memory, crashing the server.
While we don't have a way to handle arbitrarily large transactions, we shall set a limit to the amount of memory a transaction can use and throw an erros.
Handling errors is not trivial, since Electric can't continue consuming the replication stream. Dropping all shapes and recreating the replication slot might be a way of getting out of that state.
Exhausting memory shouldn't happen very often and does not affect initial sync of shapes
The text was updated successfully, but these errors were encountered:
Nice — yeah if we can't handle it gracefully then we really have no alternative but to dropping the transaction and killing all shapes and starting over.
We could probably set the limit based on the amount of memory of the server? If someone has trouble with big transactions then the fix is just getting a bigger box.
Electric loads entire transactions from Postgres logical replication into memory before starting to write to shape logs. For very large transactions this might exhaust memory, crashing the server.
While we don't have a way to handle arbitrarily large transactions, we shall set a limit to the amount of memory a transaction can use and throw an erros.
Handling errors is not trivial, since Electric can't continue consuming the replication stream. Dropping all shapes and recreating the replication slot might be a way of getting out of that state.
Exhausting memory shouldn't happen very often and does not affect initial sync of shapes
The text was updated successfully, but these errors were encountered: