Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
36d3afd2
Commit
36d3afd2
authored
May 13, 2010
by
Bruce Momjian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Remove all mentions of EnterpriseDB Advanced Server from pg_upgrade;
EDB must maintain their own patch set for this.
parent
382ff212
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
20 additions
and
132 deletions
+20
-132
contrib/pg_upgrade/check.c
contrib/pg_upgrade/check.c
+3
-3
contrib/pg_upgrade/controldata.c
contrib/pg_upgrade/controldata.c
+2
-19
contrib/pg_upgrade/exec.c
contrib/pg_upgrade/exec.c
+7
-33
contrib/pg_upgrade/file.c
contrib/pg_upgrade/file.c
+0
-4
contrib/pg_upgrade/info.c
contrib/pg_upgrade/info.c
+1
-34
contrib/pg_upgrade/pg_upgrade.c
contrib/pg_upgrade/pg_upgrade.c
+6
-6
contrib/pg_upgrade/pg_upgrade.h
contrib/pg_upgrade/pg_upgrade.h
+0
-4
contrib/pg_upgrade/relfilenode.c
contrib/pg_upgrade/relfilenode.c
+0
-4
doc/src/sgml/pgupgrade.sgml
doc/src/sgml/pgupgrade.sgml
+1
-25
No files found.
contrib/pg_upgrade/check.c
View file @
36d3afd2
...
...
@@ -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
.
p
sql_exe
,
ctx
->
new
.
port
,
sequence_script_file_name
,
ctx
->
logfile
);
ctx
->
new
.
bindir
,
ctx
->
new
.
p
ort
,
sequence_script_file_name
,
ctx
->
logfile
);
unlink
(
sequence_script_file_name
);
pg_free
(
sequence_script_file_name
);
check_ok
(
ctx
);
...
...
contrib/pg_upgrade/controldata.c
View file @
36d3afd2
...
...
@@ -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
,
':'
);
...
...
contrib/pg_upgrade/exec.c
View file @
36d3afd2
...
...
@@ -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 */
}
...
...
contrib/pg_upgrade/file.c
View file @
36d3afd2
...
...
@@ -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
...
...
contrib/pg_upgrade/info.c
View file @
36d3afd2
...
...
@@ -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
);
...
...
contrib/pg_upgrade/pg_upgrade.c
View file @
36d3afd2
...
...
@@ -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
.
p
sql_exe
,
ctx
->
new
.
port
,
ctx
->
output_dir
,
GLOBALS_DUMP_FILE
,
ctx
->
logfile
);
ctx
->
new
.
bindir
,
ctx
->
new
.
p
ort
,
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
.
p
sql_exe
,
ctx
->
new
.
port
,
ctx
->
output_dir
,
DB_DUMP_FILE
,
ctx
->
logfile
);
ctx
->
new
.
bindir
,
ctx
->
new
.
p
ort
,
ctx
->
output_dir
,
DB_DUMP_FILE
,
ctx
->
logfile
);
check_ok
(
ctx
);
/* regenerate now that we have db schemas */
...
...
contrib/pg_upgrade/pg_upgrade.h
View file @
36d3afd2
...
...
@@ -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
;
...
...
contrib/pg_upgrade/relfilenode.c
View file @
36d3afd2
...
...
@@ -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"
...
...
doc/src/sgml/pgupgrade.sgml
View file @
36d3afd2
<!-- $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>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment