diff --git a/src/pl/plpython/expected/plpython_do.out b/src/pl/plpython/expected/plpython_do.out
index 9de261ae4502b880d00b822050df70171c9d4726..a21b0887ad2c8728559b3a169cbc6dadd3bdae55 100644
--- a/src/pl/plpython/expected/plpython_do.out
+++ b/src/pl/plpython/expected/plpython_do.out
@@ -2,5 +2,5 @@ DO $$ plpy.notice("This is plpythonu.") $$ LANGUAGE plpythonu;
 NOTICE:  This is plpythonu.
 CONTEXT:  PL/Python anonymous code block
 DO $$ nonsense $$ LANGUAGE plpythonu;
-ERROR:  PL/Python: NameError: global name 'nonsense' is not defined
+ERROR:  NameError: global name 'nonsense' is not defined
 CONTEXT:  PL/Python anonymous code block
diff --git a/src/pl/plpython/expected/plpython_error.out b/src/pl/plpython/expected/plpython_error.out
index 87225f2d8f2f767373efbd4b25fb58a3a9d5597e..ea4a54c3d754a272f6ce2d1016716ba7c7d92194 100644
--- a/src/pl/plpython/expected/plpython_error.out
+++ b/src/pl/plpython/expected/plpython_error.out
@@ -8,9 +8,9 @@ CREATE FUNCTION sql_syntax_error() RETURNS text
 'plpy.execute("syntax error")'
         LANGUAGE plpythonu;
 SELECT sql_syntax_error();
-WARNING:  PL/Python: plpy.SPIError: unrecognized error in PLy_spi_execute_query
+WARNING:  plpy.SPIError: unrecognized error in PLy_spi_execute_query
 CONTEXT:  PL/Python function "sql_syntax_error"
-ERROR:  PL/Python: plpy.SPIError: syntax error at or near "syntax"
+ERROR:  plpy.SPIError: syntax error at or near "syntax"
 LINE 1: syntax error
         ^
 QUERY:  syntax error
@@ -22,7 +22,7 @@ CREATE FUNCTION exception_index_invalid(text) RETURNS text
 'return args[1]'
 	LANGUAGE plpythonu;
 SELECT exception_index_invalid('test');
-ERROR:  PL/Python: IndexError: list index out of range
+ERROR:  IndexError: list index out of range
 CONTEXT:  PL/Python function "exception_index_invalid"
 /* check handling of nested exceptions
  */
@@ -32,9 +32,9 @@ CREATE FUNCTION exception_index_invalid_nested() RETURNS text
 return rv[0]'
 	LANGUAGE plpythonu;
 SELECT exception_index_invalid_nested();
-WARNING:  PL/Python: plpy.SPIError: unrecognized error in PLy_spi_execute_query
+WARNING:  plpy.SPIError: unrecognized error in PLy_spi_execute_query
 CONTEXT:  PL/Python function "exception_index_invalid_nested"
-ERROR:  PL/Python: plpy.SPIError: function test5(unknown) does not exist
+ERROR:  plpy.SPIError: function test5(unknown) does not exist
 LINE 1: SELECT test5('foo')
                ^
 HINT:  No function matches the given name and argument types. You might need to add explicit type casts.
@@ -54,9 +54,9 @@ return None
 '
 	LANGUAGE plpythonu;
 SELECT invalid_type_uncaught('rick');
-WARNING:  PL/Python: plpy.SPIError: unrecognized error in PLy_spi_prepare
+WARNING:  plpy.SPIError: unrecognized error in PLy_spi_prepare
 CONTEXT:  PL/Python function "invalid_type_uncaught"
-ERROR:  PL/Python: plpy.SPIError: type "test" does not exist
+ERROR:  plpy.SPIError: type "test" does not exist
 CONTEXT:  PL/Python function "invalid_type_uncaught"
 /* for what it's worth catch the exception generated by
  * the typo, and return None
@@ -77,7 +77,7 @@ return None
 '
 	LANGUAGE plpythonu;
 SELECT invalid_type_caught('rick');
-WARNING:  PL/Python: plpy.SPIError: unrecognized error in PLy_spi_prepare
+WARNING:  plpy.SPIError: unrecognized error in PLy_spi_prepare
 CONTEXT:  PL/Python function "invalid_type_caught"
 NOTICE:  type "test" does not exist
 CONTEXT:  PL/Python function "invalid_type_caught"
@@ -104,9 +104,9 @@ return None
 '
 	LANGUAGE plpythonu;
 SELECT invalid_type_reraised('rick');
-WARNING:  PL/Python: plpy.SPIError: unrecognized error in PLy_spi_prepare
+WARNING:  plpy.SPIError: unrecognized error in PLy_spi_prepare
 CONTEXT:  PL/Python function "invalid_type_reraised"
-ERROR:  PL/Python: plpy.Error: type "test" does not exist
+ERROR:  plpy.Error: type "test" does not exist
 CONTEXT:  PL/Python function "invalid_type_reraised"
 /* no typo no messing about
  */
