UNPKG

pg-logical-replication

Version:

PostgreSQL Location Replication client - logical WAL replication streaming

29 lines (28 loc) 1.01 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PgoutputPlugin = void 0; const abstract_plugin_js_1 = require("../abstract.plugin.js"); const pgoutput_parser_js_1 = require("./pgoutput-parser.js"); class PgoutputPlugin extends abstract_plugin_js_1.AbstractPlugin { parser; constructor(options) { super(options); this.parser = new pgoutput_parser_js_1.PgoutputParser(); } get name() { return 'pgoutput'; } parse(buffer) { return this.parser.parse(buffer); } start(client, slotName, lastLsn) { const options = [ `proto_version '${this.options.protoVersion}'`, `publication_names '${this.options.publicationNames.join(',')}'`, `messages '${this.options.messages ?? false}'`, ]; const sql = `START_REPLICATION SLOT "${slotName}" LOGICAL ${lastLsn} (${options.join(', ')})`; return client.query(sql); } } exports.PgoutputPlugin = PgoutputPlugin;