Remove all mentions of EnterpriseDB Advanced Server from pg_upgrade;

EDB must maintain their own patch set for this.
This commit is contained in:
Bruce Momjian 2010-05-13 22:51:00 +00:00
parent 382ff21203
commit 36d3afd2d4
9 changed files with 20 additions and 132 deletions

View File

@ -149,10 +149,10 @@ issue_warnings(migratorContext *ctx, char *sequence_script_file_name)
{
prep_status(ctx, "Adjusting sequences");
exec_prog(ctx, true,
SYSTEMQUOTE "\"%s/%s\" --set ON_ERROR_STOP=on --port %d "
SYSTEMQUOTE "\"%s/psql\" --set ON_ERROR_STOP=on --port %d "
"-f \"%s\" --dbname template1 >> \"%s\"" SYSTEMQUOTE,
ctx->new.bindir, ctx->new.psql_exe, ctx->new.port,
sequence_script_file_name, ctx->logfile);
ctx->new.bindir, ctx->new.port, sequence_script_file_name,
ctx->logfile);
unlink(sequence_script_file_name);
pg_free(sequence_script_file_name);
check_ok(ctx);

View File

@ -9,10 +9,6 @@
#include <ctype.h>
#include <stdlib.h>
#ifdef EDB_NATIVE_LANG
#include "access/tuptoaster.h"
#endif
/*
* get_control_data()
@ -88,15 +84,6 @@ get_control_data(migratorContext *ctx, ClusterInfo *cluster, bool live_check)
got_float8_pass_by_value = true;
}
#ifdef EDB_NATIVE_LANG
/* EDB AS 8.3 is an 8.2 code base */
if (cluster->is_edb_as && GET_MAJOR_VERSION(cluster->major_version) <= 803)
{
cluster->controldata.toast = TOAST_MAX_CHUNK_SIZE;
got_toast = true;
}
#endif
/* we have the result of cmd in "output". so parse it line by line now */
while (fgets(bufin, sizeof(bufin), output))
{
@ -140,9 +127,7 @@ get_control_data(migratorContext *ctx, ClusterInfo *cluster, bool live_check)
p++; /* removing ':' char */
cluster->controldata.cat_ver = (uint32) atol(p);
}
else if ((p = strstr(bufin, "First log file ID after reset:")) != NULL ||
(cluster->is_edb_as && GET_MAJOR_VERSION(cluster->major_version) <= 803 &&
(p = strstr(bufin, "Current log file ID:")) != NULL))
else if ((p = strstr(bufin, "First log file ID after reset:")) != NULL)
{
p = strchr(p, ':');
@ -153,9 +138,7 @@ get_control_data(migratorContext *ctx, ClusterInfo *cluster, bool live_check)
cluster->controldata.logid = (uint32) atol(p);
got_log_id = true;
}
else if ((p = strstr(bufin, "First log file segment after reset:")) != NULL ||
(cluster->is_edb_as && GET_MAJOR_VERSION(cluster->major_version) <= 803 &&
(p = strstr(bufin, "Next log file segment:")) != NULL))
else if ((p = strstr(bufin, "First log file segment after reset:")) != NULL)
{
p = strchr(p, ':');

View File

@ -11,8 +11,7 @@
static void checkBinDir(migratorContext *ctx, ClusterInfo *cluster);
static int check_exec(migratorContext *ctx, const char *dir, const char *cmdName,
const char *alternative);
static int check_exec(migratorContext *ctx, const char *dir, const char *cmdName);
static const char *validate_exec(const char *path);
static int check_data_dir(migratorContext *ctx, const char *pg_data);
@ -89,22 +88,10 @@ verify_directories(migratorContext *ctx)
static void
checkBinDir(migratorContext *ctx, ClusterInfo *cluster)
{
check_exec(ctx, cluster->bindir, "postgres", "edb-postgres");
check_exec(ctx, cluster->bindir, "pg_ctl", NULL);
check_exec(ctx, cluster->bindir, "pg_dumpall", NULL);
#ifdef EDB_NATIVE_LANG
/* check for edb-psql first because we need to detect EDB AS */
if (check_exec(ctx, cluster->bindir, "edb-psql", "psql") == 1)
{
cluster->psql_exe = "edb-psql";
cluster->is_edb_as = true;
}
else
#else
if (check_exec(ctx, cluster->bindir, "psql", NULL) == 1)
#endif
cluster->psql_exe = "psql";
check_exec(ctx, cluster->bindir, "postgres");
check_exec(ctx, cluster->bindir, "psql");
check_exec(ctx, cluster->bindir, "pg_ctl");
check_exec(ctx, cluster->bindir, "pg_dumpall");
}
@ -146,8 +133,7 @@ is_server_running(migratorContext *ctx, const char *datadir)
* a valid executable, this function returns 0 to indicated failure.
*/
static int
check_exec(migratorContext *ctx, const char *dir, const char *cmdName,
const char *alternative)
check_exec(migratorContext *ctx, const char *dir, const char *cmdName)
{
char path[MAXPGPATH];
const char *errMsg;
@ -155,21 +141,9 @@ check_exec(migratorContext *ctx, const char *dir, const char *cmdName,
snprintf(path, sizeof(path), "%s%c%s", dir, pathSeparator, cmdName);
if ((errMsg = validate_exec(path)) == NULL)
{
return 1; /* 1 -> first alternative OK */
}
else
{
if (alternative)
{
report_status(ctx, PG_WARNING, "check for %s warning: %s",
cmdName, errMsg);
if (check_exec(ctx, dir, alternative, NULL) == 1)
return 2; /* 2 -> second alternative OK */
}
else
pg_log(ctx, PG_FATAL, "check for %s failed - %s\n", cmdName, errMsg);
}
pg_log(ctx, PG_FATAL, "check for %s failed - %s\n", cmdName, errMsg);
return 0; /* 0 -> neither alternative is acceptable */
}

View File

@ -9,10 +9,6 @@
#include <sys/types.h>
#include <fcntl.h>
#ifdef EDB_NATIVE_LANG
#include <fcntl.h>
#endif
#ifdef WIN32
#include <windows.h>
#endif

View File

@ -291,8 +291,6 @@ get_rel_infos(migratorContext *ctx, const DbInfo *dbinfo,
RelInfoArr *relarr, Cluster whichCluster)
{
PGconn *conn = connectToServer(ctx, dbinfo->db_name, whichCluster);
bool is_edb_as = (whichCluster == CLUSTER_OLD) ?
ctx->old.is_edb_as : ctx->new.is_edb_as;
PGresult *res;
RelInfo *relinfos;
int ntups;
@ -341,38 +339,7 @@ get_rel_infos(migratorContext *ctx, const DbInfo *dbinfo,
FirstNormalObjectId,
/* see the comment at the top of v8_3_create_sequence_script() */
(GET_MAJOR_VERSION(ctx->old.major_version) <= 803) ?
"" : " OR relkind = 'S'",
/*
* EDB AS installs pgagent by default via initdb. We have to ignore it,
* and not migrate any old table contents.
*/
(is_edb_as && strcmp(dbinfo->db_name, "edb") == 0) ?
" AND "
" n.nspname != 'pgagent' AND "
/* skip pgagent TOAST tables */
" c.oid NOT IN "
" ( "
" SELECT c2.reltoastrelid "
" FROM pg_catalog.pg_class c2 JOIN "
" pg_catalog.pg_namespace n2 "
" ON c2.relnamespace = n2.oid "
" WHERE n2.nspname = 'pgagent' AND "
" c2.reltoastrelid != 0 "
" ) AND "
/* skip pgagent TOAST table indexes */
" c.oid NOT IN "
" ( "
" SELECT c3.reltoastidxid "
" FROM pg_catalog.pg_class c2 JOIN "
" pg_catalog.pg_namespace n2 "
" ON c2.relnamespace = n2.oid JOIN "
" pg_catalog.pg_class c3 "
" ON c2.reltoastrelid = c3.oid "
" WHERE n2.nspname = 'pgagent' AND "
" c2.reltoastrelid != 0 AND "
" c3.reltoastidxid != 0 "
" ) " : "");
"" : " OR relkind = 'S'");
res = executeQueryOrDie(ctx, conn, query);

View File

@ -196,10 +196,10 @@ prepare_new_databases(migratorContext *ctx)
*/
prep_status(ctx, "Creating databases in the new cluster");
exec_prog(ctx, true,
SYSTEMQUOTE "\"%s/%s\" --set ON_ERROR_STOP=on --port %d "
SYSTEMQUOTE "\"%s/psql\" --set ON_ERROR_STOP=on --port %d "
"-f \"%s/%s\" --dbname template1 >> \"%s\"" SYSTEMQUOTE,
ctx->new.bindir, ctx->new.psql_exe, ctx->new.port,
ctx->output_dir, GLOBALS_DUMP_FILE, ctx->logfile);
ctx->new.bindir, ctx->new.port, ctx->output_dir,
GLOBALS_DUMP_FILE, ctx->logfile);
check_ok(ctx);
get_db_and_rel_infos(ctx, &ctx->new.dbarr, CLUSTER_NEW);
@ -218,10 +218,10 @@ create_new_objects(migratorContext *ctx)
prep_status(ctx, "Restoring database schema to new cluster");
exec_prog(ctx, true,
SYSTEMQUOTE "\"%s/%s\" --set ON_ERROR_STOP=on --port %d "
SYSTEMQUOTE "\"%s/psql\" --set ON_ERROR_STOP=on --port %d "
"-f \"%s/%s\" --dbname template1 >> \"%s\"" SYSTEMQUOTE,
ctx->new.bindir, ctx->new.psql_exe, ctx->new.port,
ctx->output_dir, DB_DUMP_FILE, ctx->logfile);
ctx->new.bindir, ctx->new.port, ctx->output_dir,
DB_DUMP_FILE, ctx->logfile);
check_ok(ctx);
/* regenerate now that we have db schemas */

