public String getSinkStagingTableName() {

        if (options.getSinkStagingTable() != null && !options.getSinkStagingTable().isEmpty()) {
            return this.options.getSinkStagingTable();
        } else if (randomSinkStagingTableName != null && !randomSinkStagingTableName.isEmpty()) {
            return randomSinkStagingTableName;
        } else {
            // Create new randomSinkStagingTableName
            Random random = new Random();
            String randomName = "repdb" + random.nextInt(90) + 10;

            String tableName = getSinkTableName();

            // Staging table Alias name.
            // Sometimes the size of the table along with the random name exceeds the maximum size of an object name in some databases
            if (options.getSinkStagingTableAlias() != null && !options.getSinkStagingTableAlias().isEmpty()) {
                tableName = options.getSinkStagingTableAlias();
            }

            randomSinkStagingTableName = getTableNameFromQualifiedTableName(tableName) + randomName;

            return randomSinkStagingTableName;
        }
    }
When using a table name in a generated SQL query, how (if at all)
should we escape that column name? e.g., a table named "table"
may need to be quoted with backtiks: "`table`".

@param tableName the table name as provided by the user, etc.
@return how the table name should be rendered in the sql text.
src/main/java/org/replicadb/manager/ConnManager.java