GET_POSITION
Gültig für
Extrahieren (nur Data Pump) und Replicat
Beschreibung
Verwenden Sie die Funktion GET_POSITION, um eine Leseposition einer Extract-Data Pump oder eines Replicats im Oracle GoldenGate-Trail abzurufen.
Syntax
#include "usrdecs.h"
short result_code;
ERCALLBACK (GET_POSITION &position_def, &result_code);
Puffer
typedef struct
{
char *position;
long position_len;
short position_type;
short ascii_or_internal;
} position_def;
Eingabe
<position_len>
Zuordnungslänge für die Positionslänge.
<position_type>
Einer der folgenden Namen kann verwendet werden:
STARTUP_CHECKPOINT
Die Startposition im Trail.
CURRENT_CHECKPOINT
Die Position des letzten Lesens im Trail.
column_value_mode
Ein Indikator für das Format, in dem der Spaltenwert übergeben wurde. Derzeit wird nur das standardmäßige kanonische Oracle GoldenGate-Format unterstützt, wie dargestellt durch:
EXIT_FN_RAW_FORMAT
Ausgabe
*Position
Ein Zeiger auf einen Puffer, der die Positionswerte darstellt. Dieser Puffer wird im Verzeichnis position_def als zwei Binärwerte (nicht signiert int32t und int32t) als seqnorba für acht Byte in einem Feld char deklariert. Der User Exit muss die Daten in den richtigen Datentyp verschieben. Die Verwendung dieser Funktion auf einer Little Endian-Plattform führt dazu, dass der Prozess die Byte in den beiden Feldern einzeln "umkehrt".
Rückgabewerte
EXIT_FN_RET_INVALID_CONTEXT
EXIT_FN_RET_NOT_SUPPORTED
EXIT_FN_RET_OK