Marnix,
This seems to be a rather technical issue in which the server will try to use a previously defined savepoint in a transaction, but does this when the transaction is already closed. The savepoint is a restore point within a database transaction, so for example whit the following (pseudo) statements:
UPDATE attribute1= 1,
UPDATE attribute2 = 2,
CREATE savepoint abc,
UPDATE attribute3 =3
And then calling the restore savepoint in the same transaction would make sure all updates are rolled back up to the savepoint, so the changes to attribute 1 and 2 would be committed but the change to attribute3 would not be. Somehow your application or the driver connecting the app to the db calls a savepoint after the transaction being generated by the application server that generates the savepoint has been terminated. I don't know how Mendix uses savepoints in their code, but I would look at functionality that has error handling introduced or functions that would terminate transactions to find clues on what is going on and where.