I suggest we add a warning similar to the UnorderedObjectListWarning when total deterministic ordering is not specified (PK or unique/unique_together not null fields).
The consequence of this change is that a lot of projects will receive a warning. This issue is easy to overlook since non-unique columns like "name" can have mostly unique values and you need to have duplicates at the page borders to get into trouble. While seemingly hard to reproduce, I believe it impacts a lot of production systems out there.
Correctly handling it requires some thought, especially when exposing sorting options to the end user. Whether 3rd-party tools like django-sortable-listview or DRF (OrderingFilter) should automatically enforce the correct ordering by adding "pk"? This brings problems with indexing like in this ticket. Another option with these tools is adding pk or another unique field to the query string when specifying desired sorting, which looks just wrong to me, pushing responsibility to the front end.
What do you folks think? I've been bitten by this issue several times, in a production environment after smoothly running for a while. The first time was a complete surprise to me, and I believe it's may surprise quite a lot of developers as well, so adding a warning will at least bring the attention.