diff --git a/src/pl/plpython/expected/plpython_test.out b/src/pl/plpython/expected/plpython_test.out
index 583a149840d3e6cd9109f95ac04ab527eb7b5e02..d92c9876ee7dcbf8727611a0c30105110b994b93 100644
--- a/src/pl/plpython/expected/plpython_test.out
+++ b/src/pl/plpython/expected/plpython_test.out
@@ -73,5 +73,5 @@ NOTICE:  notice
 CONTEXT:  PL/Python function "elog_test"
 WARNING:  warning
 CONTEXT:  PL/Python function "elog_test"
-ERROR:  PL/Python: plpy.Error: error
+ERROR:  plpy.Error: error
 CONTEXT:  PL/Python function "elog_test"
diff --git a/src/pl/plpython/expected/plpython_types.out b/src/pl/plpython/expected/plpython_types.out
index a1659362820bb8348f6f1e9657c9a3433b2166d8..982005bea162e080f23a68bb8ba23105acfdf48d 100644
--- a/src/pl/plpython/expected/plpython_types.out
+++ b/src/pl/plpython/expected/plpython_types.out
@@ -596,7 +596,7 @@ CREATE FUNCTION test_type_conversion_array_error() RETURNS int[] AS $$
 return 5
 $$ LANGUAGE plpythonu;
 SELECT * FROM test_type_conversion_array_error();
-ERROR:  PL/Python: return value of function with array return type is not a Python sequence
+ERROR:  return value of function with array return type is not a Python sequence
 CONTEXT:  while creating return value
 PL/Python function "test_type_conversion_array_error"
 --
diff --git a/src/pl/plpython/expected/plpython_types_3.out b/src/pl/plpython/expected/plpython_types_3.out
index 38ddf02985073a2a4fa9271aab99b035e2cd4bb9..eeb23b7b5e790944191468e3aed16734c4c707bc 100644
--- a/src/pl/plpython/expected/plpython_types_3.out
+++ b/src/pl/plpython/expected/plpython_types_3.out
@@ -596,7 +596,7 @@ CREATE FUNCTION test_type_conversion_array_error() RETURNS int[] AS $$
 return 5
 $$ LANGUAGE plpython3u;
 SELECT * FROM test_type_conversion_array_error();
-ERROR:  PL/Python: return value of function with array return type is not a Python sequence
+ERROR:  return value of function with array return type is not a Python sequence
 CONTEXT:  while creating return value
 PL/Python function "test_type_conversion_array_error"
 --
diff --git a/src/pl/plpython/expected/plpython_unicode_2.out b/src/pl/plpython/expected/plpython_unicode_2.out
index 2da7409a01b5df612ad4cf75bc701c4cf7fbfc5f..d4f9a5d2fab382e0b5890deb3aaf3025018e3359 100644
--- a/src/pl/plpython/expected/plpython_unicode_2.out
+++ b/src/pl/plpython/expected/plpython_unicode_2.out
@@ -24,12 +24,12 @@ rv = plpy.execute(plan, ["foo", "bar"], 1)
 return rv[0]["testvalue"]
 ' LANGUAGE plpythonu;
 SELECT unicode_return();
-ERROR:  PL/Python: could not convert Python Unicode object to PostgreSQL server encoding
+ERROR:  could not convert Python Unicode object to PostgreSQL server encoding
 DETAIL:  UnicodeError: ASCII encoding error: ordinal not in range(128)
 CONTEXT:  while creating return value
 PL/Python function "unicode_return"
 INSERT INTO unicode_test (testvalue) VALUES ('test');
-ERROR:  PL/Python: could not convert Python Unicode object to PostgreSQL server encoding
+ERROR:  could not convert Python Unicode object to PostgreSQL server encoding
 DETAIL:  UnicodeError: ASCII encoding error: ordinal not in range(128)
 CONTEXT:  while modifying trigger row
 PL/Python function "unicode_trigger"
