diff --git a/RELEASE-NOTES.txt b/RELEASE-NOTES.txt
index dbc68cb..2a993f2 100644
--- a/RELEASE-NOTES.txt
+++ b/RELEASE-NOTES.txt
@@ -1,111 +1,51 @@
 
-              Apache Log4j 2.4 RELEASE NOTES
+              Apache Log4j 2.4.1 RELEASE NOTES
 
-The Apache Log4j 2 team is pleased to announce the Log4j 2.4 release!
+The Apache Log4j 2 team is pleased to announce the Log4j 2.4.1 release!
 
 Apache log4j is a well known framework for logging application behavior. Log4j 2 is an upgrade to
 Log4j that provides significant improvements over its predecessor, Log4j 1.x, and provides
 many other modern features such as support for Markers, property substitution using Lookups, and asynchronous
 Loggers. In addition, Log4j 2 will not lose events while reconfiguring.
 
-This is the eighth GA release. It contains several bugfixes and new features. As of this release
-Log4j now requires a minimum of Java 7.
+This is the ninth GA release. It contains several bugfixes and new features.
+Log4j 2 requires a minimum of Java 7.
 
-GA Release 2.4
+GA Release 2.4.1
 
 Changes in this version include:
 
 New features:
-o LOG4J2-635:  Add support for configuration via Properties. 
-o LOG4J2-952:  Add ConfigurationBuilder. 
-o LOG4J2-599:  Added support for Java 8 lambda expressions to lazily construct a log message only if
-              the requested log level is enabled. 
-o LOG4J2-1118:  Updated Logger wrapper generator tool to add Java 8 lambda support for custom log levels. 
-o LOG4J2-1107:  New Appender for Apache Kafka. Thanks to Mikael Ståldal. 
-o LOG4J2-1113:  New publisher Appender for ZeroMQ (using JeroMQ). Thanks to Gary Gregory. 
-o LOG4J2-1088:  Add Comma Separated Value (CSV) layouts for parameter and event logging. Thanks to Gary Gregory. 
-o LOG4J2-1090:  Add Core Configurator APIs to change a logger's level. 
-o LOG4J2-1105:  Add API org.apache.logging.log4j.Level.isInRange(Level, Level). Thanks to Gary Gregory. 
-o LOG4J2-1106:  Add a LevelRangeFilter class. Thanks to Gary Gregory. 
-o LOG4J2-1076:  Added support for system nanosecond time in pattern layout. 
-o LOG4J2-1075:  Added support for compressing to bzip2 format on file rollover. 
-o LOG4J2-1077:  Support additional Apache Commons Compress compression formats on rollover: Deflate, Pack200, XY. 
-o LOG4J2-767:  New module for Liquibase integration. Thanks to Mikael Ståldal. 
-o LOG4J2-1023:  New RewritePolicy for changing level of a log event. Thanks to Mikael Ståldal. 
-o LOG4J2-1015:  Add a way to route messages based on the %marker in Layout for RoutingAppender. Thanks to Daniel Marcotte. 
-o LOG4J2-1050:  Add a Log4jLookup class to help write log files relative to log4j2.xml. Thanks to Adam Retter. 
-o LOG4J2-1057:  Add API org.apache.logging.log4j.LogManager.getFormatterLogger(). 
-o LOG4J2-1066:  Expose Log4jContextFactory's ShutdownCallbackRegistry. Thanks to Charles Allen. 
+o LOG4J2-1129:  Allow PatternLayout to select a pattern to use based on some selection criteria. 
+o LOG4J2-1145:  Add %equals to PatternLayout to test and replace patterns with strings. 
+o LOG4J2-1147:  Add %equalsIgnoreCase to PatternLayout to test and replace patterns with strings. 
+o LOG4J2-1146:  Add %notEmpty to PatternLayout to avoid output of patterns where all variables are empty. 
+o LOG4J2-1020:  Add possibility to set shutdown timeout on AsyncAppender. 
 
 Fixed Bugs:
-o LOG4J2-1121:  Fixed potential race condition on reconfiguration. Introduced ReliabilityStrategy to facilitate
-        switching between different mechanisms for preventing log events from being dropped on reconfiguration. 
-o LOG4J2-1123:  Core Configurator.initialize(String, ClassLoader, String) fails to work when config location is a file path. Thanks to Gary Gregory. 
-o LOG4J2-1117:  OutputStreamManager in ConsoleAppender leaking managers. Thanks to Marcus Thiesen. 
-o LOG4J2-1044:  Write pending events to Flume when the appender is stopped. 
-o LOG4J2-1108:  NullPointerException when passing null to java.util.logging.Logger.setLevel(). Thanks to Mikael Ståldal. 
-o LOG4J2-1110:  org.apache.logging.log4j.jul.CoreLogger.setLevel() checks for security permission too late. 
-o LOG4J2-1084:  Misleading StatusLogger WARN event in LogManager with java.util.Map. Thanks to Philipp Schneider. 
-o LOG4J2-1051:  NoClassDefFoundError when starting app on Google App Engine. Thanks to Lukasz Lenart. 
-o LOG4J2-684:  ExtendedThrowablePatternConverter does not print suppressed exceptions. Thanks to Joern Huxhorn, Mauro Molinari. 
-o LOG4J2-1069:  Improper handling of JSON escape chars when deserializing JSON log events. Thanks to Sam Braam. 
-o LOG4J2-1068:  Exceptions not logged when using TcpSocketServer + SerializedLayout. Thanks to Andy McMullan. 
-o LOG4J2-1067:  ThrowableProxy getExtendedStackTraceAsString throws NPE on deserialized nested exceptions. Thanks to Sam Braam. 
-o LOG4J2-1049:  AsyncAppender now resets the thread interrupted flag after catching InterruptedException. Thanks to Robert Schaft. 
-o LOG4J2-1048:  FileConfigurationMonitor unnecessarily calls System.currentTimeMillis() causing high CPU usage. Thanks to Nikhil. 
-o LOG4J2-1037:  Backward compatibility issue in log4j-1.2-api NDC pop() and peek(). Thanks to Marc Dergacz. 
-o LOG4J2-1025:  Custom java.util.logging.Level gives null Log4j Level and causes NPE. Thanks to Mikael Ståldal. 
-o LOG4J2-1033:  SimpleLogger creates unnecessary Map objects by calling ThreadContext.getContext() instead of getImmutableContext(). Thanks to Mikael Ståldal. 
-o LOG4J2-1026:  HighlightConverter does not obey noConsoleNoAnsi. 
-o LOG4J2-1019:  ZipCompressAction leaves files open until GC when an IO error takes place. 
-o LOG4J2-1020:  GzCompressAction leaves files open until GC when an IO error takes place. 
-o LOG4J2-1038:  Incorrect documentation for layout default charset. Thanks to Gili. 
-o LOG4J2-1042:  Socket and Syslog appenders don't take timeout into account at startup. Thanks to Guillaume Turri. 
-o LOG4J2-934:  Circular suppressed Exception throws StackOverflowError. Thanks to Kenneth Gendron. 
-o LOG4J2-1046:  Circular Exception cause throws StackOverflowError. Thanks to Kenneth Gendron. 
-o LOG4J2-982:  Use System.nanoTime() to measure time intervals. Thanks to Mikhail Mazurskiy. 
-o LOG4J2-1045:  Externalize log4j2.xml via URL resource. Thanks to Günter Albrecht. 
-o LOG4J2-1058:  Log4jMarker#contains(String) does not respect org.slf4j.Marker contract. Thanks to Daniel Branzea. 
-o LOG4J2-1060:  Log4jMarker#contains(Marker) does not respect org.slf4j.Marker contract. 
-o LOG4J2-1061:  Log4jMarker#remove(Marker) does not respect org.slf4j.Marker contract. 
-o LOG4J2-1062:  Log4jMarker#add(Marker) does not respect org.slf4j.Marker contract. 
-o LOG4J2-1064:  org.apache.logging.slf4j.Log4jMarker does not implement org.slf4j.Marker.equals(Object) org.slf4j.Marker.hashCode(). 
-o LOG4J2-889:  Header in layout should not be written on application startup if appending to an existing file. Fixes LOG4J2-1030. Thanks to Maciej Karaś, Kenneth Leider. 
-o LOG4J2-918:  Clarify documentation for combining async with sync loggers. 
-o LOG4J2-1078:  GelfLayout throws exception if some log event fields are null. Thanks to Mikael Ståldal. 
+o LOG4J2-1153:  Fixed NullPointerException when only root logger is defined (and no named loggers) in configuration properties file. 
+o LOG4J2-1140:  Fixed bug where headers were not being written to first file with RollingFileAppender. 
+o LOG4J2-1149:  Fixed bug where PatternLayout predefined date pattern with time zone always renders default date format. 
+o LOG4J2-1050:  Fixed Log4jLookup. 
+o LOG4J2-1142:  Fix potential memory leak in web applications by using a straight ThreadLocal field instead of subclassing ThreadLocal. 
+o LOG4J2-1135:  Compression on rollover was broken: log file was renamed to .zip but not compressed. 
+o LOG4J2-1127:  log4j2.xml cannot be parsed on Oracle Weblogic 12c. 
+o LOG4J2-1132:  Do not use MongoDB driver 2.13.3 deprecated methods. 
+o LOG4J2-1144:  Add %markerSimpleName in pattern layout should evaluate to marker name (not toString()). 
+o LOG4J2-1126:  Web site corrections and updates. 
 
 Changes:
-o LOG4J2-1017:  Update Java platform from Java 6 to 7. From this version onwards, log4j 2 requires Java 7. 
-o LOG4J2-812:  PatternLayout timestamp formatting performance improvement: replaced synchronized SimpleDateFormat with
-        Apache Commons FastDateFormat. This and better caching resulted in a ~3-30X faster timestamp formatting. 
-o LOG4J2-1097:  PatternLayout timestamp formatting performance improvement: predefined date formats (and variants using
-        a period '.' millisecond separator instead of ',') are now formatted ~2-10X faster than other date formats. 
-o LOG4J2-1096:  Improved performance of ParameterizedMessage::getFormattedMessage by ~2X. 
-o LOG4J2-1120:  LoggerConfig performance improvements: avoid unnecessary lock acquisition, use more efficient data structure. 
-o LOG4J2-1125:  PatternLayout performance improvement by caching and reusing a ThreadLocal StringBuilder. 
-o LOG4J2-1114:  Add thread name to status logger layout. 
-o LOG4J2-1010:  Pass log event when interpolating logger properties. 
-o LOG4J2-1044:  Support batchSize in FlumeAvroManager. 
-o LOG4J2-1065:  Define org.apache.logging.log4j.Marker.equals(Object) and org.apache.logging.log4j.Marker.hashCode(). 
-o LOG4J2-1063:  Avoid creating temporary array object in org.apache.logging.slf4j.Log4jMarker.iterator(). 
-o LOG4J2-890:  log4j-web-2.1 should workaround a bug in JBOSS EAP 6.2. Thanks to Hassan Kalaldeh, Robert Andersson, Remko Popma. 
-o LOG4J2-403:  MongoDB appender, username and password should be optional. Thanks to Poorna Subhash P, Jeremy Lautman. 
-o LOG4J2-1035:  Log4j2 tries to SystemClassLoader when running on Google AppEngine. 
-o LOG4J2-1022:  Allow a list of keys to be specified in the MDC pattern converter. 
-o LOG4J2-959:  Fix FindBugs DM_DEFAULT_ENCODING bug in SimpleLogger.logMessage() and simplify code. 
-o LOG4J2-1036:  Update Apache Flume from 1.5.2 to 1.6.0. 
-o LOG4J2-1041:  Update MongoDB driver from 2.11.2 to 2.13.2. 
-o LOG4J2-1018:  Update database tests from H2 1.3.175 to 1.3.176. 
-o LOG4J2-1070:  Update Java Mail from 1.5.2 to 1.5.4. 
-o LOG4J2-1079:  Update Jackson from 2.5.3 to 2.5.4. 
-o LOG4J2-1879:  Update Jackson from 2.5.4 to 2.6.0. 
-o LOG4J2-1092:  Update Jackson from 2.6.0 to 2.6.1. 
-o LOG4J2-1104:  Update Apache Commons Compress from 1.9 to 1.10. 
+o LOG4J2-1151:  Performance improvement: backport Java 8 fast ISO-8859-1 String to byte[] encoder to AbstractStringLayout. 
+o LOG4J2-935:  Performance improvement when converting Strings to byte[] arrays. 
+o LOG4J2-1040:  Update MongoDB driver from 2.13.3 to 3.0.4. 
+o LOG4J2-1128:  Reuse StringBuilder to improve performance for String-based layouts: CSV, GELF, HTML, RFC524, Syslog. 
+o LOG4J2-1131:  Update mongo-java-driver from 2.13.2 to 2.13.3. 
+o LOG4J2-1138:  Do not use Jackson deprecated methods. 
+o LOG4J2-1139:  Update Jackson from 2.6.1 to 2.6.2. 
+o LOG4J2-1150:  Update kafka-clients from 0.8.2.1 to 0.8.2.2. 
 
-Removed:
-o Removed experimental interface LevelLogger which got committed to master by mistake. 
 
-Apache Log4j 2.4 requires a minimum of Java 7 to build and run. Log4j 2.4 and greater requires Java 7,
+Apache Log4j 2.4.1 requires a minimum of Java 7 to build and run. Log4j 2.4 and greater requires Java 7,
 version 2.3 required Java 6.
 
 Basic compatibility with Log4j 1.x is provided through the log4j-1.2-api component, however it does not implement some of the
diff --git a/pom.xml b/pom.xml
index bfad096..78dad40 100644
--- a/pom.xml
+++ b/pom.xml
@@ -164,8 +164,8 @@
   <properties>
     <!-- make sure to update these for each release! -->
     <log4jParentDir>${basedir}</log4jParentDir>
-    <Log4jReleaseVersion>2.4</Log4jReleaseVersion>
-    <Log4jReleaseCount>eighth</Log4jReleaseCount>
+    <Log4jReleaseVersion>2.4.1</Log4jReleaseVersion>
+    <Log4jReleaseCount>ninth</Log4jReleaseCount>
     <Log4jReleaseManager>Ralph Goers</Log4jReleaseManager>
     <Log4jReleaseKey>B3D8E1BA</Log4jReleaseKey>
     <!-- <Log4jReleaseManager>Matt Sicker</Log4jReleaseManager>
diff --git a/src/changes/announcement.vm b/src/changes/announcement.vm
index a8d5599..fa38eba 100644
--- a/src/changes/announcement.vm
+++ b/src/changes/announcement.vm
@@ -26,8 +26,8 @@
 many other modern features such as support for Markers, property substitution using Lookups, and asynchronous
 Loggers. In addition, Log4j 2 will not lose events while reconfiguring.
 
-This is the ${relCount} GA release. It contains several bugfixes and new features. As of this release
-Log4j now requires a minimum of Java 7.
+This is the ${relCount} GA release. It contains several bugfixes and new features.
+Log4j 2 requires a minimum of Java 7.
 
 ## Hack to improve layout: replace all pairs of spaces with a single new-line
 $release.description.replaceAll("  ", "
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index ab6a089..e250e6e 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -23,15 +23,15 @@
     <title>Changes</title>
   </properties>
   <body>
-    <release version="2.4.1" date="2015-MM-DD" description="GA Release 2.4.1">
+    <release version="2.4.1" date="2015-10-08" description="GA Release 2.4.1">
       <action issue="LOG4J2-1129" dev="rgoers" type="add">
         Allow PatternLayout to select a pattern to use based on some selection criteria.
       </action>
       <action issue="LOG4J2-1145" dev="ggregory" type="add">
-        Add %equals to PatternLayout to test and replace patterns with strings. 
+        Add %equals to PatternLayout to test and replace patterns with strings.
       </action>
       <action issue="LOG4J2-1147" dev="ggregory" type="add">
-        Add %equalsIgnoreCase to PatternLayout to test and replace patterns with strings. 
+        Add %equalsIgnoreCase to PatternLayout to test and replace patterns with strings.
       </action>
       <action issue="LOG4J2-1146" dev="ggregory" type="add">
         Add %notEmpty to PatternLayout to avoid output of patterns where all variables are empty.
@@ -86,13 +86,13 @@
       </action>
       <action issue="LOG4J2-1138" dev="ggregory" type="update">
         Do not use Jackson deprecated methods.
-      </action>      
+      </action>
       <action issue="LOG4J2-1139" dev="ggregory" type="update">
         Update Jackson from 2.6.1 to 2.6.2.
-      </action>      
+      </action>
       <action issue="LOG4J2-1150" dev="ggregory" type="update">
         Update kafka-clients from 0.8.2.1 to 0.8.2.2.
-      </action>      
+      </action>
     </release>
     <release version="2.4" date="2015-09-20" description="GA Release 2.4">
       <action issue="LOG4J2-635" dev="rgoers" type="add">