View File

@ -200,15 +200,11 @@ typedef struct
DbInfoArr dbarr; /* dbinfos array */
char *pgdata; /* pathname for cluster's $PGDATA directory */
char *bindir; /* pathname for cluster's executable directory */
const char *psql_exe; /* name of the psql command to execute
* in the cluster */
unsigned short port; /* port number where postmaster is waiting */
uint32 major_version; /* PG_VERSION of cluster */
char *major_version_str; /* string PG_VERSION of cluster */
Oid pg_database_oid; /* OID of pg_database relation */
char *libpath; /* pathname for cluster's pkglibdir */
/* EDB AS is PG 8.2 with 8.3 enhancements backpatched. */
bool is_edb_as; /* EnterpriseDB's Postgres Plus Advanced Server? */
char *tablespace_suffix; /* directory specification */
} ClusterInfo;

View File

@ -6,10 +6,6 @@
#include "pg_upgrade.h"
#ifdef EDB_NATIVE_LANG
#include <fcntl.h>
#endif
#include "catalog/pg_class.h"
#include "access/transam.h"

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/pgupgrade.sgml,v 1.3 2010/05/13 15:03:24 momjian Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/pgupgrade.sgml,v 1.4 2010/05/13 22:51:00 momjian Exp $ -->
<sect1 id="pgupgrade">
<title>pg_upgrade</title>
@ -23,11 +23,6 @@
pg_upgrade supports upgrades from 8.3.X and later to the current
major release of Postgres, including snapshot and alpha releases.
<!--
pg_upgrade also supports upgrades from EnterpriseDB's Postgres Plus
Advanced Server.
-->
</para>
</sect2>
@ -120,25 +115,6 @@ gmake prefix=/usr/local/pgsql.new install
start the new cluster.
</para>
<!--
<para>
If migrating EnterpriseDB's Postgres Plus Advanced Server, you must:
<itemizedlist>
<listitem>
<para>
<emphasis>not</> install <literal>sample tables and procedures/functions</>
in the new server
</para>
</listitem>
<listitem>
<para>
delete the empty <literal>edb</> schema in the <literal>enterprisedb</> database
</para>
</listitem>
</itemizedlist>
</para>
-->
</listitem>
<listitem>