If there are no log files when a process starts, everything is fine. A new log is created and the files are properly rolled to .1, .2, .3, etc. A new log is also created the next day with correct indexes.
However, if log files exist for any day when the process starts, RollingLogFileAppender incorrectly initializes the starting backup index to the maximum index for all days instead of using the maximum index for the current day. In other words, it completely ignores the date pattern when determining whether to consider a particular file in the backup index algorithm.
It looks like the error stems from the following code being commented out on lines 893-901:
int endLength = curFileName.Length - index;
if (baseFile.Length + endLength != curFileName.Length)
This code is not commented out in 1.2.10 and we do not see the issue after downgrading to the earlier release.