如何解决PostgreSQL 问题源代码和 PgAdmin 中的结果不同
我遇到了一个有趣的案例。我的应用程序中有工作人员服务和 Web 服务。工作实体状态(源代码中的枚举和数据库中的整数)在工作服务中(在后台)发生变化。 Web 服务中有一个端点可以返回一些信息,包括作业状态。我分配了断点,发现状态与PgAdmin中的状态不同。我以为原因在Dapper。但是我尝试了简单的 DataReader 并且行为是一样的。总之,PgAdmin 和运行时(C#、.NET Core)中的只读查询结果同时不同。我真的在这里挣扎。我在 PostgreSQL 中阅读了 MVCC。也许是因为它。但我不确定。
要点很简单:
1 - 通过使用 Dapper 更新 SQL 查询,在具有 ReadCommited 隔离级别的 TransactionScope 中更改状态 2 - 通过 Dapper / DataReader(不管)通过简单的选择查询(不在 TransactionScope 中)读取状态 3 - 通过简单的选择查询在 PgAdmin 中获得状态
总结:第 2 步状态不等于第 3 步状态
有什么想法吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。