/* * Copyright (c) 2016, PostgreSQL Global Development Group * See the LICENSE file in the project root for more information. */ package org.postgresql.replication.fluent; import org.postgresql.replication.LogSequenceNumber; /** * Common parameters for logical and physical replication */ public interface CommonOptions { /** * Replication slots provide an automated way to ensure that the master does not remove WAL * segments until they have been received by all standbys, and that the master does not remove * rows which could cause a recovery conflict even when the standby is disconnected. * * @return nullable replication slot name that already exists on server and free. */ String getSlotName(); /** * @return not null position from which need start replicate changes */ LogSequenceNumber getStartLSNPosition(); /** * Specifies the number of millisecond between status packets sent back to the server. This allows * for easier monitoring of the progress from server. A value of zero disables the periodic status * updates completely, although an update will still be sent when requested by the server, to * avoid timeout disconnect. The default value is 10 seconds. */ int getStatusInterval(); }