I'm using SQLite3 database, associated to a QSqlTableModel, which is the model of a QTreeView (no multilevel children, only a list) and it has a very poor the performance (the worst) on Windows, but, the same code has the expected performance on FreeBSD (I don't tested on macOs nor Linux, but, maybe it is the same as on FreeBSD because they are UNIX-like).
On FreeBSD I can use 'setEditStrategy(QSqlTableModel::OnFieldChange)' that everything is smooth. On Windows, It even freezes the QMainWindow. I need to change to 'setEditStrategy(QSqlTableModel::OnManualSubmit)' in order to have a smooth behavior. Another thing is 'model.removeRow()' doesn't remove the row from the QTreeView and I believe that it has to be removed because I'm ordering it.
I'm willing to contribute with you guys to give you all information you need in order to locate the bug and fix them for the next version of Qt.