django - 表记录异常增加:从订单 ID 54 到 86?
问题描述
我有一个托管在 Heroku 中的 DjangoApp。
有一段时间它工作得很好。
最近几天,我看到一个奇怪的“用户”注册了这封电子邮件:“accessto@hidebusiness.xyz”,姓名:“访问”,姓氏:“收件人”。
他/她注册了 2 次:首先是“accessto2”,然后是“accessto3”。
笔记:
用户“accessto2”和“accessto3”没有创建任何订单。所以他/她只改变了我的用户表而不是我的订单表。
在那之后,我的正常订单记录被更改了。在此事件之前,Order.id 增加了 1,但在此事件前后,它从 54 变为 86。为什么?
可能发生了什么?我该如何调试呢?
我需要确保它不会再次发生,因为似乎有订单未保存到数据库中。
解决方案
尝试创建新订单时,该事件可能导致回滚。
由于 Postgres 和 MySQL 不回滚 id 计数,因此下一个 Order 得到了失败的 id + 1,依此类推。
推荐阅读
- python - 如何在 youtube 上搜索某些内容并将搜索结果保存在记事本中,所有这些都在后台?
- javascript - 如何分离组件和容器?
- c# - 如何突出显示作为对象属性的字符串?
- c++ - 我的应用程序是从 Visual Studio 内部运行还是通过执行 EXE 文件运行
- android - 如何在通知 Onclick android 上进行特定活动?默认它转到启动器活动/ MainActivity。这个怎么做?
- gtk2 - 如何在 NixOS 上安装 libgtk2.0-dev?
- r - 如何计算R中数据集中排列的发生?
- javascript - 如何在 php 和 html 中强制下载 googlevideo.com 链接
- php - 删除“?” 仅在 str_replace 的特定子目录中
- javascript - 如何创建卫星轨道并使用 SGP4 模型对其进行动画处理?