草庐IT

transaction_ISOLATION

全部标签

c# - Moles Isolation 框架是如何实现的?

Moles是微软创建的隔离框架。Moles的一个很酷的特性是它可以“模拟”静态/非虚拟方法和密封类(这对于像Moq这样的框架是不可能的)。下面是Moles可以做什么的快速演示:Assert.AreNotEqual(newDateTime(2012,1,1),DateTime.Now);//MDateTimeispartofMoles;thebelowwill"override"DateTime.Now'sbehaviorMDateTime.NowGet=()=>newDateTime(2012,1,1);Assert.AreEqual(newDateTime(2012,1,1),Dat

c# - "SqlConnection does not support parallel transactions"什么时候发生?

我有很多相当有效的代码已经在这里好几个月了,今天我看到记录了以下异常:System.InvalidOperationExceptionSqlConnectiondoesnotsupportparalleltransactions.atSystem.Data.SqlClient.SqlInternalConnection.BeginSqlTransaction(IsolationLeveliso,StringtransactionName)atSystem.Data.SqlClient.SqlConnection.BeginTransaction(IsolationLeveliso,St

c# - Database.BeginTransaction 与 Transactions.TransactionScope

这个问题在这里已经有了答案:C#System.TransactionsVsTransactionScope(1个回答)关闭去年。System.Transactions.TransactionScope和EF6的Database.BeginTransaction有什么区别?谁能举个小例子,或者只是解释一下在有明显区别的情况下使用哪一个?P.S:在我的项目中,我使用的是EF6。我已经阅读了文档,但没有太大帮助。还查看了示例,但他们宁愿使用SqlConnection.BeginTransaction,现在MS在EF6中引入了这个新的Database.BeginTransaction。

Could not open JDBC Connection for transaction; nested exception is java.sql.SQLException: url not s

org.springframework.transaction.CannotCreateTransactionException:CouldnotopenJDBCConnectionfortransaction;nestedexceptionisjava.sql.SQLException:urlnotset该问题是出现在使用spring将数据源配置文件引入到配置类里面的时候spring将数据源配置文件引入到配置类的两种方式方式一方式一:创建一个数据源配置类,引入spring的配置类(不会出现数据无法注入的问题)方式二方式二:在spring的配置类里面,直接引入外部的数据源配置文件,如果在成员变

mysql - 如何避免MySQL 'Deadlock found when trying to get lock; try restarting transaction'

我有一个记录在线用户的innoDB表。它会在用户每次刷新页面时更新,以跟踪他们所在的页面以及他们上次访问该站点的日期。然后我有一个每15分钟运行一次的cron来删除旧记录。我在尝试获取锁时发现了“死锁”;昨晚尝试重新启动事务约5分钟,似乎是在向该表运行INSERT时。有人可以建议如何避免此错误吗?===编辑===以下是正在运行的查询:首次访问网站:INSERTINTOonlineusersSETip=123.456.789.123,datetime=now(),userid=321,page='/thispage',area='thisarea',type=3在每个页面刷新:UPDAT

go - 数据存储 : Create parent and child entity in an entity group transaction?

阅读Google数据存储概念/理论后,我开始使用Godatastorepackage场景:User和LinkedAccount类型要求每个用户都有一个或多个链接帐户(是的第3方登录)。为了高度一致,LinkedAccounts将是关联用户的子级。然后创建新用户涉及创建一个用户和一个LinkedAccount,而不仅仅是一个。用户创建似乎是交易的完美用例。如果说LinkedAccount创建失败,则事务回滚失败。这目前看来是不可能的。目标是在事务中创建一个父项,然后再创建一个子项。根据文档AllDatastoreoperationsinatransactionmustoperateone

node.js - 升级到 Nodejs 8 和 "error: failed to commit transaction"

我正在尝试在我的archlinux中将我的nodejs6升级到8。所以我做了:$sudopacman-Snodejsnpm结果:resolvingdependencies...lookingforconflictingpackages...Packages(3)openssl-1.0-1.0.2.l-1nodejs-8.1.3-1npm-4.6.1-1TotalInstalledSize:39.22MiBNetUpgradeSize:6.79MiB::Proceedwithinstallation?[Y/n]y(3/3)checkingkeysinkeyring[###########

linux - Windows KTM 和 Transactional NTFS 是否有 Linux/Unix 等效项?

一段时间以来,Windows一直支持与文件的事务交互-使用KernelTransactionManager(MSKTM)和TransactionalNTFS.这些功能有助于对本地文件系统上的文件进行事务性更改。Linux/Unix是否具有相同的功能?是否有任何已发布的性能比较? 最佳答案 关于这个我没有明确的答案,但是基于ACID的文件系统讨论在Linux世界中已经进行了很长时间。或许您可以联系RichardSpillane,他是多篇关于该主题的论文的作者:AminoPDFEnablingTransactionalFileAcces

java - 使用 Transaction with JDBI/IDBI/Dropwizard -- 回滚问题

我在使用IDBI处理事务时遇到了很多麻烦。我们正在使用dropwizard框架,并且简单的插入、更新、选择和删除都可以找到,但现在我们似乎无法让事务正常工作。这是我正在尝试的方法publicclassJDb{privateJustinTest2jTest2=null;privateHandledbHandle=null;publicJDb(finalIDBIidbi){try{dbHandle=idbi.open();dbHandle.getConnection().setAutoCommit(false);jTest2=dbHandle.attach(JustinTest2.clas

mysql - 解决 MySQL 错误 "Deadlock found when trying to get lock; try restarting transaction"

我有一个MySQL表,其中包含大约5,000,000行,这些行通过DBI连接的并行Perl进程以小的方式不断更新。该表大约有10列和几个索引。一个相当常见的操作有时会导致以下错误:DBD::mysql::stexecutefailed:Deadlockfoundwhentryingtogetlock;tryrestartingtransactionatDb.pmline276.触发错误的SQL语句是这样的:UPDATEfile_tableSETa_lock='process-1234'WHEREparam1='X'ANDparam2='Y'ANDparam3='Z'LIMIT47该错误