Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
STL_LOAD_ERRORS
Zeigt die Datensätze für alle Amazon-Redshift-Ladefehler an.
STL_ LOAD _ ERRORS enthält eine Historie aller Amazon Redshift Redshift-Ladefehler. Vgl. Ladefehlerreferenz für eine umfassende Liste möglicher Ladefehler und Erläuterungen dazu.
Fragen Sie nach der Abfrage STL_LOADERROR_DETAIL von STL _ LOAD _ zusätzliche Details ab, z. B. die genaue Datenzeile und -spalte, in der ein Analysefehler aufgetreten ist, ERRORS um allgemeine Informationen über den Fehler zu erhalten.
STL_ LOAD _ ERRORS ist für alle Benutzer sichtbar. Superuser können alle Zeilen sehen; reguläre Benutzer können nur ihre eigenen Daten sehen. Weitere Informationen finden Sie unter Sichtbarkeit der Daten in Systemtabellen und Ansichten.
Anmerkung
STL_ LOAD _ enthält ERRORS nur Abfragen, die auf Hauptclustern ausgeführt werden. Abfragen, die auf Nebenläufigkeitsskalierungs-Clustern ausgeführt werden, sind nicht enthalten. Für den Zugriff auf Abfragen, die sowohl auf Haupt- als auch auf Clustern zur Parallelitätsskalierung ausgeführt werden, empfehlen wir, die SYS Überwachungsansicht SYS_LOAD_ERROR_DETAIL zu verwenden. Die Daten in der SYS Überwachungsansicht sind so formatiert, dass sie einfacher zu verwenden und zu verstehen sind.
Tabellenspalten
Spaltenname | Datentyp | Beschreibung |
---|---|---|
userid | integer | ID des Benutzers, der den Eintrag generiert hat. |
slice | integer | Slice, auf dem der Fehler aufgetreten ist. |
tbl | integer | Tabellen-ID. |
starttime | Zeitstempel | Startzeit UTC für den Ladevorgang. |
Sitzung | integer | Sitzungs-ID der Sitzung, die den Ladevorgang durchführt. |
query | integer | Abfrage-ID. Die Abfrage-Spalte kann verwendet werden, um andere Systemtabellen und Anzeigen anzufügen. |
filename | character(256) | Der vollständige Pfad zur Eingabedatei für den Ladevorgang. |
line_number | bigint | Zeilennummer in der Ladedatei mit dem Fehler. Für COPY fromJSON, die Zeilennummer der letzten Zeile des JSON Objekts mit dem Fehler. |
colname | character(127) | Feld mit dem Fehler. |
type | character(10) | Datentyp des Feldes. |
col_length | character(10) | Spaltenlänge, falls anwendbar. Dieses Feld ist gefüllt, wenn für den Datentyp eine Längenbegrenzung gilt. So enthält diese Spalte beispielsweise für eine Spalte mit dem Datentyp „character(3)“ den Wert „3“. |
position | integer | Position des Fehlers in dem Feld. |
raw_line | character(1024) | Roh-Ladedaten, die den Fehler enthalten. Multibyte-Zeichen in den Ladedaten werden durch einen Punkt ersetzt. |
raw_field_value | char(1024) | Der Wert des Feldes „colname“ vor dem Parsing, der zu dem Ladefehler geführt hat. |
err_code | integer | Fehlercode. |
err_reason | character(100) | Erläuterung zu dem Fehler. |
is_partial | Ganzzahl | Wert, der, falls wahr (1), angibt, dass die Eingabedatei während eines COPY Vorgangs in Bereiche aufgeteilt wird. Wenn dieser Wert false (0) ist, wird die Eingabedatei nicht geteilt. |
start_offset | bigint | Wert, der den Offsetwert der Aufteilung (in Byte) angibt, wenn die Eingabedatei während eines COPY Vorgangs aufgeteilt wird. Wenn die Zeilennummer in der Datei unbekannt ist, lautet die Zeilennummer -1. Wenn die Datei nicht geteilt wird, ist dieser Wert 0. |
copy_job_id | bigint | Die Kennung des Kopierauftrags. 0 gibt an, dass keine Auftragskennung vorhanden ist. |
Beispielabfragen
Die folgende Abfrage verknüpft STL _ LOAD _ ERRORS mit STL _ LOADERROR _DETAIL, um die Detailfehler anzuzeigen, die beim letzten Ladevorgang aufgetreten sind.
select d.query, substring(d.filename,14,20), d.line_number as line, substring(d.value,1,16) as value, substring(le.err_reason,1,48) as err_reason from stl_loaderror_detail d, stl_load_errors le where d.query = le.query and d.query = pg_last_copy_id(); query | substring | line | value | err_reason -------+-------------------+------+----------+---------------------------- 558| allusers_pipe.txt | 251 | 251 | String contains invalid or unsupported UTF8 code 558| allusers_pipe.txt | 251 | ZRU29FGR | String contains invalid or unsupported UTF8 code 558| allusers_pipe.txt | 251 | Kaitlin | String contains invalid or unsupported UTF8 code 558| allusers_pipe.txt | 251 | Walter | String contains invalid or unsupported UTF8 code
Im folgenden Beispiel wird STL _ LOAD _ ERRORS mit _ STV TBL _ verwendet, PERM um eine neue Ansicht zu erstellen. Anschließend wird anhand dieser Ansicht ermittelt, welche Fehler beim Laden von Daten in die EVENT Tabelle aufgetreten sind:
create view loadview as (select distinct tbl, trim(name) as table_name, query, starttime, trim(filename) as input, line_number, colname, err_code, trim(err_reason) as reason from stl_load_errors sl, stv_tbl_perm sp where sl.tbl = sp.id);
Als Nächstes gibt die folgende Abfrage tatsächlich den letzten Fehler zurück, der beim Laden der EVENT Tabelle aufgetreten ist:
select table_name, query, line_number, colname, starttime, trim(reason) as error from loadview where table_name ='event' order by line_number limit 1;
Die Abfrage gibt den letzten Ladefehler zurück, der für die EVENT Tabelle aufgetreten ist. Wenn keine Ladefehler aufgetreten sind, gibt die Abfrage null Zeilen aus. In diesem Beispiel gibt die Abfrage einen einzigen Fehler aus:
table_name | query | line_number | colname | error | starttime ------+-----+----+----+--------------------------------------------------------+---------------------- event | 309 | 0 | 5 | Error in Timestamp value or format [%Y-%m-%d %H:%M:%S] | 2014-04-22 15:12:44 (1 row)
In Fällen, in denen der COPY Befehl große, unkomprimierte, durch Text getrennte Dateidaten automatisch aufteilt, um Parallelität zu ermöglichen, zeigen die Spalten line_number, is_partial und start_offset Informationen zu Teilungen an. (Die Zeilennummer kann unbekannt sein, wenn die Zeilennummer aus der Originaldatei nicht verfügbar ist.)
--scan ranges information SELECT line_number, POSITION, btrim(raw_line), btrim(raw_field_value), btrim(err_reason), is_partial, start_offset FROM stl_load_errors WHERE query = pg_last_copy_id(); --result -1,51,"1008771|13463413|463414|2|28.00|38520.72|0.06|0.07|NO|1998-08-30|1998-09-25|1998-09-04|TAKE BACK RETURN|RAIL|ans cajole sly","NO","Char length exceeds DDL length",1,67108864