-
Wie kann ich den fehler finden
Hi *all
seltsame Sache ...
Eine View, die es gefühlt 'Ewig' gibt knallt plötzlich.
Ich habe ein RQ (RunQuery) auf die View gemacht und bekomme soetwas im Joblog
PHP-Code:
*********************************************************
*********************************************************
**** ERROR OCCURED ON CREATE INDEXÜ ****
*********************************************************
*********************************************************
=-=-= Start of Performance Messages Lvl: 01 =-=-=
QQPERF - Subquery join composite: *YES
QQPERF - Dial: 001 Data Space: 004 Method: Arrival Seq J-Type: NL Join
QQPERF - Dial: 002 Data Space: 001 Method: AKTENL20 J-Type: MKF Join
QQPERF - Dial: 003 Data Space: 002 Method: SCHULP J-Type: MKF Join
QQPERF - Dial: 004 Data Space: 003 Method: GERAZP J-Type: MKF Join
QQPERF - Dial: 005 Data Space: 005 Method: HISTMP J-Type: MKF Join
QQPERF - Dial: 006 Data Space: 006 Method: X-CBUCHP01 J-Type: MKF Join
QQPERF - Field frogger or Key Sel Attempted for Dial: 002
QQPERF - Field frogger or Key Sel Attempted for Dial: 003
QQPERF - Field frogger or Key Sel Attempted for Dial: 004
QQPERF - Field frogger or Key Sel Attempted for Dial: 005
QQPERF - Frogger or Key Selection Attempted for Dial: 006
QQPERF - Temporary Index Field frogger Attempted.
=-=-=-=-=- End of Performance Messages -=-=-=-=-=
*********************************************************
**** THE CURSOR TEMPLATE ****
*********************************************************
THE CURSOR TEMPLATE HEADER FOLLOWS:
. 00000000000000000DEFC1D2E3C5D5D7 '..........AKTENP'
. 7BE5F5D2D8E3C5D4D740404040405CD8 '#V5KQTEMP *Q'
. E4C5D9E8404040404000000000000000 'UERY .......'
. 00000000001300000000000000000200 '................'
. 00000000000000000000000000000000 '................'
. 00000000000000000000000000000000 '................'
. 00000000000000000000000000000000 '................'
. 8000000000000000FF99F5F249001300 '.........r52ñ...'
. 8000000000000000FF99F5F249001240 '.........r52ñ.. '
. 00600014000000000000000000000040 '.-............. '
. 00000000000000000000000000000000 '................'
. 00000003000000000000000000000000 '................'
. 8000000000000000FF99F5F24900F820 '.........r52ñ.8.'
. 00000000000000000000000000000000 '................'
....
ähnliche Daten
...
001B 040000000000000D0000000000000000 '................'
001C 040000000000000D0000000000000000 '................'
001D 040000000000000D0000000000000000 '................'
Field 0 in mapping template not valid when creating cursor.
Interner Fehler im Abfrageprozessor.
Ausgabe des Speicherauszugs an Spool-Datei 5, Job 188509/QPGMR4/DSP_RJ2,
erstellt auf System S4405619 am 07.07.15 12:22:45 geleitet.
Es kann kein Speicherauszug der angeforderten Informationen erstellt
werden.
Anwendungsfehler. CPF4204 nicht überwacht durch QQQQUERY bei Anweisung
0000033039, Instruktion X'0000'.
Abfrage kann nicht ausgeführt werden; siehe Nachrichten unterer Ebene.
Und nun?
Wie geh ich da ran
Die view ist riesig!.
Muß ich die nun Schritt für schritt 'entschärfen'
Oder kann ich in obrigen Infos nach 'irgendwas' suchen?
Danke, Gruß
Robi
Das Notwendige steht über dem technisch machbaren.
(klingt komisch, funktioniert aber!)
-
Das Problem ist mir nach Umstellung von V6 auf V7 begegnet da der neue Optimizer nach anderen Regeln arbeitet.
Der häufigste Grund sind umgedrehte Autocasts des Optimizers bei Verwendung von Konstanten die nicht zum Feldtyp passen.
Also "where XXX = 21" führt dann zu einem Fehler, wenn XXX als Charvariable definiert ist.
In V6 wurde cast(21 as char(nn)) verwendet, in V7 wird cast(xxx as decimal(n, m)) generiert.
Ist XXX nun sporadisch nicht numerisch, führt dies zum Fehler.
Das Selbe passiert nun auch bei Join-Beziehungen (on a=b and ...).
Hier erfolgen Typanpassungen ggf. genau falsch herum was auch zur Nichtverwendung von Indizes führt.
Du musst deine View bzgl. der Where und On-Klauseln prüfen und ggf. durch eigene Cast's eine andere Typisierung erzwingen.
Zugegeben, ein mühsames Geschäft.
-
Ja, danke, soetwas war es.
Ich habe nur vorher noch nie eine derartige Meldung im Joblog gesehen.
Ich habe die View 'rückwärts' entschärft bis sie wieder lief.
Ursache war ein alpa Feld mit numerischem Inhalt, das numerisch abgefragt wurde.
Ein Feld, das jeder hier als Num ansieht, das aber per Definition tatsächlich Alpa ist.
Hat mit fast 4 Stunden gekostet. Natürlich ist das ein Fehler der ursprünglichen Definition gewesen.
Vermutlich war die letzte PTF Orgie schuld daran, das der Fehler nun aufschlug.
Gruß
Robi
Das Notwendige steht über dem technisch machbaren.
(klingt komisch, funktioniert aber!)
-
Das hat eher was mit Glück zu tun.
Wahrscheinlich war bisher immer ein numerischer Wert in diesem Feld, aber erst seit kurzem taucht ein Alpha-Wert auf.
Prüfe mal, ob es in der Datei einen nicht numerischen Wert gibt, z.B.:
select * from myfile
where translate(myfield, ' ', '0123456789') <> ' '
Dies war bei mir auch der Fall und wir haben damit einen Uraltfehler behoben.
Mit V6R1 war es auch nicht mehr möglich, in der Where-Klausel solche Sätze auszufiltern, da nicht garantiert wird, ob die Reihenfolge in der Whereklausel beibehalten wird.
where translate(myfield, ' ', '0123456789') = '' and myfield = 148
führt trotzdem zu einem Fehler, da die 2. Bedingung anscheinend zuerst (oder auch grundsätzlich beide) ausgeführt werden.
Zusätzlich ist zu berücksichtigen, dass seit V7 ein Index über das Char-Feld bei dieser Art der Abfrage nicht mehr verwendet werden kann!
Dies ist u.U. sogar gravierender.
Similar Threads
-
By oulbrich in forum NEWSboard Programmierung
Antworten: 7
Letzter Beitrag: 23-03-15, 17:21
-
By malzusrex in forum IBM i Hauptforum
Antworten: 4
Letzter Beitrag: 24-07-14, 15:14
-
By VWBussi in forum IBM i Hauptforum
Antworten: 9
Letzter Beitrag: 24-08-12, 09:34
-
By heynem in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 05-12-02, 08:59
-
By Sascha in forum IBM i Hauptforum
Antworten: 7
Letzter Beitrag: 09-07-02, 09:08
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks