You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by mi...@apache.org on 2016/01/12 17:50:56 UTC
[48/50] logging-log4j2 git commit: [LOG4J2-1232] Incorrect log
rotation in last week of year.
[LOG4J2-1232] Incorrect log rotation in last week of year.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/9d1ffa7e
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/9d1ffa7e
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/9d1ffa7e
Branch: refs/heads/LOG4J-1181
Commit: 9d1ffa7e4683b16c653a6fe3f2f3093662526cb2
Parents: 6971f58
Author: ggregory <gg...@apache.org>
Authored: Mon Jan 11 10:36:11 2016 -0800
Committer: ggregory <gg...@apache.org>
Committed: Mon Jan 11 10:36:11 2016 -0800
----------------------------------------------------------------------
.../log4j/core/appender/rolling/PatternProcessor.java | 6 ++++++
.../log4j/core/appender/rolling/PatternProcessorTest.java | 8 +++++---
src/changes/changes.xml | 3 +++
3 files changed, 14 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/9d1ffa7e/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
index fbc74b4..af5bcdb 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessor.java
@@ -88,6 +88,10 @@ public class PatternProcessor {
* @return the next potential rollover time and the timestamp for the target file.
*/
public long getNextTime(final long currentMillis, final int increment, final boolean modulus) {
+ //
+ // https://issues.apache.org/jira/browse/LOG4J2-1232
+ // Call setMinimalDaysInFirstWeek(7);
+ //
prevFileTime = nextFileTime;
long nextTime;
@@ -97,6 +101,8 @@ public class PatternProcessor {
final Calendar currentCal = Calendar.getInstance();
currentCal.setTimeInMillis(currentMillis);
final Calendar cal = Calendar.getInstance();
+ currentCal.setMinimalDaysInFirstWeek(7);
+ cal.setMinimalDaysInFirstWeek(7);
cal.set(currentCal.get(Calendar.YEAR), 0, 1, 0, 0, 0);
cal.set(Calendar.MILLISECOND, 0);
if (frequency == RolloverFrequency.ANNUALLY) {
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/9d1ffa7e/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessorTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessorTest.java
index 58b27d9..3b9e22a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/PatternProcessorTest.java
@@ -236,8 +236,10 @@ public class PatternProcessorTest {
}
}
+ /**
+ * Tests https://issues.apache.org/jira/browse/LOG4J2-1232
+ */
@Test
- @Ignore("https://issues.apache.org/jira/browse/LOG4J2-1232")
public void testGetNextTimeWeeklyReturnsFirstWeekInYear_US() {
final Locale old = Locale.getDefault();
Locale.setDefault(Locale.US); // force 1st day of the week to be Sunday
@@ -247,9 +249,9 @@ public class PatternProcessorTest {
initial.set(2015, Calendar.DECEMBER, 28, 00, 00, 00); // Monday, December 28, 2015
final long actual = pp.getNextTime(initial.getTimeInMillis(), 1, false);
- // expect Monday January 4, 2016
+ // expect Sunday January 3, 2016
final Calendar expected = Calendar.getInstance();
- expected.set(2016, Calendar.JANUARY, 4, 00, 00, 00);
+ expected.set(2016, Calendar.JANUARY, 3, 00, 00, 00);
expected.set(Calendar.MILLISECOND, 0);
assertEquals(format(expected.getTimeInMillis()), format(actual));
} finally {
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/9d1ffa7e/src/changes/changes.xml
----------------------------------------------------------------------
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 17c81f6..63fb8c5 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -40,6 +40,9 @@
<action issue="LOG4J2-1192" dev="ggregory" type="add" due-to="Jörg Bretschneider, Gary Gregory">
Dynamic Subject for SMTP Appender.
</action>
+ <action issue="LOG4J2-1232" dev="ggregory" type="fix" due-to="Nikolai">
+ Incorrect log rotation in last week of year.
+ </action>
<action issue="LOG4J2-1248" dev="rpopma" type="fix">
Fixed broken nanotime in pattern layout.
</action>