Page 1 of 1

Any Breaking changes in 9.0.1?

Posted: Wed 15 Sep 2021 14:21
by FredS
Because I get an exception in Firebird only that takes down the app..

Re: Any Breaking changes in 9.0.1?

Posted: Wed 15 Sep 2021 19:33
by ViktorV
Hi Fred,

Thanks for your request I will gladly assist you further.

Please be informed that we were not able to reproduce the issue on our side using provided information.
In order to provide you with fast and correct reply please compose and send us small sample which demonstrates described behavior including scripts to create and fill-in database objects (or database file itself) using our contact form:
https://devart.com/company/contactform.html
As soon as we get this sample, we will start immediate investigation in order to find the solution faster.

Best regards,
Viktor

Re: Any Breaking changes in 9.0.1?

Posted: Thu 16 Sep 2021 13:42
by FredS
Some oddities while I setup to hunt down this issue:
  • ReadmeSrc.html has no Alexandria section
  • also still no section on how to make help work

Re: Any Breaking changes in 9.0.1?

Posted: Thu 16 Sep 2021 14:56
by FredS
ViktorV wrote: Wed 15 Sep 2021 19:33 we were not able to reproduce the issue on our side
Hmm, 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:

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)
Call Stack:

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
SQLMonitor:
https://imgur.com/a/O558SUF

Re: Any Breaking changes in 9.0.1?

Posted: Thu 16 Sep 2021 15:01
by FredS
The DMLRefresh which executes within the main thread has 10 parameters coming back in the RETURNING clause when all I need is one. Any way to refine this?

Re: Any Breaking changes in 9.0.1?

Posted: Fri 17 Sep 2021 14:40
by ViktorV
FredS wrote: Thu 16 Sep 2021 14:56
ViktorV wrote: Wed 15 Sep 2021 19:33 we were not able to reproduce the issue on our side
Hmm, 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:

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)
Call Stack:

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
SQLMonitor:
https://imgur.com/a/O558SUF
Hi Fred,

Thank you for contacting Devart and for your inquiry!

Unfortunately, we were unable to reproduce the issue in our environment based on the information you provided (https://imgur.com/96osR0v). So, in order to investigate the issue and find an appropriate solution faster, please send us a complete sample, including script, which will stably reproduce the issue in our environment.
Please try to create a sample demonstrating the behavior you specified, including scripts to create and populate database data and send it to us for review using our contact form:
https://devart.com/company/contactform.html

Should you have any questions, do not hesitate to ask!

Best regards,
Viktor