草庐IT

TRANSACTIONS

全部标签

mongodb - 带有重试的 Mongo go 驱动程序事务实现

我正在尝试在mongodb中构建具有重试功能的事务,类似于nodejs等其他驱动程序。这是我当前的实现ifsession,err=client.StartSession();err!=nil{returnerr}iferr=session.StartTransaction();err!=nil{returnerr}iferr=mongo.WithSession(ctx,session,func(scmongo.SessionContext)error{ifresult,err=collection.UpdateOne(sc,bson.M{"_id":id},update);err!=n

postgresql - Golang、postgres事务: pq: unexpected transaction status in a failed transaction

Go:v1.3db:postgres使用lib/pq我有一个更新postgres数据库的应用程序。postgres数据库是使用pgbouncer设置的。因此,通过事件连接,我有运行插入和更新的代码。这是插入代码:func(sitemap*SiteMapData)InsertSiteMap(dbConnection*sql.DB)(int64,error){tx,err:=dbConnection.Begin()iferr!=nil{l4g.Error("InsertSiteMap:couldnotbeingtransaction:%v",err)return0,err}result,e

mysql - 当 Golang 程序在进行数据库事务时终止,它可以回滚吗?

假设MariaDB兼容数据库(AWSAuroraRDS)具有默认设置,其中包括启用自动提交,如果Lambda函数在三秒后终止,则执行一个需要花费的事务超过五秒,例如tx,err:=h.db.Begin()iferr!=nil{log.WithError(err).Error("failedtostarttransaction")}res,execErr:=tx.Exec(fmt.Sprintf("UPDATEtesttableSETval=%dWHEREid=1;SELECTSLEEP(5.5);",time.Now().Unix()))ifexecErr!=nil{log.WithE

go - 有没有支持交易的 Kafka Go 客户端?

我需要使用支持Kafka事务的客户端库。我知道Java有事务API来支持事务,但如果这些API在Go中可用,我会更喜欢。如果我们有任何稳定的库可用于原子写入多个分区,请告诉我。 最佳答案 我不认为这是目前可用的。librdkafka库目前正在更新以支持它,然后golang客户端也会从那里更新。 关于go-有没有支持交易的KafkaGo客户端?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/quest

xml - 如何解决 Marklogic 中的 'Conflicting Update' 错误

我正在使用一个函数,我必须使用xdmp:node-replace()或使用mem:node-更新(XML的内容)文档及其属性替换()。我收到错误冲突更新错误。我也尝试过使用xdmp:spawn-function(),但查询没有执行(即即使在使用节点替换后也没有变化)。谁能帮助我了解如何使用spawn-function()或相关函数? 最佳答案 这是MarkLogic8.0中的一个已知错误,它阻止在同一事务中使用xdmp:node-insert和属性更新。解决方法是使用单独的事务,或xdmp:document-insert(可能利用m

xml - 什么是 XML 命名空间,它与 Spring Transactions 有什么关系?

我刚刚浏览了一个spring事务教程,其中提到有一些元素可用于声明式事务管理,它们是在tx命名空间中定义的。tx命名空间实际包含什么。它在哪里定义,注册等?为什么我需要命名空间?我想了解一般的命名空间,而不仅仅是特定于tx命名空间。 最佳答案 安XMLnamespace只是一个标记,由于缺乏更好的描述,它标识特定标签或属性的“版本”。这个想法是为了防止冲突,例如,如果您将XML与由多个人/程序/标准机构/等定义的元素一起使用。例如,我编写的一个使用xml的程序可能使用命名空间http://www.ttdi.us/xml/myapp.

sql-server - T-SQL 替换 XML 节点

我想用新节点替换XML节点。我正在尝试使其动态化,因此替换节点名称是一个变量DECLARE@xmlSourceASXML='Thisinformationshouldbegone'DECLARE@xmlInsertASXML='NewInformation'DECLARE@NodeNameNVARCHAR(500)='ReplaceMe'生成的XML应该如下所示:NewInformation 最佳答案 没有直接的方法可以用另一个节点替换一个完整的节点。但是你可以删除它并插入新的:DECLARE@xmlSourceASXML='Thi

xml - XSLT:基于其他属性名称的特定属性值的总和

我有以下XML文档(由另一方提供)我想编写一个XSLT文档来转换这些行,并在相应的Tax*Type='11'的情况下对Tax*Value求和。这是否可以在不使用模板的情况下实现?XQuery中的name()、substring()等函数?您对此有何看法? 最佳答案 看看下面的XSLT:SumofTaxAwheretype=11:Sumofalltaxwheretype=11:它计算TaxAType=11的节点的TaxAValue总和以及Tax?Type=11的节点的所有Tax?Value的总和。

windows - 命令中不解析的变量

我有一个使用变量的windowscmd批处理文件,但是在设置变量后使用该变量的所有地方都失败了。这是我的批处理脚本:@echooffifexistTransactions.csv(setdatestr=%date:~10,4%%date:~7,2%%date:~4,2%%time:~0,2%%time:~3,2%%time:~6,2%renameTransactions.csvTransactions-%datestr%.csvcurl-s-ocurl.log--formupload=@Transactions-%datestr%.csvhttp://192.168.5.217/tes

windows - Windows 上的 SQLite DB 像互斥锁一样锁定且无需轮询

我有以下情况:一个进程正在从SQLite数据库中读取数据。另一个进程正在更新数据库。更新不会经常发生,所有交易都很短。(平均小于0.1ms)正在读取的进程对于查询应该具有低延迟。(大约0.1毫秒)如果SQLite的锁定像互斥锁或读写锁一样工作,一切都会好起来的。来自阅读http://www.sqlite.org/lockingv3.html这应该是可能的。SQLite正在使用LockFileEx(),有时没有LOCKFILE_FAIL_IMMEDIATELY,这会阻止调用根据需要进行处理。但是我不知道如何使用/配置SQLite来实现此行为。使用忙处理程序会涉及轮询,这是NotAccep