Eu estava tendo um problema semelhante agora.
Depois de mais pesquisas, percebi que tinha esquecido de fazer um
connection.commit()
após a exclusão, ou, como encontrei em outro lugar, você pode simplesmente fazer cursor.execute("set autocommit = 1")
antes de fazer qualquer outra operação de dados para tê-los automaticamente confirmados imediatamente, se você não precisar de controle sobre os commits das transações. Este poderia ter sido o problema com o código do Cmag, embora sem ver mais, seja difícil dizer.