diff --git a/src/backend/catalog/objectaddress.c b/src/backend/catalog/objectaddress.c
index 3662a8ebb6..a5eccdffd0 100644
--- a/src/backend/catalog/objectaddress.c
+++ b/src/backend/catalog/objectaddress.c
@@ -588,7 +588,7 @@ static const ObjectPropertyType ObjectProperty[] =
 		true
 	},
 	{
-		"extented statistics",
+		"extended statistics",
 		StatisticExtRelationId,
 		StatisticExtOidIndexId,
 		STATEXTOID,
diff --git a/src/backend/storage/ipc/procarray.c b/src/backend/storage/ipc/procarray.c
index 05661e379e..66113fb8d3 100644
--- a/src/backend/storage/ipc/procarray.c
+++ b/src/backend/storage/ipc/procarray.c
@@ -1686,7 +1686,7 @@ ComputeXidHorizons(ComputeXidHorizonsResult *h)
 		 * loop over all PGPROCs it is cheaper to just initialize to the
 		 * current top-level xid any.
 		 *
-		 * Without an assigned xid we could use a horizon as agressive as
+		 * Without an assigned xid we could use a horizon as aggressive as
 		 * ReadNewTransactionid(), but we can get away with the much cheaper
 		 * latestCompletedXid + 1: If this backend has no xid there, by
 		 * definition, can't be any newer changes in the temp table than
diff --git a/src/backend/utils/mb/Unicode/UCS_to_EUC_JP.pl b/src/backend/utils/mb/Unicode/UCS_to_EUC_JP.pl
index d8bed27e1b..3414796ffd 100755
--- a/src/backend/utils/mb/Unicode/UCS_to_EUC_JP.pl
+++ b/src/backend/utils/mb/Unicode/UCS_to_EUC_JP.pl
@@ -80,7 +80,7 @@ foreach my $i (@$ct932)
 	}
 }
 
-# extract only SJIS characers
+# extract only SJIS characters
 foreach my $i (grep defined $_->{sjis}, @mapping)
 {
 	my $sjis = $i->{sjis};
diff --git a/src/include/access/gist.h b/src/include/access/gist.h
index 4f6dae9a76..14b1190cd7 100644
--- a/src/include/access/gist.h
+++ b/src/include/access/gist.h
@@ -80,7 +80,7 @@ typedef GISTPageOpaqueData *GISTPageOpaque;
  * Maximum possible sizes for GiST index tuple and index key.  Calculation is
  * based on assumption that GiST page should fit at least 4 tuples.  In theory,
  * GiST index can be functional when page can fit 3 tuples.  But that seems
- * rather inefficent, so we use a bit conservative estimate.
+ * rather inefficient, so we use a bit conservative estimate.
  *
  * The maximum size of index key is true for unicolumn index.  Therefore, this
  * estimation should be used to figure out which maximum size of GiST index key
diff --git a/src/include/replication/logicalproto.h b/src/include/replication/logicalproto.h
index cca13dae96..378d5d6e09 100644
--- a/src/include/replication/logicalproto.h
+++ b/src/include/replication/logicalproto.h
@@ -40,7 +40,7 @@
  *
  * Note: though this is an enum, the values are used to identify message types
  * in logical replication protocol, which uses a single byte to identify a
- * message type. Hence the values should be single byte wide and preferrably
+ * message type. Hence the values should be single byte wide and preferably
  * human readable characters.
  */
 typedef enum LogicalRepMsgType
