Any Breaking changes in 9.0.1?
Posted: Wed 15 Sep 2021 14:21
Because I get an exception in Firebird only that takes down the app..
Discussion forums for open issues and questions concerning database tools, data access components and developer tools from Devart
https://forums.devart.com/
Hmm, I can reproduce it now simply by using a Query with DMLRefresh set to True.
Code: Select all
ACCESS_VIOLATION.
Code: Select all
TDSCommand(nil, nil, nil, $121E3330, ctUnknown, 'INSERT INTO SERVERSHARES'#$D#$A' (SERVERID, SHARE, ISIPC)'#$D#$A'VALUES'#$D#$A' (?, ?, ?)'#$D#$A'RETURNING '#$D#$A' ID, SERVERID, SHARE, ISIPC', 'INSERT INTO SERVERSHARES'#$D#$A' (SERVERID, SHARE, ISIPC)'#$D#$A'VALUES'#$D#$A' (?, ?, ?)'#$D#$A'RETURNING '#$D#$A' ID, SERVERID, SHARE, ISIPC', qtInsertReturning, $15E925E0, $15E8A040, True, (DBAccess.TCustomDADataSet.DoAfterExecute,$121E3330), True, False, False, True, cbNone, False, False, (Uni.TUniSQL.ReadParams,$122EC1C0), 1, 0, 0, 0, True, 8, 10, 16, True, True, False, True, False, 0, 0, 0, 0, (nil,nil), csExecuting, $A91E8F0, $15E925B0, $121F2DD0, nil, $15E8B000, $15E8B480, $A91E900, $15E694F0, $15E690D0, nil, nil, $12207730, $15ADA760)
Code: Select all
IBCClassesUni.TGDSCommand.InternalExecute Line:4181
IBCClassesUni.TGDSCommand.Execute
CRAccess.TCRRecordSet.ExecCommand(1,0)
IBCClassesUni.TGDSRecordSet.ExecCommand(1,0)
DBAccess.TCustomDADataSet.InternalExecute(1,0)
Uni.TCustomUniDataSet.InternalExecute(1,0)
DBAccess.TCustomDADataSet.Execute(1,0)
DBAccess.TCustomDADataSet.Execute
DBAccess.TDBAccessUtils.Execute($12256D90)
DBAccess.TDADataSetUpdater.UpdateExecute([stInsert])
DBAccess.TDADataSetUpdater.PerformSQL('',[stInsert])
DBAccess.TDADataSetUpdater.PerformAppend
IBCServicesUni.TCustomIBCDataSetUpdater.PerformAppend
MemDS.TDataSetUpdater.DoPerformAppend
MemDS.TMemDataSet.DoPerformAppend
MemData.TData.InternalAppend(???)
MemData.TMemData.InsertRecord($15A78290)
MemDS.TMemDataSet.InternalPost
DBAccess.TCustomDADataSet.InternalPost
:000000000093A583 TDataSet.CheckOperation + $43
:0000000000939E27 TDataSet.Post + $67
MemDS.TMemDataSet.Post
Hi Fred,FredS wrote: ↑Thu 16 Sep 2021 14:56Hmm, I can reproduce it now simply by using a Query with DMLRefresh set to True.
The original issue occurs in a Thread but I have a Query which executes in the main thread and the same problem.
Some details on the original issue:Code: Select all
ACCESS_VIOLATION.
Values in IBCClassesUni.TGDSCommand.InternalExecute Line:4181:Call Stack:Code: Select all
TDSCommand(nil, nil, nil, $121E3330, ctUnknown, 'INSERT INTO SERVERSHARES'#$D#$A' (SERVERID, SHARE, ISIPC)'#$D#$A'VALUES'#$D#$A' (?, ?, ?)'#$D#$A'RETURNING '#$D#$A' ID, SERVERID, SHARE, ISIPC', 'INSERT INTO SERVERSHARES'#$D#$A' (SERVERID, SHARE, ISIPC)'#$D#$A'VALUES'#$D#$A' (?, ?, ?)'#$D#$A'RETURNING '#$D#$A' ID, SERVERID, SHARE, ISIPC', qtInsertReturning, $15E925E0, $15E8A040, True, (DBAccess.TCustomDADataSet.DoAfterExecute,$121E3330), True, False, False, True, cbNone, False, False, (Uni.TUniSQL.ReadParams,$122EC1C0), 1, 0, 0, 0, True, 8, 10, 16, True, True, False, True, False, 0, 0, 0, 0, (nil,nil), csExecuting, $A91E8F0, $15E925B0, $121F2DD0, nil, $15E8B000, $15E8B480, $A91E900, $15E694F0, $15E690D0, nil, nil, $12207730, $15ADA760)
SQLMonitor:Code: Select all
IBCClassesUni.TGDSCommand.InternalExecute Line:4181 IBCClassesUni.TGDSCommand.Execute CRAccess.TCRRecordSet.ExecCommand(1,0) IBCClassesUni.TGDSRecordSet.ExecCommand(1,0) DBAccess.TCustomDADataSet.InternalExecute(1,0) Uni.TCustomUniDataSet.InternalExecute(1,0) DBAccess.TCustomDADataSet.Execute(1,0) DBAccess.TCustomDADataSet.Execute DBAccess.TDBAccessUtils.Execute($12256D90) DBAccess.TDADataSetUpdater.UpdateExecute([stInsert]) DBAccess.TDADataSetUpdater.PerformSQL('',[stInsert]) DBAccess.TDADataSetUpdater.PerformAppend IBCServicesUni.TCustomIBCDataSetUpdater.PerformAppend MemDS.TDataSetUpdater.DoPerformAppend MemDS.TMemDataSet.DoPerformAppend MemData.TData.InternalAppend(???) MemData.TMemData.InsertRecord($15A78290) MemDS.TMemDataSet.InternalPost DBAccess.TCustomDADataSet.InternalPost :000000000093A583 TDataSet.CheckOperation + $43 :0000000000939E27 TDataSet.Post + $67 MemDS.TMemDataSet.Post
https://imgur.com/a/O558SUF