1. PostgreSQL 16 Documentation, pgdump: In the description of the -F or --format option, it specifies the output formats. It states that custom (-Fc) and tar (-Ft) formats are "suitable for input into pgrestore." In contrast, the plain (-Fp) format is described as a "plain-text SQL script file."
Source: PostgreSQL Documentation, Server Administration > Backup and Restore > pgdump. Section: "Options".
2. PostgreSQL 16 Documentation, pgrestore: The very first sentence in the description of the pgrestore utility clarifies its purpose: "pgrestore is a utility for restoring a PostgreSQL database from an archive created by pgdump in one of the non-plain-text formats." This explicitly excludes the plain format and includes the archive formats.
Source: PostgreSQL Documentation, Server Administration > Backup and Restore > pgrestore. Section: "Description".
3. PostgreSQL 16 Documentation, Chapter 26. Backup and Restore: This chapter provides a general overview. Section 26.1, "SQL Dump," explains: "The output of pgdump can be restored using the psql program... pgdump can also produce output in other formats that are intended to be used with pgrestore... pgrestore can handle the archive files."
Source: PostgreSQL Documentation, Server Administration > Chapter 26. Backup and Restore. Section: 26.1. "SQL Dump".