ODAC 9.6.20
Delphi XE8
Oracle 11.2.0.3.0
We have got error: "Unknown error 1"
Error stack:
Code: Select all
exception number : 1
exception class : EOraError
exception message : Unknown error 1.
main thread ($1f10):
0083de22 +1ca Project17.exe OraClasses 2403 +48 TOCIConnection.OraError
00867831 +02d Project17.exe OraClasses 17759 +2 TOCITransaction.Check
00868408 +0b0 Project17.exe OraClasses 17950 +12 TOCITransaction.CommitLocal
00867f5f +023 Project17.exe OraClasses 17889 +1 TOCITransaction.StartTransactionLocal
00868ac8 +108 Project17.exe OraClasses 18091 +14 TOCITransaction.StartTransaction
007c33c5 +121 Project17.exe DBAccess 17799 +25 TDATransaction.StartTransaction
0087c04c +090 Project17.exe OraTransaction 369 +12 TOraTransaction.StartTransaction
0087bfb4 +00c Project17.exe OraTransaction 353 +1 TOraTransaction.StartTransaction
008897b6 +05a Project17.exe Ora 2554 +7 TOraSession.StartTransaction
00889754 +010 Project17.exe Ora 2541 +1 TOraSession.StartTransaction
008aa4be +03e Project17.exe Unit13 48 +2 TForm13.Button1Click
00656a67 +073 Project17.exe Vcl.Controls 7361 +9 TControl.Click
005a541a +01e Project17.exe Vcl.StdCtrls 5327 +3 TCustomButton.Click
005a5f28 +010 Project17.exe Vcl.StdCtrls 5788 +1 TCustomButton.CNCommand
006564f9 +2bd Project17.exe Vcl.Controls 7245 +91 TControl.WndProc
0065b0a1 +5e9 Project17.exe Vcl.Controls 10079 +158 TWinControl.WndProc
005a50c4 +06c Project17.exe Vcl.StdCtrls 5164 +13 TButtonControl.WndProc
00656134 +024 Project17.exe Vcl.Controls 7023 +10 TControl.Perform
0065b207 +023 Project17.exe Vcl.Controls 10148 +12 DoControlMsg
0065bc8f +00b Project17.exe Vcl.Controls 10423 +1 TWinControl.WMCommand
006564f9 +2bd Project17.exe Vcl.Controls 7245 +91 TControl.WndProc
0065b0a1 +5e9 Project17.exe Vcl.Controls 10079 +158 TWinControl.WndProc
0065a6c0 +02c Project17.exe Vcl.Controls 9786 +3 TWinControl.MainWndProc
00534e80 +014 Project17.exe System.Classes 16882 +8 StdWndProc
77433a2e +13e user32.dll SendMessageW
77434522 +092 user32.dll CallWindowProcW
0065b1b2 +0e6 Project17.exe Vcl.Controls 10120 +30 TWinControl.DefaultHandler
00656ebc +010 Project17.exe Vcl.Controls 7494 +1 TControl.WMLButtonUp
006564f9 +2bd Project17.exe Vcl.Controls 7245 +91 TControl.WndProc
0065b0a1 +5e9 Project17.exe Vcl.Controls 10079 +158 TWinControl.WndProc
005a50c4 +06c Project17.exe Vcl.StdCtrls 5164 +13 TButtonControl.WndProc
0065a6c0 +02c Project17.exe Vcl.Controls 9786 +3 TWinControl.MainWndProc
00534e80 +014 Project17.exe System.Classes 16882 +8 StdWndProc
77433e4b +00b user32.dll DispatchMessageW
0062cb43 +0f3 Project17.exe Vcl.Forms 10421 +23 TApplication.ProcessMessage
0062cb86 +00a Project17.exe Vcl.Forms 10451 +1 TApplication.HandleMessage
0062ceb9 +0c9 Project17.exe Vcl.Forms 10589 +26 TApplication.Run
008badb9 +049 Project17.exe Project17 17 +4 initialization
76eb3742 +022 KERNEL32.DLL BaseThreadInitThunk
Code: Select all
program Project17;
uses
madExcept,
madLinkDisAsm,
Vcl.Forms,
Unit13 in 'Unit13.pas' {Form13};
{$R *.res}
begin
Application.Initialize;
Application.MainFormOnTaskbar := True;
Application.CreateForm(TForm13, Form13);
Application.Run;
end.
Code: Select all
object Form13: TForm13
Left = 0
Top = 0
Caption = 'Form13'
ClientHeight = 299
ClientWidth = 635
Color = clBtnFace
ParentFont = True
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object DBGrid1: TDBGrid
Left = 0
Top = 0
Width = 635
Height = 232
Align = alClient
DataSource = DataSource1
TabOrder = 0
TitleFont.Charset = DEFAULT_CHARSET
TitleFont.Color = clWindowText
TitleFont.Height = -11
TitleFont.Name = 'Tahoma'
TitleFont.Style = []
end
object Panel1: TPanel
Left = 0
Top = 232
Width = 635
Height = 67
Align = alBottom
TabOrder = 1
object Button1: TButton
Left = 264
Top = 24
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
end
object OraSession1: TOraSession
Options.Direct = True
AutoCommit = False
Left = 96
Top = 48
end
object OraTransaction1: TOraTransaction
DefaultSession = OraSession1
Left = 192
Top = 48
end
object SmartQuery1: TSmartQuery
UpdatingTable = 'EMP'
KeyFields = 'EMPNO'
Session = OraSession1
SQL.Strings = (
'select * from emp'
'where ENAME like :ENAME')
LockMode = lmNone
Left = 296
Top = 32
ParamData = <
item
DataType = ftString
Name = 'ENAME'
Value = ''
end>
end
object DataSource1: TDataSource
DataSet = OraQuery2
Left = 104
Top = 112
end
object OraQuery2: TOraQuery
Session = OraSession1
SQL.Strings = (
'select * from emp')
Active = True
Left = 448
Top = 80
end
end
Code: Select all
unit Unit13;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.StdCtrls, Vcl.ExtCtrls,
Vcl.Grids, Vcl.DBGrids, MemDS, DBAccess, Ora, OraTransaction, OraCall,
OraSmart, odacvcl;
type
TForm13 = class(TForm)
OraSession1: TOraSession;
OraTransaction1: TOraTransaction;
SmartQuery1: TSmartQuery;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
Panel1: TPanel;
Button1: TButton;
OraQuery2: TOraQuery;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
end;
var
Form13: TForm13;
implementation
{$R *.dfm}
procedure TForm13.Button1Click(Sender: TObject);
begin
try
OraSession1.StartTransaction;
try
if not SmartQuery1.Prepared then
SmartQuery1.Prepare;
SmartQuery1.ParamByName('ENAME').AsString := '%A%';
SmartQuery1.Open;
SmartQuery1.Edit;
SmartQuery1.FieldByName('ENAME').AsString := 'test'+ SmartQuery1.FieldByName('ENAME').AsString;
SmartQuery1.Post;
OraSession1.Commit;
except
OraSession1.Rollback;
raise;
end;
finally
SmartQuery1.Close;
end;
OraQuery2.Close;
OraQuery2.Open;
end;
procedure TForm13.FormCreate(Sender: TObject);
begin
OraSession1.Open;
OraQuery2.Open;
end;
end.
Run application on remote db server (we have CISCO routers and CheckPoint gateways between client and server)
Wait minimum 1 hour
Click "Button1" -> Unknown error 1
if Oracle Database run on localhost all work fine
if use ODAC 9.5.15 all work fine on remote db and local db
if use ODAC 9.5.16 error the same
Thanks