@@ -39,9 +39,9 @@ SELECT * FROM unicode_test;
 (0 rows)
 
 SELECT unicode_plan1();
-WARNING:  PL/Python: plpy.SPIError: unrecognized error in PLy_spi_execute_plan
+WARNING:  plpy.SPIError: unrecognized error in PLy_spi_execute_plan
 CONTEXT:  PL/Python function "unicode_plan1"
-ERROR:  PL/Python: plpy.SPIError: PL/Python: could not convert Python Unicode object to PostgreSQL server encoding
+ERROR:  plpy.SPIError: could not convert Python Unicode object to PostgreSQL server encoding
 DETAIL:  UnicodeError: ASCII encoding error: ordinal not in range(128)
 CONTEXT:  PL/Python function "unicode_plan1"
 SELECT unicode_plan2();
diff --git a/src/pl/plpython/expected/plpython_unicode_3.out b/src/pl/plpython/expected/plpython_unicode_3.out
index 63eebca9d20e673c889e4d46a726dca4da64458d..ab3488d9541edb7f964b55d284c617443f0b0d19 100644
--- a/src/pl/plpython/expected/plpython_unicode_3.out
+++ b/src/pl/plpython/expected/plpython_unicode_3.out
@@ -24,12 +24,12 @@ rv = plpy.execute(plan, ["foo", "bar"], 1)
 return rv[0]["testvalue"]
 ' LANGUAGE plpythonu;
 SELECT unicode_return();
-ERROR:  PL/Python: could not convert Python Unicode object to PostgreSQL server encoding
+ERROR:  could not convert Python Unicode object to PostgreSQL server encoding
 DETAIL:  UnicodeEncodeError: 'ascii' codec can't encode character u'\x80' in position 0: ordinal not in range(128)
 CONTEXT:  while creating return value
 PL/Python function "unicode_return"
 INSERT INTO unicode_test (testvalue) VALUES ('test');
-ERROR:  PL/Python: could not convert Python Unicode object to PostgreSQL server encoding
+ERROR:  could not convert Python Unicode object to PostgreSQL server encoding
 DETAIL:  UnicodeEncodeError: 'ascii' codec can't encode character u'\x80' in position 0: ordinal not in range(128)
 CONTEXT:  while modifying trigger row
 PL/Python function "unicode_trigger"
@@ -39,9 +39,9 @@ SELECT * FROM unicode_test;
 (0 rows)
 
 SELECT unicode_plan1();
-WARNING:  PL/Python: plpy.SPIError: unrecognized error in PLy_spi_execute_plan
+WARNING:  plpy.SPIError: unrecognized error in PLy_spi_execute_plan
 CONTEXT:  PL/Python function "unicode_plan1"
-ERROR:  PL/Python: plpy.SPIError: PL/Python: could not convert Python Unicode object to PostgreSQL server encoding
+ERROR:  plpy.SPIError: could not convert Python Unicode object to PostgreSQL server encoding
 DETAIL:  UnicodeEncodeError: 'ascii' codec can't encode character u'\x80' in position 0: ordinal not in range(128)
 CONTEXT:  PL/Python function "unicode_plan1"
 SELECT unicode_plan2();
diff --git a/src/pl/plpython/plpython.c b/src/pl/plpython/plpython.c
index 21cb106b80c25fb8e767511ab3c31a22cc07edbb..aafe556c04e2677ac8efe51ed930bd067a73fa47 100644
--- a/src/pl/plpython/plpython.c
+++ b/src/pl/plpython/plpython.c
@@ -3615,14 +3615,14 @@ PLy_elog(int elevel, const char *fmt,...)
 	{
 		if (fmt)
 			ereport(elevel,
-					(errmsg("PL/Python: %s", emsg.data),
+					(errmsg("%s", emsg.data),
 					 (xmsg) ? errdetail("%s", xmsg) : 0,
 					 (hint) ? errhint("%s", hint) : 0,
 					 (query) ? internalerrquery(query) : 0,
 					 (position) ? internalerrposition(position) : 0));
 		else
 			ereport(elevel,
-					(errmsg("PL/Python: %s", xmsg),
+					(errmsg("%s", xmsg),
 					 (detail) ? errdetail("%s", detail) : 0,
 					 (hint) ? errhint("%s", hint) : 0,
 					 (query) ? internalerrquery(query) : 0,