- Beiträge: 12
Flowheater stürtz beim Lesen ab
- K. May
- Autor
- Offline
- Benutzer
Weniger
Mehr
2 Jahre 8 Monate her #4523
von K. May
Flowheater stürtz beim Lesen ab wurde erstellt von K. May
Hallo Herr Stark,
wir haben Flowheater seit Jahren im Einsatz (Danke!!), aber haben nun eine Abfrage (Informix lesend, Excel schreibend) bei welcher
der Flowheater abstürzt:
Ich bin etwas ratlos, da der Flowheater bei unterschiedlichen Sätzen abstürzt (z.B. 10897, 10934, 10622).
Ansonsten würde ich auf Datenbankebene schauen, welcher Satz da stört, aber das variiert komischerweise
(die Daten auf Datenbankebene sind konstant!). Wie könnte ich das Problem eingrenzen / anpacken?
Mit freundlichem Gruß
K. May
wir haben Flowheater seit Jahren im Einsatz (Danke!!), aber haben nun eine Abfrage (Informix lesend, Excel schreibend) bei welcher
der Flowheater abstürzt:
Ich bin etwas ratlos, da der Flowheater bei unterschiedlichen Sätzen abstürzt (z.B. 10897, 10934, 10622).
Ansonsten würde ich auf Datenbankebene schauen, welcher Satz da stört, aber das variiert komischerweise
(die Daten auf Datenbankebene sind konstant!). Wie könnte ich das Problem eingrenzen / anpacken?
Mit freundlichem Gruß
K. May
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
2 Jahre 8 Monate her #4524
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Flowheater stürtz beim Lesen ab
Hallo Herr May,
das sieht für mich so aus als ob der verwendete Informix ODBC Datenbanktreiber hier ein Problem hat.
Zur weiteren Analyse bräuchte ich bitte etwas mehr Informationen.
das sieht für mich so aus als ob der verwendete Informix ODBC Datenbanktreiber hier ein Problem hat.
Zur weiteren Analyse bräuchte ich bitte etwas mehr Informationen.
- Ist diese Abfrage neue oder hat die Abfrage / Definition schon mal funktioniert?
- Falls die Abfrage neu ist, werden hier evtl. „komische“ Berechnungen, JOINS, etc. verwendet?
- Falls die Abfrage schon mal funktioniert hat wurde etwas geändert. z.B. aktualisierter ODBC Treiber, Windows Updates, etc.
- Bitte versuchen Sie mal die Abfrage im „Massdata“ Modus auszuführen. Hier wird etwas anders gelesen evtl. funktioniert es so.
- Wird im Windows Eventlog dazu was Protokolliert?
- Sie können mal Versuchen ein erweitertes TRACE einzuschalten, evtl. ist hier was zu erkennen. Hierzu in der Registry unter „HKEY_CURRENT_USER\Software\FlowHeater GmbH\FlowHeater V4“ einen REG_DWORD Eintrag „TRACE“ mit dem Wert 1 festlegen. Anschließend den FlowHeater neu starten und die Definition ausführen. Jetzt sollte im %TEMP% Verzeichnis eine Datei FlowHeater.log verfügbar sein. Hinweis: Diese Funktion ist ab Version 4.2.2 verfügbar.
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- K. May
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 12
2 Jahre 8 Monate her #4525
von K. May
K. May antwortete auf Flowheater stürtz beim Lesen ab
Hallo Herr Stark,
danke für die Infos!
A) Fehler 18.03.2022 09:20:55 .NET Runtime:
Application: FlowHeater.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at System.Data.Common.UnsafeNativeMethods.SQLGetData(System.Data.Odbc.OdbcStatementHandle, UInt16, SQL_C, System.Data.Odbc.CNativeBuffer, IntPtr, IntPtr ByRef)
at System.Data.Odbc.OdbcStatementHandle.GetData(Int32, SQL_C, System.Data.Odbc.CNativeBuffer, Int32, IntPtr ByRef)
at System.Data.Odbc.OdbcDataReader.GetData(Int32, SQL_C, Int32, Int32 ByRef)
at System.Data.Odbc.OdbcDataReader.internalGetString(Int32)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32, System.Data.Odbc.TypeMap)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32)
at System.Data.Odbc.OdbcDataReader.get_Item(System.String)
at FlowHeater.Core.Adapter.DatabaseAdapter.hI8dqX1zO4as3wCZ6Xkc(System.Object, System.Object)
at FlowHeater.Core.Adapter.DatabaseAdapter.Read(Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.yYEAs51pqZp36um1agX6(System.Object, Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.ReadRecord(Boolean)
at FlowHeater.Core.Fitter.RFYMmHUIWJ1DwZ3h4OU(System.Object, Boolean)
at FlowHeater.Core.Fitter.qWxjgHKccq(Int32)
at FlowHeater.Core.Fitter.DoWork(Int32)
at FlowHeater.Studio.WorkerThreadHelperClass.XuWj72QLv2OcgAuhlu9(System.Object, Int32)
at FlowHeater.Studio.WorkerThreadHelperClass.DoWork(System.Object)
at System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.ThreadHelper.ThreadStart(System.Object)
Fehler 18.03.2022 09:20:56 Application Error 1000 (100)
Name der fehlerhaften Anwendung: FlowHeater.exe, Version: 4.1.5.0, Zeitstempel: 0x5d0607c1
Name des fehlerhaften Moduls: iclit09b.dll, Version: 4.10.0.16374, Zeitstempel: 0x574f512aAusnahmecode: 0xc0000005
Fehleroffset: 0x0006a2c2
ID des fehlerhaften Prozesses: 0x190f8
Startzeit der fehlerhaften Anwendung: 0x01d83a9febfe645c
Pfad der fehlerhaften Anwendung: C:\Program Files (x86)\FlowHeater V4\BIN\FlowHeater.exe
Pfad des fehlerhaften Moduls: C:\Program Files (x86)\Informix Client-SDK\bin\iclit09b.dll
Berichtskennung: e57d6273-5e65-4915-9cac-6cc7ce616a44
Vollständiger Name des fehlerhaften Pakets:
Anwendungs-ID, die relativ zum fehlerhaften Paket ist:
danke für die Infos!
- Ist diese Abfrage neue oder hat die Abfrage / Definition schon mal funktioniert?
--> die Anfrage gibt es schon lange, aber nun wird zusätzlich ein CLOBs - Feld abgefragt.
- Falls die Abfrage neu ist, werden hier evtl. „komische“ Berechnungen, JOINS, etc. verwendet?
-->ja, aber diese sind unverändert.
- Falls die Abfrage schon mal funktioniert hat wurde etwas geändert. z.B. aktualisierter ODBC Treiber, Windows Updates, etc.
-->nein, nichts Neues in die Richtung
- Bitte versuchen Sie mal die Abfrage im „Massdata“ Modus auszuführen. Hier wird etwas anders gelesen evtl. funktioniert es so.
-->stürzt in beiden Modi ab.
- Wird im Windows Eventlog dazu was Protokolliert?
A) Fehler 18.03.2022 09:20:55 .NET Runtime:
Application: FlowHeater.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at System.Data.Common.UnsafeNativeMethods.SQLGetData(System.Data.Odbc.OdbcStatementHandle, UInt16, SQL_C, System.Data.Odbc.CNativeBuffer, IntPtr, IntPtr ByRef)
at System.Data.Odbc.OdbcStatementHandle.GetData(Int32, SQL_C, System.Data.Odbc.CNativeBuffer, Int32, IntPtr ByRef)
at System.Data.Odbc.OdbcDataReader.GetData(Int32, SQL_C, Int32, Int32 ByRef)
at System.Data.Odbc.OdbcDataReader.internalGetString(Int32)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32, System.Data.Odbc.TypeMap)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32)
at System.Data.Odbc.OdbcDataReader.get_Item(System.String)
at FlowHeater.Core.Adapter.DatabaseAdapter.hI8dqX1zO4as3wCZ6Xkc(System.Object, System.Object)
at FlowHeater.Core.Adapter.DatabaseAdapter.Read(Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.yYEAs51pqZp36um1agX6(System.Object, Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.ReadRecord(Boolean)
at FlowHeater.Core.Fitter.RFYMmHUIWJ1DwZ3h4OU(System.Object, Boolean)
at FlowHeater.Core.Fitter.qWxjgHKccq(Int32)
at FlowHeater.Core.Fitter.DoWork(Int32)
at FlowHeater.Studio.WorkerThreadHelperClass.XuWj72QLv2OcgAuhlu9(System.Object, Int32)
at FlowHeater.Studio.WorkerThreadHelperClass.DoWork(System.Object)
at System.Threading.ThreadHelper.ThreadStart_Context(System.Object)
at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
at System.Threading.ThreadHelper.ThreadStart(System.Object)
Fehler 18.03.2022 09:20:56 Application Error 1000 (100)
Name der fehlerhaften Anwendung: FlowHeater.exe, Version: 4.1.5.0, Zeitstempel: 0x5d0607c1
Name des fehlerhaften Moduls: iclit09b.dll, Version: 4.10.0.16374, Zeitstempel: 0x574f512aAusnahmecode: 0xc0000005
Fehleroffset: 0x0006a2c2
ID des fehlerhaften Prozesses: 0x190f8
Startzeit der fehlerhaften Anwendung: 0x01d83a9febfe645c
Pfad der fehlerhaften Anwendung: C:\Program Files (x86)\FlowHeater V4\BIN\FlowHeater.exe
Pfad des fehlerhaften Moduls: C:\Program Files (x86)\Informix Client-SDK\bin\iclit09b.dll
Berichtskennung: e57d6273-5e65-4915-9cac-6cc7ce616a44
Vollständiger Name des fehlerhaften Pakets:
Anwendungs-ID, die relativ zum fehlerhaften Paket ist:
- Sie können mal Versuchen ein erweitertes TRACE einzuschalten, evtl. ist hier was zu erkennen. Hierzu in der Registry unter „HKEY_CURRENT_USER\Software\FlowHeater GmbH\FlowHeater V4“ einen REG_DWORD Eintrag „TRACE“ mit dem Wert 1 festlegen. Anschließend den FlowHeater neu starten und die Definition ausführen. Jetzt sollte im %TEMP% Verzeichnis eine Datei FlowHeater.log verfügbar sein. Hinweis: Diese Funktion ist ab
Version 4.2.2
verfügbar.
--> bin noch bei 4.1, sorry.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
2 Jahre 8 Monate her #4527
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Flowheater stürtz beim Lesen ab
Hallo Herr May,
der verwendete Informix ODBC Treiber verursacht das Problem und lässt den FlowHeater abstürzen. Zu sehen einmal an dem Stack Trace, der letzte Eintrag ist hier „System.Data.Common.UnsafeNativeMethods.SQLGetData“ Hier befindet sich die Anwendung bzw. der Prozessor in der Routine die dann die Funktionen aus dem Informix ODBC Treiber aufruft.
Application: FlowHeater.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at System.Data.Common.UnsafeNativeMethods.SQLGetData(System.Data.Odbc.OdbcStatementHandle, UInt16, SQL_C, System.Data.Odbc.CNativeBuffer, IntPtr, IntPtr ByRef)
at System.Data.Odbc.OdbcStatementHandle.GetData(Int32, SQL_C, System.Data.Odbc.CNativeBuffer, Int32, IntPtr ByRef)
at System.Data.Odbc.OdbcDataReader.GetData(Int32, SQL_C, Int32, Int32 ByRef)
at System.Data.Odbc.OdbcDataReader.internalGetString(Int32)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32, System.Data.Odbc.TypeMap)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32)
at System.Data.Odbc.OdbcDataReader.get_Item(System.String)
at FlowHeater.Core.Adapter.DatabaseAdapter.hI8dqX1zO4as3wCZ6Xkc(System.Object, System.Object)
at FlowHeater.Core.Adapter.DatabaseAdapter.Read(Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.yYEAs51pqZp36um1agX6(System.Object, Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.ReadRecord(Boolean)
at FlowHeater.Core.Fitter.RFYMmHUIWJ1DwZ3h4OU(System.Object, Boolean)
at FlowHeater.Core.Fitter.qWxjgHKccq(Int32)
at FlowHeater.Core.Fitter.DoWork(Int32)
Legende) Grün = FlowHeater Funktionen, Blau = .NET Framework Funktionen
Zum anderen aus dem Eventlog Eintrag „Name des fehlerhaften Moduls: iclit09b.dll“. Die hier gemeldete iclit09b.dll ist eine DLL von Ihrem verwendeten Informix ODBC Treiber.
Name der fehlerhaften Anwendung: FlowHeater.exe, Version: 4.1.5.0, Zeitstempel: 0x5d0607c1
Name des fehlerhaften Moduls: iclit09b.dll, Version: 4.10.0.16374, Zeitstempel: 0x574f512aAusnahmecode: 0xc0000005
Fehleroffset: 0x0006a2c2
ID des fehlerhaften Prozesses: 0x190f8
Ich vermute, dass der Informix ODBC Treiber aktuell nicht mit dem CLOB Datentyp zurechtkommt. Evtl. schauen Sie mal ob es einen aktualisierten ODBC Treiber für Ihre Informix Datenbank gibt.
der verwendete Informix ODBC Treiber verursacht das Problem und lässt den FlowHeater abstürzen. Zu sehen einmal an dem Stack Trace, der letzte Eintrag ist hier „System.Data.Common.UnsafeNativeMethods.SQLGetData“ Hier befindet sich die Anwendung bzw. der Prozessor in der Routine die dann die Funktionen aus dem Informix ODBC Treiber aufruft.
Application: FlowHeater.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.AccessViolationException
at System.Data.Common.UnsafeNativeMethods.SQLGetData(System.Data.Odbc.OdbcStatementHandle, UInt16, SQL_C, System.Data.Odbc.CNativeBuffer, IntPtr, IntPtr ByRef)
at System.Data.Odbc.OdbcStatementHandle.GetData(Int32, SQL_C, System.Data.Odbc.CNativeBuffer, Int32, IntPtr ByRef)
at System.Data.Odbc.OdbcDataReader.GetData(Int32, SQL_C, Int32, Int32 ByRef)
at System.Data.Odbc.OdbcDataReader.internalGetString(Int32)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32, System.Data.Odbc.TypeMap)
at System.Data.Odbc.OdbcDataReader.GetValue(Int32)
at System.Data.Odbc.OdbcDataReader.get_Item(System.String)
at FlowHeater.Core.Adapter.DatabaseAdapter.hI8dqX1zO4as3wCZ6Xkc(System.Object, System.Object)
at FlowHeater.Core.Adapter.DatabaseAdapter.Read(Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.yYEAs51pqZp36um1agX6(System.Object, Int32, Boolean)
at FlowHeater.Core.Adapter.BaseAdapter.ReadRecord(Boolean)
at FlowHeater.Core.Fitter.RFYMmHUIWJ1DwZ3h4OU(System.Object, Boolean)
at FlowHeater.Core.Fitter.qWxjgHKccq(Int32)
at FlowHeater.Core.Fitter.DoWork(Int32)
Legende) Grün = FlowHeater Funktionen, Blau = .NET Framework Funktionen
Zum anderen aus dem Eventlog Eintrag „Name des fehlerhaften Moduls: iclit09b.dll“. Die hier gemeldete iclit09b.dll ist eine DLL von Ihrem verwendeten Informix ODBC Treiber.
Name der fehlerhaften Anwendung: FlowHeater.exe, Version: 4.1.5.0, Zeitstempel: 0x5d0607c1
Name des fehlerhaften Moduls: iclit09b.dll, Version: 4.10.0.16374, Zeitstempel: 0x574f512aAusnahmecode: 0xc0000005
Fehleroffset: 0x0006a2c2
ID des fehlerhaften Prozesses: 0x190f8
Ich vermute, dass der Informix ODBC Treiber aktuell nicht mit dem CLOB Datentyp zurechtkommt. Evtl. schauen Sie mal ob es einen aktualisierten ODBC Treiber für Ihre Informix Datenbank gibt.
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- K. May
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 12
2 Jahre 8 Monate her #4529
von K. May
K. May antwortete auf Flowheater stürtz beim Lesen ab
Hallo Herr Stark,
danke für die Tipps und Infos.
Sie haben recht. Der Treiber scheint Probleme bei größeren Mengen von Daten zu haben, welcher er von CLOB zu
String umwandeln muss. Man kann im Treiber ankreuzen, dass "Standard SQL" - Typen verwendet werden sollen.
Aber diese Umwandlung scheint begrenzt/fehleranfällig zu sein. Da es keinen direkten Flowheater-Adapter zu
Informix gibt, habe ich nun den SQL-Select im ERP-System ausgelesen, als Excel-File gespeichert und vom
Flowheater wieder einlesen lassen( für die weitere Verarbeitung). Nicht elegant, aber funktioniert im Moment
und letztlich werden wir uns wohl so langsam von Informix verabschieden müssen.
Vielen Dank nochmals für die Klärung!
Mit freundlichem Gruß
K. May
danke für die Tipps und Infos.
Sie haben recht. Der Treiber scheint Probleme bei größeren Mengen von Daten zu haben, welcher er von CLOB zu
String umwandeln muss. Man kann im Treiber ankreuzen, dass "Standard SQL" - Typen verwendet werden sollen.
Aber diese Umwandlung scheint begrenzt/fehleranfällig zu sein. Da es keinen direkten Flowheater-Adapter zu
Informix gibt, habe ich nun den SQL-Select im ERP-System ausgelesen, als Excel-File gespeichert und vom
Flowheater wieder einlesen lassen( für die weitere Verarbeitung). Nicht elegant, aber funktioniert im Moment
und letztlich werden wir uns wohl so langsam von Informix verabschieden müssen.
Vielen Dank nochmals für die Klärung!
Mit freundlichem Gruß
K. May
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.280 Sekunden