Re: Questions About Tomcat Exception Handling

2015-01-21 Thread Mark Thomas
On 21/01/2015 19:14, Felipe Ebert wrote:
 Hello
 
 I'm sorry that this mail is not a development issue itself, it is just a
 question about Tomcat' exception handling. I was checking some mails at
 Tomcat dev list and I found two interesting and contrasting responses
 regarding exception handling: one is from Mark Thomas and another is from
 Remy Maucherat:
 
 Mark Thomas:
 http://www.mail-archive.com/dev%40tomcat.apache.org/msg45180.html
 
 Remy Maucherat:
 http://www.mail-archive.com/dev%40tomcat.apache.org/msg10280.html

The tone might be different but the response is pretty much the same: we
don't view the issues reported as bugs.

 So, I just would like to understand why Tomcat don't care about those
 generic catches patterns (catch Throwable or catch Exception) as Remmy said
 in his mail, which contrasts with Mark comments. And also I would really
 appreciate if anyone could give me some insights in the matter.

Again, I don't read the substance of our responses as being that different.

Where these patterns are used they are used with good reason. If someone
reports one that isn't backed with a good reason we'll fix it. The
frustrating thing from our point of view is that most of the reports we
receive along these lines are from people who clearly have zero
understanding of the Tomcat code and are blindly reporting something
some static analysis tool has reported.

I'm not going to justify every single time we catch Throwable but a
typical pattern is when calling user code that can (and often does)
throw some random exception the only viable option when any error in
user code needs handling (even if it is to simply ignore it) is to catch
Throwable.

 And lastly, I also would like to hear some comments about how frequent bugs
 are reported in Tomcat mailing list and not in the Bugzilla. I know the
 pattern is to use Bugzilla, but I saw some comments from Dr. Justin
 Erenkrantz (from Apache team) discussing that there are a lot of important
 bugs fixes only reported in Tomcat mailing list.

Take a look at the change log. That will give you an idea of how many
things get fixed that aren't in bugzilla. Whether it was originally
reported via a mailing list isn't recorded. They will be a mix of
mailing list, things committers spot at work and things committers spot
while looking at the code for some other reason.

Mark


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: Tagging Tomcat 7.0.58

2015-01-21 Thread Violeta Georgieva
2015-01-21 18:20 GMT+02:00 Felix Schumacher 
felix.schumac...@internetallee.de:



 Am 21. Januar 2015 15:07:50 MEZ, schrieb Violeta Georgieva 
violet...@apache.org:
 Hi,
 
 I would like to start preparing Tomcat 7.0.58.
 If you want to add something to this release please reply here.
 Should we include the fix for 57420?

That one I have in mind.

Regards
Violeta

 Regards
 Felix
 
 Thanks,
 Violeta


 -
 To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
 For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1653562 - /tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

2015-01-21 Thread Mark Thomas
On 21 January 2015 16:07:21 GMT+00:00, Christopher Schultz 
ch...@christopherschultz.net wrote:
Mark,

On 1/21/15 10:45 AM, ma...@apache.org wrote:
 Author: markt
 Date: Wed Jan 21 15:45:06 2015
 New Revision: 1653562
 
 URL: http://svn.apache.org/r1653562
 Log:
 Fix compilation error

Just curious: this compiled fine for me. Why the change?

Because the class referenced was removed several weeks ago.

Mark


-chris

 Modified:
 tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
 
 Modified:
tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
 URL:
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java?rev=1653562r1=1653561r2=1653562view=diff

==
 --- tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
(original)
 +++ tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
Wed Jan 21 15:45:06 2015
 @@ -37,8 +37,7 @@ public class WarWatcher {
  
  /*--Static Variables*/
  private static final Log log =
LogFactory.getLog(WarWatcher.class);
 -private static final StringManager sm =
 -StringManager.getManager(Constants.Package);
 +private static final StringManager sm =
StringManager.getManager(WarWatcher.class);
  
  /*--Instance Variables--*/
  /**
 
 
 
 -
 To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
 For additional commands, e-mail: dev-h...@tomcat.apache.org
 



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Questions About Tomcat Exception Handling

2015-01-21 Thread Felipe Ebert
Hello

I'm sorry that this mail is not a development issue itself, it is just a
question about Tomcat' exception handling. I was checking some mails at
Tomcat dev list and I found two interesting and contrasting responses
regarding exception handling: one is from Mark Thomas and another is from
Remy Maucherat:

Mark Thomas:
http://www.mail-archive.com/dev%40tomcat.apache.org/msg45180.html

Remy Maucherat:
http://www.mail-archive.com/dev%40tomcat.apache.org/msg10280.html


So, I just would like to understand why Tomcat don't care about those
generic catches patterns (catch Throwable or catch Exception) as Remmy said
in his mail, which contrasts with Mark comments. And also I would really
appreciate if anyone could give me some insights in the matter.

And lastly, I also would like to hear some comments about how frequent bugs
are reported in Tomcat mailing list and not in the Bugzilla. I know the
pattern is to use Bugzilla, but I saw some comments from Dr. Justin
Erenkrantz (from Apache team) discussing that there are a lot of important
bugs fixes only reported in Tomcat mailing list.

I would like to thank you for the time. Any response will be very important
to my research.

--
Felipe Ebert


svn commit: r1653576 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/ha/deploy/LocalStrings.properties java/org/apache/catalina/ha/deploy/WarWatcher.java

2015-01-21 Thread schultz
Author: schultz
Date: Wed Jan 21 16:18:22 2015
New Revision: 1653576

URL: http://svn.apache.org/r1653576
Log:
Prefer CamelCase in log string keys.

Modified:
tomcat/tc7.0.x/trunk/   (props changed)

tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

Propchange: tomcat/tc7.0.x/trunk/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan 21 16:18:22 2015
@@ -1,2 +1,2 @@
 
/tomcat/tc8.0.x/trunk:1636525,1637336,1637685,1637709,1638726,1640089,1640276,1640349,1640363,1640366,1640642,1640672,1640674,1640689,1640884,1641001,1641065,1641067,1641375,1641638,1641723,1641726,1641729-1641730,1641736,1641988,1642669-1642670,1642698,1642701,1643205,1643215,1643217,1643230,1643232,1643273,1643285,1643329-1643330,1643511,1643513,1643521,1643539,1643571,1643581-1643582,1643635,1643655,1643738,1643964,1644018,1644333,1644954,1644992,1645014,1645360,1645456,1645627,1645642,1645686,1645903-1645904,1645908-1645909,1645913,1645920,1646458,1646460-1646462,1647043,1648816,1651420-1651422,1651844,1652939-1652940,1652973
-/tomcat/trunk:1156115-1157160,1157162-1157859,1157862-1157942,1157945-1160347,1160349-1163716,1163718-1166689,1166691-1174340,1174342-1175596,1175598-1175611,1175613-1175932,1175934-1177783,1177785-1177980,1178006-1180720,1180722-1183094,1183096-1187753,1187755,1187775,1187801,1187806,1187809,1187826-1188312,1188314-1188401,1188646-1188840,1188842-1190176,1190178-1195223,1195225-1195953,1195955,1195957-1201238,1201240-1203345,1203347-1206623,1206625-1208046,1208073,1208096,1208114,1208145,1208772,1209194-1212125,1212127-1220291,1220293,1220295-1221321,1221323-1222329,1222332-1222401,1222405-1222795,1222850-1222950,1222969-1225326,1225328-1225463,1225465,1225627,1225629-1226534,1226536-1228908,1228911-1228923,1228927-1229532,1229534-1230766,1230768-1231625,1231627-1233414,1233419-1235207,1235209-1237425,1237427,1237429-1237977,1237981,1237985,1237995,1238070,1238073,1239024-1239048,1239050-1239062,1239135,1239256,1239258-1239485,1239785-1240046,1240101,1240106,1240109,1240112,1240114
 
,1240116,1240118,1240121,1240329,1240474-1240850,1240857,1241087,1241160,1241408-1241822,1241908-1241909,1241912-1242110,1242371-1292130,1292134-1292458,1292464-1292670,1292672-1292776,1292780-1293392,1293397-1297017,1297019-1297963,1297965-1299820,1300108,1300111-1300460,1300520-1300948,1300997,1301006,1301280,1302332,1302348,1302608-1302610,1302649,1302837,1303138,1303163,1303338,1303521,1303587,1303698,1303803,1303852,1304011,1304035,1304037,1304135,1304249,1304253,1304260,1304271,1304275,1304468,1304895,1304930-1304932,1305194,1305943,1305965,1306556,1306579-1306580,1307084,1307310,1307511-1307512,1307579,1307591,1307597,1310636,1310639-1310640,1310642,1310701,1311212,1311995,1327617,1327670,1331766,1333161,1333173,1333827,1334787,1335026,1335257,1335547,1335692,1335711,1335731,1336515,1336813,1336864,1336868,1336884,1337419,1337426,1337546,1337572,1337591-1337595,1337643,1337707,1337719,1337734,1337741,1337745,1338151-1338154,1338178,1342027,1342029,1342315,1342320,1342476,1342
 
498,1342503,1342717,1342795,1342805,1343044-1343046,1343335,1343394,1343400,1343629,1343708,1343718,1343895,1344063,1344068,1344250,1344266,1344515,1344528,1344612,1344629,1344725,1344868,1344890,1344893,1344896,1344901,1345020,1345029,1345039,1345287-1345290,1345294,1345309,1345325,1345357,1345367,1345579-1345580,1345582,1345688,1345699,1345704,1345731-1345732,1345737,1345744,1345752,1345754,1345779,1345781,1345846,1346107,1346365,1346376,1346404,1346510,1346514,1346519,1346581,1346635,1346644,1346683,1346794,1346885,1346932,1347034,1347047,1347087,1347108-1347109,1347583,1347737,1348105,1348357,1348398,1348425,1348461-1348495,1348498,1348752,1348762,1348772,1348776,1348859,1348968,1348973,1348989,1349007,1349237,1349298,1349317,1349410,1349473,1349539,1349879,1349887,1349893,1349922,1349984,1350124,1350241,1350243,1350294-1350295,1350299,1350864,1350900,1351010,1351054,1351056,1351068,1351134-1351135,1351148,1351259,1351604,1351636-1351640,1351991,1351993,1352011,1352056,1352059,1
 

[Bug 57476] New: Incomplete html pages

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57476

Bug ID: 57476
   Summary: Incomplete html pages
   Product: Tomcat 8
   Version: 8.0.17
  Hardware: PC
Status: NEW
  Severity: normal
  Priority: P2
 Component: Catalina
  Assignee: dev@tomcat.apache.org
  Reporter: alexan...@claet.fr

Hello,
I upgrade Tomcat from 8.0.15 to 8.0.17.
I'm using SSL on tomcat server and I disabled port 80. 
with version 8.0.15 everything is fine
with version 8.0.17 for my applications a lot of html pages are incomplete, and
some applications stop responding after using them some minutes.
I downgrade to 8.0.15 to have no problem. 
Nothing in tomcat logs.
I don't know where is the problem (tomcat, my applications, ...), just want to
give you this information.
Thank you, Kind regards,
Alexandre.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653574 - in /tomcat/trunk/java/org/apache/catalina/ha/deploy: LocalStrings.properties WarWatcher.java

2015-01-21 Thread schultz
Author: schultz
Date: Wed Jan 21 16:15:56 2015
New Revision: 1653574

URL: http://svn.apache.org/r1653574
Log:
Prefer CamelCase for localized log strings.

Modified:
tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

Modified: 
tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties?rev=1653574r1=1653573r2=1653574view=diff
==
--- tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
(original)
+++ tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties Wed 
Jan 21 16:15:56 2015
@@ -46,8 +46,8 @@ farmWarDeployer.undeployEnd=Undeployment
 farmWarDeployer.undeployLocal=Undeploy local context [{0}]
 farmWarDeployer.watchDir=Cluster deployment is watching [{0}] for changes.
 
-warWatcher.checking-wars=Checking WARs in {0}
-warWatcher.listed-file-does-not-exist={0} was detected in {1} but does not 
exist. Check directory permissions on {1}?
-warWatcher.checking-war=Checking WAR file {0}
-warWatcher.check-war.result=WarInfo.check() returned {0} for {1}
-warWatcher.cant-list-watchDir=Cannot list files in WatchDir {0}: check to 
see if it is a directory and has read permissions.
+warWatcher.checkingWars=Checking WARs in {0}
+warWatcher.listedFileDoesNotExist={0} was detected in {1} but does not exist. 
Check directory permissions on {1}?
+warWatcher.checkingWar=Checking WAR file {0}
+warWatcher.checkWarResult=WarInfo.check() returned {0} for {1}
+warWatcher.cantListWatchDir=Cannot list files in WatchDir {0}: check to see 
if it is a directory and has read permissions.

Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java?rev=1653574r1=1653573r2=1653574view=diff
==
--- tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java (original)
+++ tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java Wed Jan 21 
16:15:56 2015
@@ -69,10 +69,10 @@ public class WarWatcher {
  */
 public void check() {
 if (log.isDebugEnabled())
-log.debug(sm.getString(warWatcher.checking-wars, watchDir));
+log.debug(sm.getString(warWatcher.checkingWars, watchDir));
 File[] list = watchDir.listFiles(new WarFilter());
 if (list == null) {
-log.warn(sm.getString(warWatcher.cant-list-watchDir,
+log.warn(sm.getString(warWatcher.cantListWatchDir,
   watchDir));
 
 list = new File[0];
@@ -80,7 +80,7 @@ public class WarWatcher {
 //first make sure all the files are listed in our current status
 for (int i = 0; i  list.length; i++) {
 if(!list[i].exists())
-log.warn(sm.getString(warWatcher.listed-file-does-not-exist,
+log.warn(sm.getString(warWatcher.listedFileDoesNotExist,
   list[i], watchDir));
 
 addWarInfo(list[i]);
@@ -92,7 +92,7 @@ public class WarWatcher {
 Map.EntryString,WarInfo entry = i.next();
 WarInfo info = entry.getValue();
 if(log.isTraceEnabled())
-log.trace(sm.getString(warWatcher.checking-war,
+log.trace(sm.getString(warWatcher.checkingWar,
info.getWar()));
 int check = info.check();
 if (check == 1) {
@@ -103,7 +103,7 @@ public class WarWatcher {
 i.remove();
 }
 if(log.isTraceEnabled())
-log.trace(sm.getString(warWatcher.check-war.result,
+log.trace(sm.getString(warWatcher.checkWarResult,
Integer.valueOf(check),
info.getWar()));
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1653550 - in /tomcat/trunk/java/org/apache/catalina/ha/deploy: LocalStrings.properties WarWatcher.java

2015-01-21 Thread Mark Thomas
On 21/01/2015 15:07, schu...@apache.org wrote:
 Author: schultz
 Date: Wed Jan 21 15:07:12 2015
 New Revision: 1653550
 
 URL: http://svn.apache.org/r1653550
 Log:
 Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57473
 Add more logging to WarWatcher, specifically checking for odd states like 
 non-existent files that were just listed by the filesystem, which suggests a 
 permissions problem.
 Moved log strings into LocalStrings.properties
 
 Modified:
 tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
 tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
 
 Modified: 
 tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
 URL: 
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties?rev=1653550r1=1653549r2=1653550view=diff
 ==
 --- tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
 (original)
 +++ tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
 Wed Jan 21 15:07:12 2015
 @@ -45,3 +45,9 @@ farmWarDeployer.stopped=Cluster FarmWarD
  farmWarDeployer.undeployEnd=Undeployment from [{0}] finished.
  farmWarDeployer.undeployLocal=Undeploy local context [{0}]
  farmWarDeployer.watchDir=Cluster deployment is watching [{0}] for changes.
 +
 +warWatcher.checking-wars=Checking WARs in {0}
 +warWatcher.listed-file-does-not-exist={0} was detected in {1} but does not 
 exist. Check directory permissions on {1}?
 +warWatcher.checking-war=Checking WAR file {0}
 +warWatcher.check-war.result=WarInfo.check() returned {0} for {1}
 +warWatcher.cant-list-watchDir=Cannot list files in WatchDir {0}: check to 
 see if it is a directory and has read permissions.

It would have been better to stick to CamelCase format for property
names as in the vast majority of these files - including elsewhere in
this one.

 
 Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java?rev=1653550r1=1653549r2=1653550view=diff
 ==
 --- tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java (original)
 +++ tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java Wed Jan 
 21 15:07:12 2015
 @@ -23,6 +23,7 @@ import java.util.Map;
  
  import org.apache.juli.logging.Log;
  import org.apache.juli.logging.LogFactory;
 +import org.apache.tomcat.util.res.StringManager;
  
  /**
   * The bWarWatcher /b watches the deployDir for changes made to the
 @@ -36,6 +37,8 @@ public class WarWatcher {
  
  /*--Static Variables*/
  private static final Log log = LogFactory.getLog(WarWatcher.class);
 +private static final StringManager sm =
 +StringManager.getManager(Constants.Package);

Coding style is now for up 100 chars in a code line. You probably don't
need to wrap here.

Note there is the option to use the class name directly in getManager(),
removing the need for the package name constant (that usually causes
issues when refactoring in IDEs).

  
  /*--Instance Variables--*/
  /**
 @@ -67,20 +70,31 @@ public class WarWatcher {
   */
  public void check() {
  if (log.isDebugEnabled())
 -log.debug(check cluster wars at  + watchDir);
 +log.debug(sm.getString(warWatcher.checking-wars, watchDir));
  File[] list = watchDir.listFiles(new WarFilter());
 -if (list == null)
 +if (list == null) {
 +log.warn(sm.getString(warWatcher.cant-list-watchDir,
 +  watchDir));

Probably no need to wrap here either. Maybe a few other places below but
I can't tell just by looking at the code - it looks to be close to 100
in a few places.

 +
  list = new File[0];
 +}

I was wondering about the usefulness of a debug message here saying how
many files were found. Not sure though.

Mark

  //first make sure all the files are listed in our current status
  for (int i = 0; i  list.length; i++) {
 +if(!list[i].exists())
 +
 log.warn(sm.getString(warWatcher.listed-file-does-not-exist,
 +  list[i], watchDir));
 +
  addWarInfo(list[i]);
  }
  
 -//check all the status codes and update the FarmDeployer
 +// Check all the status codes and update the FarmDeployer
  for (IteratorMap.EntryString,WarInfo i =
  currentStatus.entrySet().iterator(); i.hasNext();) {
  Map.EntryString,WarInfo entry = i.next();
  WarInfo info = entry.getValue();
 +if(log.isTraceEnabled())
 +log.trace(sm.getString(warWatcher.checking-war,
 + 

Re: svn commit: r1653562 - /tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

2015-01-21 Thread Christopher Schultz
Mark,

On 1/21/15 10:45 AM, ma...@apache.org wrote:
 Author: markt
 Date: Wed Jan 21 15:45:06 2015
 New Revision: 1653562
 
 URL: http://svn.apache.org/r1653562
 Log:
 Fix compilation error

Just curious: this compiled fine for me. Why the change?

-chris

 Modified:
 tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
 
 Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java?rev=1653562r1=1653561r2=1653562view=diff
 ==
 --- tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java (original)
 +++ tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java Wed Jan 
 21 15:45:06 2015
 @@ -37,8 +37,7 @@ public class WarWatcher {
  
  /*--Static Variables*/
  private static final Log log = LogFactory.getLog(WarWatcher.class);
 -private static final StringManager sm =
 -StringManager.getManager(Constants.Package);
 +private static final StringManager sm = 
 StringManager.getManager(WarWatcher.class);
  
  /*--Instance Variables--*/
  /**
 
 
 
 -
 To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
 For additional commands, e-mail: dev-h...@tomcat.apache.org
 



signature.asc
Description: OpenPGP digital signature


Re: Tagging Tomcat 7.0.58

2015-01-21 Thread Felix Schumacher


Am 21. Januar 2015 15:07:50 MEZ, schrieb Violeta Georgieva 
violet...@apache.org:
Hi,

I would like to start preparing Tomcat 7.0.58.
If you want to add something to this release please reply here.
Should we include the fix for 57420?

Regards
Felix

Thanks,
Violeta


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57476] Incomplete html pages

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57476

Mark Thomas ma...@apache.org changed:

   What|Removed |Added

 OS||All

--- Comment #1 from Mark Thomas ma...@apache.org ---
Which connector are you using? Does the problem stop if you switch connectors?

Is sendFile enabled? If yes, does the problem stop if sendFile is disabled?

Thread dump (ideally 3, ~10s apart) when the application stops responding?

Please provide the logs from the time the issue occurs. They may tell us
something they don't tell you.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653562 - /tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

2015-01-21 Thread markt
Author: markt
Date: Wed Jan 21 15:45:06 2015
New Revision: 1653562

URL: http://svn.apache.org/r1653562
Log:
Fix compilation error

Modified:
tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java?rev=1653562r1=1653561r2=1653562view=diff
==
--- tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java (original)
+++ tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java Wed Jan 21 
15:45:06 2015
@@ -37,8 +37,7 @@ public class WarWatcher {
 
 /*--Static Variables*/
 private static final Log log = LogFactory.getLog(WarWatcher.class);
-private static final StringManager sm =
-StringManager.getManager(Constants.Package);
+private static final StringManager sm = 
StringManager.getManager(WarWatcher.class);
 
 /*--Instance Variables--*/
 /**



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653564 - /tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

2015-01-21 Thread kkolinko
Author: kkolinko
Date: Wed Jan 21 15:45:32 2015
New Revision: 1653564

URL: http://svn.apache.org/r1653564
Log:
Fix broken XML markup

Modified:
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml?rev=1653564r1=1653563r2=1653564view=diff
==
--- tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml Wed Jan 21 15:45:32 2015
@@ -193,13 +193,14 @@
 codecontextInitialized()/code and codecontextDestroyed()/code.
 (markt)
   /fix
- fix
+  fix
 bug57461/bug: When an instance of
 codeorg.apache.catalina.startup.VersionLoggerListener/code logs the
 result of codeSystem.getProperty(java.home)/code don't report it
 in a manner that makes it look like the codeJAVA_HOME/code
 environment variable. (markt)
   /fix
+/changelog
   /subsection
   subsection name=Coyote
 changelog



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1653550 - in /tomcat/trunk/java/org/apache/catalina/ha/deploy: LocalStrings.properties WarWatcher.java

2015-01-21 Thread Christopher Schultz
Mark,

On 1/21/15 10:37 AM, Mark Thomas wrote:
 On 21/01/2015 15:07, schu...@apache.org wrote:
 Author: schultz
 Date: Wed Jan 21 15:07:12 2015
 New Revision: 1653550

 URL: http://svn.apache.org/r1653550
 Log:
 Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57473
 Add more logging to WarWatcher, specifically checking for odd states like 
 non-existent files that were just listed by the filesystem, which suggests a 
 permissions problem.
 Moved log strings into LocalStrings.properties

 Modified:
 tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
 tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

 Modified: 
 tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
 URL: 
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties?rev=1653550r1=1653549r2=1653550view=diff
 ==
 --- tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
 (original)
 +++ tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
 Wed Jan 21 15:07:12 2015
 @@ -45,3 +45,9 @@ farmWarDeployer.stopped=Cluster FarmWarD
  farmWarDeployer.undeployEnd=Undeployment from [{0}] finished.
  farmWarDeployer.undeployLocal=Undeploy local context [{0}]
  farmWarDeployer.watchDir=Cluster deployment is watching [{0}] for changes.
 +
 +warWatcher.checking-wars=Checking WARs in {0}
 +warWatcher.listed-file-does-not-exist={0} was detected in {1} but does not 
 exist. Check directory permissions on {1}?
 +warWatcher.checking-war=Checking WAR file {0}
 +warWatcher.check-war.result=WarInfo.check() returned {0} for {1}
 +warWatcher.cant-list-watchDir=Cannot list files in WatchDir {0}: check to 
 see if it is a directory and has read permissions.
 
 It would have been better to stick to CamelCase format for property
 names as in the vast majority of these files - including elsewhere in
 this one.

Okay, I can change those.

 Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
 URL: 
 http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java?rev=1653550r1=1653549r2=1653550view=diff
 ==
 --- tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java 
 (original)
 +++ tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java Wed Jan 
 21 15:07:12 2015
 @@ -23,6 +23,7 @@ import java.util.Map;
  
  import org.apache.juli.logging.Log;
  import org.apache.juli.logging.LogFactory;
 +import org.apache.tomcat.util.res.StringManager;
  
  /**
   * The bWarWatcher /b watches the deployDir for changes made to the
 @@ -36,6 +37,8 @@ public class WarWatcher {
  
  /*--Static Variables*/
  private static final Log log = LogFactory.getLog(WarWatcher.class);
 +private static final StringManager sm =
 +StringManager.getManager(Constants.Package);
 
 Coding style is now for up 100 chars in a code line. You probably don't
 need to wrap here.

ACK

 Note there is the option to use the class name directly in getManager(),
 removing the need for the package name constant (that usually causes
 issues when refactoring in IDEs).

Okay. Honestly, when I added the StringManager to the class I was a
little iffy about the use of Constants.Package, but that's the way it's
done in FarmWarDeployer in the same package, so I decided to leave it.

Should we completely remove o.a.c.ha.deploy.Constants entirely, then?
It's such a small package, it wouldn't be a big change to remove that one.

  /*--Instance Variables--*/
  /**
 @@ -67,20 +70,31 @@ public class WarWatcher {
   */
  public void check() {
  if (log.isDebugEnabled())
 -log.debug(check cluster wars at  + watchDir);
 +log.debug(sm.getString(warWatcher.checking-wars, watchDir));
  File[] list = watchDir.listFiles(new WarFilter());
 -if (list == null)
 +if (list == null) {
 +log.warn(sm.getString(warWatcher.cant-list-watchDir,
 +  watchDir));
 
 Probably no need to wrap here either. Maybe a few other places below but
 I can't tell just by looking at the code - it looks to be close to 100
 in a few places.

I usually don't aggressively wrap to 80 columns, but when method calls
have tons of arguments in them, I tend to wrap mostly to avoid endless
scrolling to see the end of the line. Looks like my default Eclipse view
can see out to 102 columns without scrolling, so I'll use that at my
metric in the future.

 +
  list = new File[0];
 +}
 
 I was wondering about the usefulness of a debug message here saying how
 many files were found. Not sure though.

With trace logging enabled, you'll see the name of every WAR file
processed. If you don't see 

svn commit: r1653575 - in /tomcat/tc8.0.x/trunk: ./ java/org/apache/catalina/ha/deploy/LocalStrings.properties java/org/apache/catalina/ha/deploy/WarWatcher.java

2015-01-21 Thread schultz
Author: schultz
Date: Wed Jan 21 16:16:40 2015
New Revision: 1653575

URL: http://svn.apache.org/r1653575
Log:
Prefer CamelCase for log string keys.

Modified:
tomcat/tc8.0.x/trunk/   (props changed)

tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

Propchange: tomcat/tc8.0.x/trunk/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan 21 16:16:40 2015
@@ -1 +1 @@
-/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892
 
,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471,1653550
+/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892
 
,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471,1653550,1653574

Modified: 
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
URL: 
http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties?rev=1653575r1=1653574r2=1653575view=diff
==
--- 
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
(original)
+++ 
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
Wed Jan 21 16:16:40 2015
@@ -46,8 +46,8 @@ farmWarDeployer.undeployEnd=Undeployment
 farmWarDeployer.undeployLocal=Undeploy local context [{0}]
 farmWarDeployer.watchDir=Cluster deployment is watching [{0}] for changes.
 
-warWatcher.checking-wars=Checking WARs in {0}
-warWatcher.listed-file-does-not-exist={0} was detected in {1} but does not 
exist. Check directory permissions on {1}?
-warWatcher.checking-war=Checking WAR file {0}
-warWatcher.check-war.result=WarInfo.check() returned {0} for {1}
-warWatcher.cant-list-watchDir=Cannot list files in WatchDir {0}: check to 
see if it is a directory and has read permissions.
+warWatcher.checkingWars=Checking WARs in {0}
+warWatcher.listedFileDoesNotExist={0} was detected in {1} but does not exist. 
Check directory permissions on {1}?
+warWatcher.checkingWar=Checking WAR file {0}
+warWatcher.checkWarResult=WarInfo.check() returned {0} for {1}
+warWatcher.cantListWatchDir=Cannot list files in 

[Tomcat Wiki] Update of HowTo by ChristopherSchultz

2015-01-21 Thread Apache Wiki
Dear Wiki user,

You have subscribed to a wiki page or wiki category on Tomcat Wiki for change 
notification.

The HowTo page has been changed by ChristopherSchultz:
https://wiki.apache.org/tomcat/HowTo?action=diffrev1=141rev2=142

  
  == How to create native launchers for Tomcat ==
  See [[TomcatCreateNativeLaunchers]] 
+ 
+ == How do I rotate catalina.out? ==
+ 
+ Honestly, the first question is why are you rotating catalina.out? Tomcat 
logs very little to catalina.out so the usual culprit is web applications that 
stupidly send output to System.out or System.err. If that's the case, what you 
ought to do is set swallowOutput=true on the application's Context 
configuration. That will send the output to a file configured (default) by 
conf/logging.properties. Once you've done that, get the application fixed to 
use a real logger, or at least use ServletContext.log().
+ 
+ If you've decided that you still absolutely positively need to rotate 
catalina.out, there is something that you have to understand: catalina.out is 
created by your shell's output redirection, just like when you type ls -l  
dir_listing.txt. So rotating the file needs to be done carefully.
+ 
+ You can't just re-name the file or you'll find that Tomcat will continue 
logging to the file under the new name. You also can't delete catalina.out and 
re-create it, or you'll never get anything logged to catalina.out after that, 
unless you restart Tomcat.
+ 
+ There are really only two ways to properly rotate catalina.out, and they both 
have downsides.
+ 
+ === Rotate catalina.out using logrotate (or similar) ===
+ 
+ To use a tool like 
[[http://linuxcommand.org/man_pages/logrotate8.html|logrotate]], you'll want to 
use the copytruncate configuration option. This will copy catalina.out to 
another file (like catalina.out.[datestamp]) and then truncates catalina.out to 
zero-bytes. There is a major downside to this if catalina.out is seeing a lot 
of action: some log messages written to the log file during the copy/truncate 
procedure may be lost.
+ 
+ === Rotate catalina.out using rotatelogs or chronolog (or similar) ===
+ 
+ To use a tool like Apache httpd's 
[[http://httpd.apache.org/docs/2.4/programs/rotatelogs.html|rotatelogs]] or 
[[http://linux.die.net/man/1/cronolog|chronolog]], you'll have to modify 
Tomcat's catalina.sh (or catalina.bat) script to change the output redirection 
from a redirect to a pipe. The existing code in catalina.sh looks like this:
+ 
+ {{{
+ eval \$_RUNJAVA\ \$LOGGING_CONFIG\ $LOGGING_MANAGER $JAVA_OPTS 
$CATALINA_OPTS \
+   -Djava.endorsed.dirs=\$JAVA_ENDORSED_DIRS\ -classpath 
\$CLASSPATH\ \
+   -Djava.security.manager \
+   -Djava.security.policy==\$CATALINA_BASE/conf/catalina.policy\ \
+   -Dcatalina.base=\$CATALINA_BASE\ \
+   -Dcatalina.home=\$CATALINA_HOME\ \
+   -Djava.io.tmpdir=\$CATALINA_TMPDIR\ \
+   org.apache.catalina.startup.Bootstrap $@ start \
+$CATALINA_OUT 21 
+ }}}
+ 
+ You'll need to change that to something which looks more like this:
+ 
+ {{{
+ eval \$_RUNJAVA\ \$LOGGING_CONFIG\ $LOGGING_MANAGER $JAVA_OPTS 
$CATALINA_OPTS \
+   -Djava.endorsed.dirs=\$JAVA_ENDORSED_DIRS\ -classpath 
\$CLASSPATH\ \
+   -Djava.security.manager \
+   -Djava.security.policy==\$CATALINA_BASE/conf/catalina.policy\ \
+   -Dcatalina.base=\$CATALINA_BASE\ \
+   -Dcatalina.home=\$CATALINA_HOME\ \
+   -Djava.io.tmpdir=\$CATALINA_TMPDIR\ \
+   org.apache.catalina.startup.Bootstrap $@ start \
+   | $PATH_TO_CHRONOLOG $CATALINA_BASE/logs/catalina.out.%Y-%m-%d
+ }}}
+ 
+ This will be somewhat similar for catalina.bat, but the actual launch command 
will look different.
+ 
+ Also note that there are currently two places in catalina.sh (and 
catalina.bat) where Tomcat is launched, depending upon whether you are using a 
security manager or not. You should read the whole catalina.sh (or 
catalina.bat) file to make sure you have handled every case where Tomcat is 
launched.
  
  = Configuration =
  == How do I set up multiple sites sharing the same war application/war file? 
==

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57478] Using non-blocking Future instead of blocking Future.get to improve performance?

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57478

Mark Thomas ma...@apache.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |INVALID

--- Comment #1 from Mark Thomas ma...@apache.org ---
Bugzilla is not a discussion for design descisions. This belongs on the dev
list.

For the record, I think the kind of change you are suggesting is wrong and is
based on a superficial understanding of the code.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57478] Using non-blocking Future instead of blocking Future.get to improve performance?

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57478

--- Comment #2 from Yu Lin yu.lin...@gmail.com ---
Thanks for the reply.
 Bugzilla is not a discussion for design descisions. This belongs on the dev
 list.
 
I think this is a performance issue, so I posted it here. Or should I send it
to dev@tomcat.apache.org

 For the record, I think the kind of change you are suggesting is wrong and
 is based on a superficial understanding of the code.
Could you elaborate a bit? Don't you think invoking Future.get() immediately
after starting the task has the same effect as sequential execution? Is there
any better suggestions?

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57478] Using non-blocking Future instead of blocking Future.get to improve performance?

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57478

--- Comment #3 from Chuck Caldarale chuck.caldar...@unisys.com ---
What part of belongs on the dev list was not clear?

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57478] New: Using non-blocking Future instead of blocking Future.get to improve performance?

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57478

Bug ID: 57478
   Summary: Using non-blocking Future instead of blocking
Future.get to improve performance?
   Product: Tomcat 8
   Version: trunk
  Hardware: PC
OS: Mac OS X 10.1
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: Catalina
  Assignee: dev@tomcat.apache.org
  Reporter: yu.lin...@gmail.com

Hi, I'm doing research on asynchronous programming. I found in many places, the
code in Tomcat 8 invokes Future.get() immediately after starting a future
task. Because Future.get() is a blocking call, the code will block
immediately. 

For example, in startInternal method of ContainerBase class (line 917), you
invoke result.get(), where result is a Future, immediately after starting
it, so the code blocks immediately. Such code has the same effect as sequential
code (or even worse since you need to use other threads). 

Why not use Guava ListenableFuture or Java8 CompletableFuture and avoid
Future.get()? These two new constructs provide callbacks to listen to the
Future's result:
http://docs.guava-libraries.googlecode.com/git/javadoc/com/google/common/util/concurrent/ListenableFuture.html

https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html

For example, in ContainerBase class, you may put the code after
result.get() (such as lines 924-937) into CompletableFuture.thenRunAsync.
Then make startInternal method return this CompletableFuture, and in the
callers (such as LifecycleBase.start() method) you can put more continuations
into CompletableFuture.thenRunAsync. And you can also invoke Future.get
somewhere in the callers, instead of immediately. 

Do you think such kind of change is correct and can improve the code?

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: Tagging Tomcat 7.0.58

2015-01-21 Thread Mark Thomas
On 21/01/2015 14:07, Violeta Georgieva wrote:
 Hi,
 
 I would like to start preparing Tomcat 7.0.58.
 If you want to add something to this release please reply here.

I'd recommend holding this off until we get to the bottom of the current
issue (BZ 57476) with 8.0.17 and figure out of the offending code was
back-ported to 7.0.x.

Mark


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Using non-blocking Future instead of blocking Future.get

2015-01-21 Thread Yu Lin
Dear developers, I opened a discussion about the use of blocking
Future.get() in Tomcat 8 code on Bugzillar:
https://issues.apache.org/bugzilla/show_bug.cgi?id=57478

I was suggested to post it in this list. What's your opinion on this issue?
Do you have better suggestions to address this issue?


[Bug 57476] Incomplete html pages

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57476

--- Comment #4 from Marco ma...@lordzodiac.de ---
I make a little test. I add a %out.flush();% at the end of the jsp file and
the html content is correct. Without the %out.flush();% the html content is
broken.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57476] Incomplete html pages

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57476

--- Comment #2 from Marco ma...@lordzodiac.de ---
Hello,

same problem.
After a last jsp:include in a jsp site the html content is not shown.
No errors in tomcat log. Default Tomcat with port 8080.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [OT] Questions About Tomcat Exception Handling

2015-01-21 Thread Christopher Schultz
Mark,

On 1/21/15 2:34 PM, Mark Thomas wrote:
 On 21/01/2015 19:14, Felipe Ebert wrote:
 Hello

 I'm sorry that this mail is not a development issue itself, it is just a
 question about Tomcat' exception handling. I was checking some mails at
 Tomcat dev list and I found two interesting and contrasting responses
 regarding exception handling: one is from Mark Thomas and another is from
 Remy Maucherat:

 Mark Thomas:
 http://www.mail-archive.com/dev%40tomcat.apache.org/msg45180.html

 Remy Maucherat:
 http://www.mail-archive.com/dev%40tomcat.apache.org/msg10280.html
 
 The tone might be different but the response is pretty much the same: we
 don't view the issues reported as bugs.
 
 So, I just would like to understand why Tomcat don't care about those
 generic catches patterns (catch Throwable or catch Exception) as Remmy said
 in his mail, which contrasts with Mark comments. And also I would really
 appreciate if anyone could give me some insights in the matter.
 
 Again, I don't read the substance of our responses as being that different.
 
 Where these patterns are used they are used with good reason. If someone
 reports one that isn't backed with a good reason we'll fix it. The
 frustrating thing from our point of view is that most of the reports we
 receive along these lines are from people who clearly have zero
 understanding of the Tomcat code and are blindly reporting something
 some static analysis tool has reported.
 
 I'm not going to justify every single time we catch Throwable but a
 typical pattern is when calling user code that can (and often does)
 throw some random exception the only viable option when any error in
 user code needs handling (even if it is to simply ignore it) is to catch
 Throwable.
 
 And lastly, I also would like to hear some comments about how frequent bugs
 are reported in Tomcat mailing list and not in the Bugzilla. I know the
 pattern is to use Bugzilla, but I saw some comments from Dr. Justin
 Erenkrantz (from Apache team) discussing that there are a lot of important
 bugs fixes only reported in Tomcat mailing list.
 
 Take a look at the change log. That will give you an idea of how many
 things get fixed that aren't in bugzilla. Whether it was originally
 reported via a mailing list isn't recorded. They will be a mix of
 mailing list, things committers spot at work and things committers spot
 while looking at the code for some other reason.

I read a post from 8 years ago from some guy who had a collection of bad
days until his whole collection of web sites went dead. Anyhow, here's
the link:
http://www.jroller.com/fate/entry/why_i_hate_tomcat

He basically defecates all over the DefaultServlet, and claims it's
representative of all of Tomcat's code. Granted, it was way back in
Tomcat 5.5 days and his form of invective is, as usual, neither
constructive nor completely coherent.

But he does have a few points, and I took a few minutes looking at the
DefaultServlet in the current trunk, and I think he made some fair
points about things that still exist.

To wit:

1. org.apache.catalina.servlets.DefaultServlet.Range.validate modifies
the value of the end member. That seems ... odd.

2. copyRange(InputStream, ServletOutputStream) returns IOException
instead of throwing it. There is one call to copyRange() that always
ignores this return value, even if it is a non-null IOException object.

3. executePartialPut(HttpServletRequest, Range, String) has a potential
resource leak of bufOldRevStream.


I'm not well-versed in the DefaultServlet to know if 1 and 2 are
legitimate, but they definitely smell funny. The resource issue in #3
should probably be fixed, and I'm happy to provide a fix for it.

The Coverity scan has been great at finding likely bugs and stuff... the
list is just enormous and it's tough to get through it all. I suspect #3
above is in that report, buried somewhere in the million potential
issues it has found.

-chris



signature.asc
Description: OpenPGP digital signature


Re: Tagging Tomcat 7.0.58

2015-01-21 Thread Rémy Maucherat
2015-01-21 23:15 GMT+01:00 Mark Thomas ma...@apache.org:

 I'd recommend holding this off until we get to the bottom of the current
 issue (BZ 57476) with 8.0.17 and figure out of the offending code was
 back-ported to 7.0.x.

 Good idea. I haven't found anything interesting yet, I looked at the error
page processing change and I don't see anything else really relevant and
suspicious. But I am not convinced by this issue yet, usually when people
fail to tell what connector they're using, it's not looking good.

Rémy


[Bug 57476] Incomplete html pages

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57476

--- Comment #3 from Christopher Schultz ch...@christopherschultz.net ---
I have a single JSP running on 8.0.17 with 4 includes, and the page works just
fine. Can you give more information about your environment? There's also a
thread on the dev list if you want to discuss.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: [OT] Questions About Tomcat Exception Handling

2015-01-21 Thread Rémy Maucherat
2015-01-21 23:47 GMT+01:00 Christopher Schultz ch...@christopherschultz.net
:

 To wit:

 1. org.apache.catalina.servlets.DefaultServlet.Range.validate modifies
 the value of the end member. That seems ... odd.

 2. copyRange(InputStream, ServletOutputStream) returns IOException
 instead of throwing it. There is one call to copyRange() that always
 ignores this return value, even if it is a non-null IOException object.

 3. executePartialPut(HttpServletRequest, Range, String) has a potential
 resource leak of bufOldRevStream.


 I'm not well-versed in the DefaultServlet to know if 1 and 2 are
 legitimate, but they definitely smell funny. The resource issue in #3
 should probably be fixed, and I'm happy to provide a fix for it.


Yes, it would be a good idea to be careful with 1 and 2.

I don't remember reading that article, but maybe I forgot.

Rémy


[Bug 57178] Add CorsFilter configuration option to allow requests with Origin null

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57178

--- Comment #6 from Gregor Zurowski gzurow...@apache.org ---
That is correct, the only use case would be really just supporting the current
behavior. I would also prefer considering this behavior a bug and handle null
as a valid origin (for both the default * case and when explicitly configured
with null using the cors.allowed.origins parameter). I will follow up with a
simplified patch without any new configuration options shortly.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57178] Add CorsFilter configuration option to allow requests with Origin null

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57178

Gregor Zurowski gzurow...@apache.org changed:

   What|Removed |Added

  Attachment #32185|0   |1
is obsolete||

--- Comment #7 from Gregor Zurowski gzurow...@apache.org ---
Created attachment 32389
  -- https://issues.apache.org/bugzilla/attachment.cgi?id=32389action=edit
Simplified patch for Bug#57178

Simplified patch to handle null as a valid origin.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57476] Incomplete html pages

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57476

--- Comment #5 from reibitto reibi...@gmail.com ---
I'm seeing similar issues with version 8.0.17 as well. Downgrading back to
8.0.15 made the problems go away for me, so it seems like something introduced
between these versions is causing this.

So far I've only noticed this problem with JSP files. Static content seems
unaffected. Also, I'm seeing this happen through both HTTP and HTTPS.

When the response is being truncated, the resulting size is always multiples of
8192 bytes. But this seems to only happen only if the resulting size is
anything greater than 16KB. Examples of what I'm seeing:

Expected size / Actual response size
anything less than 16 KB - the response is fine
17 KB - 8 KB
25 KB - 16 KB
39 KB - 24 KB
44 KB - 32 KB
50 KB - 40 KB

So it seems like the last remaining block (or 2?) isn't being written out...
assuming the buffer size is 8 KB. And yes, when I call out.flush(), this
problem goes away for me too.

Here's some information about my environment:
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
OS X Yosemite 10.10.1

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[GitHub] tomcat pull request: #57178: Allow CORS requests with Origin value...

2015-01-21 Thread gzurowski
Github user gzurowski closed the pull request at:

https://github.com/apache/tomcat/pull/14


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[GitHub] tomcat pull request: #57178: Allow CORS requests with Origin heade...

2015-01-21 Thread gzurowski
GitHub user gzurowski opened a pull request:

https://github.com/apache/tomcat/pull/16

#57178: Allow CORS requests with Origin header value null

See also: https://issues.apache.org/bugzilla/show_bug.cgi?id=57178

Signed-off-by: Gregor Zurowski gre...@zurowski.org

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/gzurowski/tomcat CorsAllowNullOriginSimplified

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/tomcat/pull/16.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #16


commit 017943fe31eb397c729fccc47d1c8659285eabd7
Author: Gregor Zurowski gregor.zurow...@sothebys.com
Date:   2015-01-21T21:57:51Z

#57178: Allow CORS requests with Origin header value null

Signed-off-by: Gregor Zurowski gre...@zurowski.org




---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: Coverity Scan

2015-01-21 Thread Felix Schumacher


Am 22. Januar 2015 08:02:47 MEZ, schrieb Violeta Georgieva 
violet...@apache.org:
Hi,

I would like to update the coverity scan report.
As the previous one was based on Tomcat 8 (back in the time it was
trunk) I
think to base the scan again on Tomcat 8.

Wdyt?
+1

Felix

Regards,
Violeta


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Coverity Scan

2015-01-21 Thread Violeta Georgieva
Hi,

I would like to update the coverity scan report.
As the previous one was based on Tomcat 8 (back in the time it was trunk) I
think to base the scan again on Tomcat 8.

Wdyt?

Regards,
Violeta


Re: Tagging Tomcat 7.0.58

2015-01-21 Thread Violeta Georgieva
2015-01-22 0:15 GMT+02:00 Mark Thomas ma...@apache.org:

 On 21/01/2015 14:07, Violeta Georgieva wrote:
  Hi,
 
  I would like to start preparing Tomcat 7.0.58.
  If you want to add something to this release please reply here.

 I'd recommend holding this off until we get to the bottom of the current
 issue (BZ 57476) with 8.0.17 and figure out of the offending code was
 back-ported to 7.0.x.

Ok

Regards,
Violeta

 Mark


 -
 To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
 For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57476] Incomplete html pages

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57476

--- Comment #6 from Leandro iilean...@gmail.com ---
I'm facing exactly the same issue. I've noticed that putting % out.flush() %
at the end of the JSP file, everything was OK, but It's not good to assume that
it's the goal to solve that.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1653475 - in /tomcat/trunk: ./ bin/ res/ webapps/docs/

2015-01-21 Thread Mark Thomas
On 21/01/2015 10:40, ma...@apache.org wrote:
 Author: markt
 Date: Wed Jan 21 10:39:59 2015
 New Revision: 1653475
 
 URL: http://svn.apache.org/r1653475
 Log:
 Remove use of java.endorsed.dirs since causes errors when starting with
 Java 9. Users that need to can still use this via setenv.sh

Thoughts on back-porting this?

java.endorsed.dirs isn't widely used these days so there should be
little risk there. On the other hand, there is no rush until Java 9 is
formally released (it is possible things might still change).

My current thinking is wait until Java 9 is released or we see a demand
from the users (which ever happens first).

Mark

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653471 - in /tomcat/trunk: conf/catalina.properties java/org/apache/catalina/startup/Bootstrap.java test/org/apache/catalina/startup/TestBootstrap.java

2015-01-21 Thread markt
Author: markt
Date: Wed Jan 21 10:08:15 2015
New Revision: 1653471

URL: http://svn.apache.org/r1653471
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57455
Add a note that  may not appear in a path value and throw an IAE if once does.

Modified:
tomcat/trunk/conf/catalina.properties
tomcat/trunk/java/org/apache/catalina/startup/Bootstrap.java
tomcat/trunk/test/org/apache/catalina/startup/TestBootstrap.java

Modified: tomcat/trunk/conf/catalina.properties
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/conf/catalina.properties?rev=1653471r1=1653470r2=1653471view=diff
==
--- tomcat/trunk/conf/catalina.properties (original)
+++ tomcat/trunk/conf/catalina.properties Wed Jan 21 10:08:15 2015
@@ -48,6 +48,8 @@ org.apache.jasper.,org.apache.naming.,or
 #
 # Note: Values are enclosed in double quotes (...) in case either the
 #   ${catalina.base} path or the ${catalina.home} path contains a comma.
+#   Because double quotes are used for quoting, the double quote character
+#   may not appear in a path.
 
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar
 
 #
@@ -61,6 +63,11 @@ common.loader=${catalina.base}/lib,${
 # foo/*.jar: Add all the JARs of the specified folder as class
 #  repositories
 # foo/bar.jar: Add bar.jar as a class repository
+#
+# Note: Values may be enclosed in double quotes (...) in case either the
+#   ${catalina.base} path or the ${catalina.home} path contains a comma.
+#   Because double quotes are used for quoting, the double quote character
+#   may not appear in a path.
 server.loader=
 
 #
@@ -75,6 +82,11 @@ server.loader=
 # foo/bar.jar: Add bar.jar as a class repository
 # Please note that for single jars, e.g. bar.jar, you need the URL form
 # starting with file:.
+#
+# Note: Values may be enclosed in double quotes (...) in case either the
+#   ${catalina.base} path or the ${catalina.home} path contains a comma.
+#   Because double quotes are used for quoting, the double quote character
+#   may not appear in a path.
 shared.loader=
 
 # Default list of JAR files that should not be scanned using the JarScanner

Modified: tomcat/trunk/java/org/apache/catalina/startup/Bootstrap.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/startup/Bootstrap.java?rev=1653471r1=1653470r2=1653471view=diff
==
--- tomcat/trunk/java/org/apache/catalina/startup/Bootstrap.java (original)
+++ tomcat/trunk/java/org/apache/catalina/startup/Bootstrap.java Wed Jan 21 
10:08:15 2015
@@ -568,14 +568,28 @@ public final class Bootstrap {
 String path = value.substring(matcher.start(), matcher.end());
 
 path = path.trim();
+if (path.length() == 0) {
+continue;
+}
+
+char first = path.charAt(0);
+char last = path.charAt(path.length() - 1);
 
-if (path.startsWith(\)  path.length()  1) {
+if (first == ''  last == ''  path.length()  1) {
 path = path.substring(1, path.length() - 1);
 path = path.trim();
-}
-
-if (path.length() == 0) {
-continue;
+if (path.length() == 0) {
+continue;
+}
+} else if (path.contains(\)) {
+// Unbalanced quotes
+// Too early to use standard i18n support. The class path 
hasn't
+// been configured.
+throw new IllegalArgumentException(
+The double quote [\] character only be used to quote 
paths. It must  +
+not appear in a path. This loader path is not valid: 
[ + value + ]);
+} else {
+// Not quoted - NO-OP
 }
 
 result.add(path);

Modified: tomcat/trunk/test/org/apache/catalina/startup/TestBootstrap.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/catalina/startup/TestBootstrap.java?rev=1653471r1=1653470r2=1653471view=diff
==
--- tomcat/trunk/test/org/apache/catalina/startup/TestBootstrap.java (original)
+++ tomcat/trunk/test/org/apache/catalina/startup/TestBootstrap.java Wed Jan 21 
10:08:15 2015
@@ -113,6 +113,66 @@ public class TestBootstrap {
 doTest(aaa,\bbb,\, aaa, bbb,);
 }
 
+@Test(expected=IllegalArgumentException.class)
+public void testUnbalancedQuotes01() {
+doTest(\, ignored);
+}
+
+@Test(expected=IllegalArgumentException.class)
+public void testUnbalancedQuotes02() {
+doTest(\aaa, ignored);
+}
+
+@Test(expected=IllegalArgumentException.class)
+public void testUnbalancedQuotes03() {
+

svn commit: r1653472 - in /tomcat/tc8.0.x/trunk: ./ conf/catalina.properties java/org/apache/catalina/startup/Bootstrap.java test/org/apache/catalina/startup/TestBootstrap.java webapps/docs/changelog.

2015-01-21 Thread markt
Author: markt
Date: Wed Jan 21 10:12:27 2015
New Revision: 1653472

URL: http://svn.apache.org/r1653472
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57455
Add a note that  may not appear in a path value and throw an IAE if once does.

Modified:
tomcat/tc8.0.x/trunk/   (props changed)
tomcat/tc8.0.x/trunk/conf/catalina.properties
tomcat/tc8.0.x/trunk/java/org/apache/catalina/startup/Bootstrap.java
tomcat/tc8.0.x/trunk/test/org/apache/catalina/startup/TestBootstrap.java
tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc8.0.x/trunk/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan 21 10:12:27 2015
@@ -1 +1 @@
-/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892
 
,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041
+/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892
 
,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471

Modified: tomcat/tc8.0.x/trunk/conf/catalina.properties
URL: 
http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/conf/catalina.properties?rev=1653472r1=1653471r2=1653472view=diff
==
--- tomcat/tc8.0.x/trunk/conf/catalina.properties (original)
+++ tomcat/tc8.0.x/trunk/conf/catalina.properties Wed Jan 21 10:12:27 2015
@@ -48,6 +48,8 @@ org.apache.jasper.,org.apache.naming.,or
 #
 # Note: Values are enclosed in double quotes (...) in case either the
 #   ${catalina.base} path or the ${catalina.home} path contains a comma.
+#   Because double quotes are used for quoting, the double quote character
+#   may not appear in a path.
 
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar
 
 #
@@ -61,6 +63,11 @@ common.loader=${catalina.base}/lib,${
 # foo/*.jar: Add all the JARs of the specified folder as class
 #  repositories
 # foo/bar.jar: Add bar.jar as a class repository
+#
+# Note: Values may be enclosed in double quotes (...) in case either the
+#   ${catalina.base} path or the ${catalina.home} path contains a comma.
+#   Because double quotes are used for quoting, the double quote character
+#   may not 

[Bug 57455] Bootstrap doesn't handle paths with one quote

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57455

Mark Thomas ma...@apache.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Mark Thomas ma...@apache.org ---
Fixed in trunk and 8.0.x and will be included in 8.0.18 onwards.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653475 - in /tomcat/trunk: ./ bin/ res/ webapps/docs/

2015-01-21 Thread markt
Author: markt
Date: Wed Jan 21 10:39:59 2015
New Revision: 1653475

URL: http://svn.apache.org/r1653475
Log:
Remove use of java.endorsed.dirs since causes errors when starting with Java 9. 
Users that need to can still use this via setenv.sh

Modified:
tomcat/trunk/RELEASE-NOTES
tomcat/trunk/RUNNING.txt
tomcat/trunk/bin/catalina.bat
tomcat/trunk/bin/catalina.sh
tomcat/trunk/bin/daemon.sh
tomcat/trunk/bin/service.bat
tomcat/trunk/bin/setclasspath.bat
tomcat/trunk/bin/setclasspath.sh
tomcat/trunk/bin/tool-wrapper.bat
tomcat/trunk/bin/tool-wrapper.sh
tomcat/trunk/res/tomcat.nsi
tomcat/trunk/webapps/docs/class-loader-howto.xml

Modified: tomcat/trunk/RELEASE-NOTES
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/RELEASE-NOTES?rev=1653475r1=1653474r2=1653475view=diff
==
--- tomcat/trunk/RELEASE-NOTES (original)
+++ tomcat/trunk/RELEASE-NOTES Wed Jan 21 10:39:59 2015
@@ -92,9 +92,9 @@ You can make additional APIs available t
 putting unpacked classes into a classes directory (not created by default),
 or by placing them in JAR files in the lib directory.
 
-To override the XML parser implementation or interfaces, use the endorsed
-mechanism of the JVM. The default configuration defines JARs located in
-endorsed as endorsed.
+To override the XML parser implementation or interfaces, use the appropriate
+feature for your JVM. For Java = 8 use the endorsed standards override
+feature. For Java 9+ use the upgradeable modules feature.
 
 
 

Modified: tomcat/trunk/RUNNING.txt
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/RUNNING.txt?rev=1653475r1=1653474r2=1653475view=diff
==
--- tomcat/trunk/RUNNING.txt (original)
+++ tomcat/trunk/RUNNING.txt Wed Jan 21 10:39:59 2015
@@ -274,12 +274,6 @@ In CATALINA_HOME:
 
  * lib  - Libraries and classes, as explained below
 
- * endorsed - Libraries that override standard Endorsed Standards
-  libraries provided by JRE. See Classloading documentation
-  in the User Guide for details.
-
-  By default this endorsed directory is absent.
-
 In the default configuration the JAR libraries and classes both in
 CATALINA_BASE/lib and in CATALINA_HOME/lib will be added to the common
 classpath, but the ones in CATALINA_BASE will be added first and thus will

Modified: tomcat/trunk/bin/catalina.bat
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/bin/catalina.bat?rev=1653475r1=1653474r2=1653475view=diff
==
--- tomcat/trunk/bin/catalina.bat (original)
+++ tomcat/trunk/bin/catalina.bat Wed Jan 21 10:39:59 2015
@@ -53,12 +53,6 @@ rem   should be used by
 rem   the version command etc.
 rem   Most options should go into CATALINA_OPTS.
 rem
-rem   JAVA_ENDORSED_DIRS (Optional) Lists of of semi-colon separated 
directories
-rem   containing some jars in order to allow replacement of 
APIs
-rem   created outside of the JCP (i.e. DOM and SAX from W3C).
-rem   It can also be used to update the XML parser 
implementation.
-rem   Defaults to $CATALINA_HOME/endorsed.
-rem
 rem   JPDA_TRANSPORT  (Optional) JPDA transport used when the jpda start
 rem   command is executed. The default is dt_socket.
 rem
@@ -316,17 +310,17 @@ goto setArgs
 rem Execute Java with the applicable properties
 if not %JPDA% ==  goto doJpda
 if not %SECURITY_POLICY_FILE% ==  goto doSecurity
-%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% 
-Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS% -classpath %CLASSPATH% 
-Dcatalina.base=%CATALINA_BASE% -Dcatalina.home=%CATALINA_HOME% 
-Djava.io.tmpdir=%CATALINA_TMPDIR% %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
+%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -classpath %CLASSPATH% 
-Dcatalina.base=%CATALINA_BASE% -Dcatalina.home=%CATALINA_HOME% 
-Djava.io.tmpdir=%CATALINA_TMPDIR% %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
 goto end
 :doSecurity
-%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% 
-Djava.endorsed.dirs=%JAVA_ENDORSED_DIRS% -classpath %CLASSPATH% 
-Djava.security.manager -Djava.security.policy==%SECURITY_POLICY_FILE% 
-Dcatalina.base=%CATALINA_BASE% -Dcatalina.home=%CATALINA_HOME% 
-Djava.io.tmpdir=%CATALINA_TMPDIR% %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
+%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -classpath %CLASSPATH% 
-Djava.security.manager -Djava.security.policy==%SECURITY_POLICY_FILE% 
-Dcatalina.base=%CATALINA_BASE% -Dcatalina.home=%CATALINA_HOME% 
-Djava.io.tmpdir=%CATALINA_TMPDIR% %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
 goto end
 :doJpda
 if not %SECURITY_POLICY_FILE% ==  goto doSecurityJpda
-%_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %JPDA_OPTS% %DEBUG_OPTS% 

[Bug 57472] New: performance (classloader?) problems with signed jars in WEB-INF/lib

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57472

Bug ID: 57472
   Summary: performance (classloader?) problems with signed jars
in WEB-INF/lib
   Product: Tomcat 8
   Version: 8.0.17
  Hardware: PC
OS: Linux
Status: NEW
  Severity: normal
  Priority: P2
 Component: Catalina
  Assignee: dev@tomcat.apache.org
  Reporter: ole.schulz-hildebra...@ppimedia.de

cf.
http://mail-archives.apache.org/mod_mbox/tomcat-users/201501.mbox/%3CADA7A9443C47CC4E9C065E9C84C6891D6B3994A3B7%40ex01.ppinet.de%3E

After moving one of our web applications from Tomcat 7 to Tomcat 8 (8.0.17,
Java 1.8.0_25, CentOS 6) the time for deploying and initializing the webapp
increased by a factor of 30 (6s vs. 180s). Analyzing the problem we found out
that it had to do with a signed jar in the WEB-INF/lib of the webapp. It is a
8mb self-signed jar of the jython-library from which many classes are used in
the initializing process of our webapp. When using a non-signed version of the
jar the time for deploying and initializing is the same in Tomcat 8 as in
Tomcat 7. 

Profiling and debugging the webapp it turned out that loading a class (and its
depending classes) from the signed jar took extremely long with Tomcat 8 in
comparison to Tomcat 7. 

The following is just a hypothesis of a Tomcat source newbie: Could it be
that (at least some parts of) the verification process for the whole signed jar
is done again and again each time a class from a signed jar is loaded? Looking
at org.apache.catalina.webresources.JarResource:47 
(http://svn.apache.org/repos/asf/tomcat/tc8.0.x/trunk/java/org/apache/catalina/webresources/JarResource.java)
a new instance of java.util.jar.JarFile is created each time a single
class-file is read from the jar. Thus the following call of
jarFile.getInputStream(jarEntry) in JarResource:50 causes a call of
JarFile.initializeVerifier() (cf. JarFile:442ff in
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/8-b132/java/util/jar/JarFile.java).
JarFile.initializeVerifier() seems to do some precalculations (hashing?) for
all files listed in the manifest of the signed jar (cf. JarFile:365ff). Thus
each time a single class is loaded from a signed jar precalculations for all
class files in the signed jar seem to be done. Could this be the reason for our
performance problems (especially in connection with a 8mb signed jar ;-))?

If neccessary I can provide the mentioned 8mb self-signed jar of the
jython-library and/or create a simple sample web application that demonstrates
the issue.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653531 - in /tomcat/trunk/java/org/apache/tomcat/util/collections: ManagedConcurrentWeakHashMap.java SynchronizedQueue.java SynchronizedStack.java

2015-01-21 Thread markt
Author: markt
Date: Wed Jan 21 13:08:06 2015
New Revision: 1653531

URL: http://svn.apache.org/r1653531
Log:
Java8 Javadoc fixes

Modified:

tomcat/trunk/java/org/apache/tomcat/util/collections/ManagedConcurrentWeakHashMap.java
tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedQueue.java
tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedStack.java

Modified: 
tomcat/trunk/java/org/apache/tomcat/util/collections/ManagedConcurrentWeakHashMap.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/collections/ManagedConcurrentWeakHashMap.java?rev=1653531r1=1653530r2=1653531view=diff
==
--- 
tomcat/trunk/java/org/apache/tomcat/util/collections/ManagedConcurrentWeakHashMap.java
 (original)
+++ 
tomcat/trunk/java/org/apache/tomcat/util/collections/ManagedConcurrentWeakHashMap.java
 Wed Jan 21 13:08:06 2015
@@ -33,6 +33,9 @@ import java.util.concurrent.ConcurrentMa
  * codeWeakHashMap/code this class does not handle dead keys during common
  * access operations, but expects you to call its {@link #maintain()} method
  * periodically. Both keys and values are expected to be not-codenull/code.
+ *
+ * @param K The type of keys used with the Map instance
+ * @param V The type of values used with the Map instance
  */
 public class ManagedConcurrentWeakHashMapK, V extends AbstractMapK, V 
implements
 ConcurrentMapK, V {

Modified: 
tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedQueue.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedQueue.java?rev=1653531r1=1653530r2=1653531view=diff
==
--- tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedQueue.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedQueue.java 
Wed Jan 21 13:08:06 2015
@@ -22,6 +22,8 @@ package org.apache.tomcat.util.collectio
  * create an unbounded queue with no requirement to shrink the queue. The aim 
is
  * to provide the bare minimum of required functionality as quickly as possible
  * with minimum garbage.
+ *
+ * @param T The type of object managed by this queue
  */
 public class SynchronizedQueueT {
 

Modified: 
tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedStack.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedStack.java?rev=1653531r1=1653530r2=1653531view=diff
==
--- tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedStack.java 
(original)
+++ tomcat/trunk/java/org/apache/tomcat/util/collections/SynchronizedStack.java 
Wed Jan 21 13:08:06 2015
@@ -22,6 +22,8 @@ package org.apache.tomcat.util.collectio
  * create a pool of re-usable objects with no requirement to shrink the pool.
  * The aim is to provide the bare minimum of required functionality as quickly
  * as possible with minimum garbage.
+ *
+ * @param T The type of object managed by this stack
  */
 public class SynchronizedStackT {
 



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57420] Wrong class names generated since URL_ENCODER in DirContextURLConnection is not thread safe

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57420

--- Comment #11 from Violeta Georgieva violet...@apache.org ---
(In reply to Felix Schumacher from comment #9)
 Created attachment 32382 [details]
 Make UEncoder a local variable and introduce a default safe charset enum
 
 This patch uses a local variable for the UEncoder in DirContextURLConnection
 and enables the safeChars in UEncoder to be immutable.
 
 That way all Response and DirContextURLConnection instances can share one
 safeChars BitSet while having their own UEncoder instance which remains
 unsafe for multithreaded usage.

+1

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57473] New: WarWatcher does not throw any warning if permissions are broken

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57473

Bug ID: 57473
   Summary: WarWatcher does not throw any warning if permissions
are broken
   Product: Tomcat 8
   Version: trunk
  Hardware: All
OS: All
Status: NEW
  Severity: enhancement
  Priority: P2
 Component: Cluster
  Assignee: dev@tomcat.apache.org
  Reporter: theo...@mley.fr

Created attachment 32386
  -- https://issues.apache.org/bugzilla/attachment.cgi?id=32386action=edit
WarWatcher patch for improved checks and logging

This is a follow-up to the FarmWarDeployer not checking watchDir thread on
tomcat-users.

In the FarmWarDelpoyer and WarWatcher components, if the permissions of the
watchDir are broken (i.e 644 instead of 755), Tomcat does not inform the user
that something is wrong, with no log whatsoever after putting a war file in the
watchDir.

A patch by Christopher Schultz is attached that adds some checking and logging
to WarWatcher to allow an easier debugging.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57473] WarWatcher does not throw any warning if permissions are broken

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57473

Théo Chamley theo...@mley.fr changed:

   What|Removed |Added

 CC||theo...@mley.fr

-- 
You are receiving this mail because:
You are the assignee for the bug.
-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653535 - /tomcat/trunk/test/org/apache/el/parser/TestELParser.java

2015-01-21 Thread markt
Author: markt
Date: Wed Jan 21 13:31:30 2015
New Revision: 1653535

URL: http://svn.apache.org/r1653535
Log:
Add a test case I have been using to explore possible performance gains in the 
EL parser. This is in preparation for the fix for BZ 57441.

Modified:
tomcat/trunk/test/org/apache/el/parser/TestELParser.java

Modified: tomcat/trunk/test/org/apache/el/parser/TestELParser.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/parser/TestELParser.java?rev=1653535r1=1653534r2=1653535view=diff
==
--- tomcat/trunk/test/org/apache/el/parser/TestELParser.java (original)
+++ tomcat/trunk/test/org/apache/el/parser/TestELParser.java Wed Jan 21 
13:31:30 2015
@@ -17,6 +17,8 @@
 
 package org.apache.el.parser;
 
+import java.io.StringReader;
+
 import javax.el.ELContext;
 import javax.el.ELException;
 import javax.el.ExpressionFactory;
@@ -25,9 +27,11 @@ import javax.el.ValueExpression;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
+import org.junit.Ignore;
 import org.junit.Test;
 
 import org.apache.jasper.el.ELContextImpl;
+import org.apache.tomcat.util.collections.SynchronizedStack;
 
 public class TestELParser {
 
@@ -229,4 +233,61 @@ public class TestELParser {
 String result = (String) ve.getValue(context);
 assertEquals(expected, result);
 }
+
+/*
+ * Test to explore if re-using Parser instances is faster.
+ *
+ * Tests on my laptop show:
+ * - overhead by introducing the stack is in the noise for parsing even the
+ *   simplest expression
+ * - efficiency from re-using the ELParser is measurable for even a single
+ *   reuse of the parser
+ * - with large numbers of parses (~10k) performance for a trivial parse is
+ *   three times faster
+ * - around the 100 iterations mark GC overhead adds significant noise to
+ *   the results - for consistent results you either need fewer parses to
+ *   avoid triggering GC or more parses so the GC effects are evenly
+ *   distributed between the runs
+ *
+ * Note that the test is single threaded.
+ */
+@Ignore
+@Test
+public void testParserPerformance() throws ParseException {
+final int runs = 20;
+final int parseIterations = 1;
+
+
+for (int j = 0; j  runs; j ++) {
+long start = System.nanoTime();
+SynchronizedStackELParser stack = new SynchronizedStack();
+
+for (int i = 0; i  parseIterations; i ++) {
+ELParser parser = stack.pop();
+if (parser == null) {
+parser = new ELParser(new StringReader(${'foo'}));
+} else {
+parser.ReInit(new StringReader(${'foo'}));
+}
+parser.CompositeExpression();
+stack.push(parser);
+}
+long end = System.nanoTime();
+
+System.out.println(parseIterations +
+ iterations using ELParser.ReInit(...) took  + (end - 
start) + ns);
+}
+
+for (int j = 0; j  runs; j ++) {
+long start = System.nanoTime();
+for (int i = 0; i  parseIterations; i ++) {
+ELParser parser = new ELParser(new StringReader(${'foo'}));
+parser.CompositeExpression();
+}
+long end = System.nanoTime();
+
+System.out.println(parseIterations +
+ iterations usingnew ELParser(...) took  + (end - 
start) + ns);
+}
+}
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57420] Wrong class names generated since URL_ENCODER in DirContextURLConnection is not thread safe

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57420

--- Comment #10 from Violeta Georgieva violet...@apache.org ---
(In reply to Konstantin Kolinko from comment #7)
 (In reply to Violeta Georgieva from comment #6)
  (In reply to Konstantin Kolinko from comment #4)
  
   UEncoder is used in list(). While it is possible to call list() multiple
   times, I think that in practice it is called only once.
  
  list() is called many times by
  org.apache.catalina.startup.ContextConfig.processAnnotationsJndi(URL,
  WebXml, boolean)
  
  As we add a save char to UEncoder I do not think that it will be OK to do
  this every time when list() is called.
  
  Wdyt?
 
 As far as I see, it opens a new DirContextURLConnection each time. While the
 method is called many times, a connection is not reused. Thus a class-level
 field provides no benefit.
 
You are right - +1

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653550 - in /tomcat/trunk/java/org/apache/catalina/ha/deploy: LocalStrings.properties WarWatcher.java

2015-01-21 Thread schultz
Author: schultz
Date: Wed Jan 21 15:07:12 2015
New Revision: 1653550

URL: http://svn.apache.org/r1653550
Log:
Fix https://issues.apache.org/bugzilla/show_bug.cgi?id=57473
Add more logging to WarWatcher, specifically checking for odd states like 
non-existent files that were just listed by the filesystem, which suggests a 
permissions problem.
Moved log strings into LocalStrings.properties

Modified:
tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java

Modified: 
tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties?rev=1653550r1=1653549r2=1653550view=diff
==
--- tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
(original)
+++ tomcat/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties Wed 
Jan 21 15:07:12 2015
@@ -45,3 +45,9 @@ farmWarDeployer.stopped=Cluster FarmWarD
 farmWarDeployer.undeployEnd=Undeployment from [{0}] finished.
 farmWarDeployer.undeployLocal=Undeploy local context [{0}]
 farmWarDeployer.watchDir=Cluster deployment is watching [{0}] for changes.
+
+warWatcher.checking-wars=Checking WARs in {0}
+warWatcher.listed-file-does-not-exist={0} was detected in {1} but does not 
exist. Check directory permissions on {1}?
+warWatcher.checking-war=Checking WAR file {0}
+warWatcher.check-war.result=WarInfo.check() returned {0} for {1}
+warWatcher.cant-list-watchDir=Cannot list files in WatchDir {0}: check to 
see if it is a directory and has read permissions.

Modified: tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java?rev=1653550r1=1653549r2=1653550view=diff
==
--- tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java (original)
+++ tomcat/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java Wed Jan 21 
15:07:12 2015
@@ -23,6 +23,7 @@ import java.util.Map;
 
 import org.apache.juli.logging.Log;
 import org.apache.juli.logging.LogFactory;
+import org.apache.tomcat.util.res.StringManager;
 
 /**
  * The bWarWatcher /b watches the deployDir for changes made to the
@@ -36,6 +37,8 @@ public class WarWatcher {
 
 /*--Static Variables*/
 private static final Log log = LogFactory.getLog(WarWatcher.class);
+private static final StringManager sm =
+StringManager.getManager(Constants.Package);
 
 /*--Instance Variables--*/
 /**
@@ -67,20 +70,31 @@ public class WarWatcher {
  */
 public void check() {
 if (log.isDebugEnabled())
-log.debug(check cluster wars at  + watchDir);
+log.debug(sm.getString(warWatcher.checking-wars, watchDir));
 File[] list = watchDir.listFiles(new WarFilter());
-if (list == null)
+if (list == null) {
+log.warn(sm.getString(warWatcher.cant-list-watchDir,
+  watchDir));
+
 list = new File[0];
+}
 //first make sure all the files are listed in our current status
 for (int i = 0; i  list.length; i++) {
+if(!list[i].exists())
+log.warn(sm.getString(warWatcher.listed-file-does-not-exist,
+  list[i], watchDir));
+
 addWarInfo(list[i]);
 }
 
-//check all the status codes and update the FarmDeployer
+// Check all the status codes and update the FarmDeployer
 for (IteratorMap.EntryString,WarInfo i =
 currentStatus.entrySet().iterator(); i.hasNext();) {
 Map.EntryString,WarInfo entry = i.next();
 WarInfo info = entry.getValue();
+if(log.isTraceEnabled())
+log.trace(sm.getString(warWatcher.checking-war,
+   info.getWar()));
 int check = info.check();
 if (check == 1) {
 listener.fileModified(info.getWar());
@@ -89,6 +103,10 @@ public class WarWatcher {
 //no need to keep in memory
 i.remove();
 }
+if(log.isTraceEnabled())
+log.trace(sm.getString(warWatcher.check-war.result,
+   Integer.valueOf(check),
+   info.getWar()));
 }
 
 }



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653552 - in /tomcat/tc8.0.x/trunk: ./ java/org/apache/catalina/ha/deploy/LocalStrings.properties java/org/apache/catalina/ha/deploy/WarWatcher.java webapps/docs/changelog.xml

2015-01-21 Thread schultz
Author: schultz
Date: Wed Jan 21 15:13:18 2015
New Revision: 1653552

URL: http://svn.apache.org/r1653552
Log:
Back-port r1653550 to fix 
https://issues.apache.org/bugzilla/show_bug.cgi?id=57473
Add more logging to WarWatcher, specifically checking for odd states like 
non-existent files that were just listed by the filesystem, which suggests a 
permissions problem.
Moved log strings into LocalStrings.properties


Modified:
tomcat/tc8.0.x/trunk/   (props changed)

tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc8.0.x/trunk/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan 21 15:13:18 2015
@@ -1 +1 @@
-/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892
 
,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471
+/tomcat/trunk:1636524,1637156,1637176,1637188,1637331,1637684,1637695,1638720-1638725,1639653,1640010,1640083-1640084,1640088,1640275,1640322,1640347,1640361,1640365,1640403,1640410,1640652,1640655-1640658,1640688,1640700-1640883,1640903,1640976,1640978,1641000,1641026,1641038-1641039,1641051-1641052,1641058,1641064,1641300,1641369,1641374,1641380,1641486,1641634,1641656-1641692,1641704,1641707-1641718,1641720-1641722,1641735,1641981,1642233,1642280,1642554,1642564,1642595,1642606,1642668,1642679,1642697,1642699,1642766,1643002,1643045,1643054-1643055,1643066,1643121,1643128,1643206,1643209-1643210,1643216,1643249,1643270,1643283,1643309-1643310,1643323,1643365-1643366,1643370-1643371,1643465,1643474,1643536,1643570,1643634,1643649,1643651,1643654,1643675,1643731,1643733-1643734,1643761,1643766,1643814,1643937,1643963,1644017,1644169,1644201-1644203,1644321,1644323,1644516,1644523,1644529,1644535,1644730,1644768,1644784-1644785,1644790,1644793,1644815,1644884,1644886,1644890,1644892
 
,1644910,1644924,1644929-1644930,1644935,1644989,1645011,1645247,1645355,1645357-1645358,1645455,1645465,1645469,1645471,1645473,1645475,1645486-1645488,1645626,1645641,1645685,1645743,1645763,1645951-1645953,1645955,1645993,1646098-1646106,1646178,1646220,1646302,1646304,1646420,1646470-1646471,1646476,1646559,1646717-1646723,1646773,1647026,1647042,1647530,1647655,1648304,1648815,1648907,1650081,1650365,1651116,1651120,1651280,1651470,1652938,1652970,1653041,1653471,1653550

Modified: 
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
URL: 
http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties?rev=1653552r1=1653551r2=1653552view=diff
==
--- 
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
(original)
+++ 
tomcat/tc8.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties 
Wed Jan 21 15:13:18 2015
@@ -45,3 +45,9 @@ farmWarDeployer.stopped=Cluster FarmWarD
 farmWarDeployer.undeployEnd=Undeployment from [{0}] finished.
 farmWarDeployer.undeployLocal=Undeploy local context [{0}]
 farmWarDeployer.watchDir=Cluster deployment is watching [{0}] for changes.
+
+warWatcher.checking-wars=Checking WARs in {0}
+warWatcher.listed-file-does-not-exist={0} was detected in {1} but does not 
exist. Check directory permissions on {1}?
+warWatcher.checking-war=Checking WAR file {0}
+warWatcher.check-war.result=WarInfo.check() returned {0} for {1}
+warWatcher.cant-list-watchDir=Cannot list files in WatchDir {0}: check to 
see if 

svn commit: r1653546 - /tomcat/trunk/java/org/apache/el/lang/ExpressionBuilder.java

2015-01-21 Thread markt
Author: markt
Date: Wed Jan 21 14:49:25 2015
New Revision: 1653546

URL: http://svn.apache.org/r1653546
Log:
Add an ELParser cache to the ExpressionBuilder. Re-using ELParser instances is 
measureably more efficient.

Modified:
tomcat/trunk/java/org/apache/el/lang/ExpressionBuilder.java

Modified: tomcat/trunk/java/org/apache/el/lang/ExpressionBuilder.java
URL: 
http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/lang/ExpressionBuilder.java?rev=1653546r1=1653545r2=1653546view=diff
==
--- tomcat/trunk/java/org/apache/el/lang/ExpressionBuilder.java (original)
+++ tomcat/trunk/java/org/apache/el/lang/ExpressionBuilder.java Wed Jan 21 
14:49:25 2015
@@ -14,7 +14,6 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
 package org.apache.el.lang;
 
 import java.io.StringReader;
@@ -49,6 +48,8 @@ import org.apache.el.util.MessageFactory
  */
 public final class ExpressionBuilder implements NodeVisitor {
 
+private static final SynchronizedStackELParser parserCache = new 
SynchronizedStack();
+
 private static final int CACHE_SIZE;
 private static final String CACHE_SIZE_PROP =
 org.apache.el.ExpressionBuilder.CACHE_SIZE;
@@ -70,7 +71,7 @@ public final class ExpressionBuilder imp
 }
 }
 
-private static final ConcurrentCacheString, Node cache =
+private static final ConcurrentCacheString, Node expressionCache =
 new ConcurrentCache(CACHE_SIZE);
 
 private FunctionMapper fnMapper;
@@ -105,11 +106,16 @@ public final class ExpressionBuilder imp
 throw new ELException(MessageFactory.get(error.null));
 }
 
-Node n = cache.get(expr);
+Node n = expressionCache.get(expr);
 if (n == null) {
+ELParser parser = parserCache.pop();
 try {
-n = (new ELParser(new StringReader(expr)))
-.CompositeExpression();
+if (parser == null) {
+parser = new ELParser(new StringReader(expr));
+} else {
+parser.ReInit(new StringReader(expr));
+}
+n = parser.CompositeExpression();
 
 // validate composite expression
 int numChildren = n.jjtGetNumChildren();
@@ -137,10 +143,14 @@ public final class ExpressionBuilder imp
 || n instanceof AstDynamicExpression) {
 n = n.jjtGetChild(0);
 }
-cache.put(expr, n);
+expressionCache.put(expr, n);
 } catch (Exception e) {
 throw new ELException(
 MessageFactory.get(error.parseFail, expr), e);
+} finally {
+if (parser != null) {
+parserCache.push(parser);
+}
 }
 }
 return n;
@@ -252,4 +262,76 @@ public final class ExpressionBuilder imp
 + expression);
 }
 }
+
+/*
+ * Copied from org.apache.tomcat.util.collections.SynchronizedStack since
+ * we don't want the EL implementation to depend on the JAR where that
+ * class resides.
+ */
+private static class SynchronizedStackT {
+
+public static final int DEFAULT_SIZE = 128;
+private static final int DEFAULT_LIMIT = -1;
+
+private int size;
+private final int limit;
+
+/*
+ * Points to the next available object in the stack
+ */
+private int index = -1;
+
+private Object[] stack;
+
+
+public SynchronizedStack() {
+this(DEFAULT_SIZE, DEFAULT_LIMIT);
+}
+
+public SynchronizedStack(int size, int limit) {
+this.size = size;
+this.limit = limit;
+stack = new Object[size];
+}
+
+
+public synchronized boolean push(T obj) {
+index++;
+if (index == size) {
+if (limit == -1 || size  limit) {
+expand();
+} else {
+index--;
+return false;
+}
+}
+stack[index] = obj;
+return true;
+}
+
+@SuppressWarnings(unchecked)
+public synchronized T pop() {
+if (index == -1) {
+return null;
+}
+T result = (T) stack[index];
+stack[index--] = null;
+return result;
+}
+
+private void expand() {
+int newSize = size * 2;
+if (limit != -1  newSize  limit) {
+newSize = limit;
+}
+Object[] newStack = new Object[newSize];
+System.arraycopy(stack, 0, newStack, 0, size);
+// This is the only point where garbage is created by throwing 
away the
+   

Tagging Tomcat 7.0.58

2015-01-21 Thread Violeta Georgieva
Hi,

I would like to start preparing Tomcat 7.0.58.
If you want to add something to this release please reply here.

Thanks,
Violeta


Re: svn commit: r1653367 - /tomcat/trunk/webapps/docs/changelog.xml

2015-01-21 Thread Konstantin Kolinko
2015-01-20 23:52 GMT+03:00  fschumac...@apache.org:
 Author: fschumacher
 Date: Tue Jan 20 20:52:18 2015
 New Revision: 1653367

 URL: http://svn.apache.org/r1653367
 Log:
 Fix formatting:
  - ':' after bug/
  - max width 80 chars

 Modified:
 tomcat/trunk/webapps/docs/changelog.xml

 Modified: tomcat/trunk/webapps/docs/changelog.xml
 URL: 
 http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1653367r1=1653366r2=1653367view=diff
 ==
 --- tomcat/trunk/webapps/docs/changelog.xml (original)
 +++ tomcat/trunk/webapps/docs/changelog.xml Tue Jan 20 20:52:18 2015
 @@ -63,10 +63,12 @@
subsection name=Catalina
  changelog
fix
 -bug57425/bug Don't add attributes with null value or name to the 
 replicated context. (fschumacher)
 +bug57425/bug: Don't add attributes with null value or name to the
 +replicated context. (fschumacher)
/fix
add
 -bug57431/bug Enable usage of custom class for context creation 
 when using embedded tomcat. (fschumacher)
 +bug57431/bug: Enable usage of custom class for context creation
 +when using embedded tomcat. (fschumacher)
/add
  /changelog
/subsection


Hi!

The usual practice is that until the first release from trunk its
changelog file lists only changes that have not been backported to
stable versions.

The BZ 57425 and 57431 fixes have been backported to Tomcat 8 and thus
do not belong here.

Best regards,
Konstantin Kolinko

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



[Bug 57108] Implement multiple sslcontext SNI (server name indication) dispatch

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57108

Unlogic unlo...@unlogic.se changed:

   What|Removed |Added

 CC||unlo...@unlogic.se

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



Re: svn commit: r1653367 - /tomcat/trunk/webapps/docs/changelog.xml

2015-01-21 Thread Felix Schumacher


Am 21. Januar 2015 14:34:41 MEZ, schrieb Konstantin Kolinko 
knst.koli...@gmail.com:
2015-01-20 23:52 GMT+03:00  fschumac...@apache.org:
 Author: fschumacher
 Date: Tue Jan 20 20:52:18 2015
 New Revision: 1653367

 URL: http://svn.apache.org/r1653367
 Log:
 Fix formatting:
  - ':' after bug/
  - max width 80 chars

 Modified:
 tomcat/trunk/webapps/docs/changelog.xml

 Modified: tomcat/trunk/webapps/docs/changelog.xml
 URL:
http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1653367r1=1653366r2=1653367view=diff

==
 --- tomcat/trunk/webapps/docs/changelog.xml (original)
 +++ tomcat/trunk/webapps/docs/changelog.xml Tue Jan 20 20:52:18 2015
 @@ -63,10 +63,12 @@
subsection name=Catalina
  changelog
fix
 -bug57425/bug Don't add attributes with null value or
name to the replicated context. (fschumacher)
 +bug57425/bug: Don't add attributes with null value or
name to the
 +replicated context. (fschumacher)
/fix
add
 -bug57431/bug Enable usage of custom class for context
creation when using embedded tomcat. (fschumacher)
 +bug57431/bug: Enable usage of custom class for context
creation
 +when using embedded tomcat. (fschumacher)
/add
  /changelog
/subsection


Hi!

The usual practice is that until the first release from trunk its
changelog file lists only changes that have not been backported to
stable versions.

The BZ 57425 and 57431 fixes have been backported to Tomcat 8 and thus
do not belong here.
OK. I will remove the entries. 

Thanks for the info
 Felix

Best regards,
Konstantin Kolinko

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org


-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653558 - /tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

2015-01-21 Thread schultz
Author: schultz
Date: Wed Jan 21 15:31:15 2015
New Revision: 1653558

URL: http://svn.apache.org/r1653558
Log:
Moved bugfix to correct subsection.

Modified:
tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml

Modified: tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml
URL: 
http://svn.apache.org/viewvc/tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml?rev=1653558r1=1653557r2=1653558view=diff
==
--- tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml (original)
+++ tomcat/tc8.0.x/trunk/webapps/docs/changelog.xml Wed Jan 21 15:31:15 2015
@@ -74,10 +74,6 @@
 in a manner that makes it look like the codeJAVA_HOME/code
 environment variable. (markt)
   /fix
-  fix
-bug57473/bug: Add sanity check to FarmWebDeployer's WarWatcher to
-detect suspected incorrect permissions on the watch directory. 
(schultz)
-  /fix
 /changelog
   /subsection
   subsection name=Cluster
@@ -85,6 +81,10 @@
   fix
 Fix mbean descriptor of codeClusterSingleSignOn/code. (kfujino)
   /fix
+  fix
+bug57473/bug: Add sanity check to FarmWebDeployer's WarWatcher to
+detect suspected incorrect permissions on the watch directory. 
(schultz)
+  /fix
 /changelog
   /subsection
   subsection name=Tribes



-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org



svn commit: r1653559 - in /tomcat/tc7.0.x/trunk: ./ java/org/apache/catalina/ha/deploy/LocalStrings.properties java/org/apache/catalina/ha/deploy/WarWatcher.java webapps/docs/changelog.xml

2015-01-21 Thread schultz
Author: schultz
Date: Wed Jan 21 15:32:08 2015
New Revision: 1653559

URL: http://svn.apache.org/r1653559
Log:
Back-port r1653550 to fix 
https://issues.apache.org/bugzilla/show_bug.cgi?id=57473
Add more logging to WarWatcher, specifically checking for odd states like 
non-existent files that were just listed by the filesystem, which suggests a 
permissions problem.
Moved log strings into LocalStrings.properties


Modified:
tomcat/tc7.0.x/trunk/   (props changed)

tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/deploy/LocalStrings.properties
tomcat/tc7.0.x/trunk/java/org/apache/catalina/ha/deploy/WarWatcher.java
tomcat/tc7.0.x/trunk/webapps/docs/changelog.xml

Propchange: tomcat/tc7.0.x/trunk/
--
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Jan 21 15:32:08 2015
@@ -1,2 +1,2 @@
 
/tomcat/tc8.0.x/trunk:1636525,1637336,1637685,1637709,1638726,1640089,1640276,1640349,1640363,1640366,1640642,1640672,1640674,1640689,1640884,1641001,1641065,1641067,1641375,1641638,1641723,1641726,1641729-1641730,1641736,1641988,1642669-1642670,1642698,1642701,1643205,1643215,1643217,1643230,1643232,1643273,1643285,1643329-1643330,1643511,1643513,1643521,1643539,1643571,1643581-1643582,1643635,1643655,1643738,1643964,1644018,1644333,1644954,1644992,1645014,1645360,1645456,1645627,1645642,1645686,1645903-1645904,1645908-1645909,1645913,1645920,1646458,1646460-1646462,1647043,1648816,1651420-1651422,1651844,1652939-1652940,1652973
-/tomcat/trunk:1156115-1157160,1157162-1157859,1157862-1157942,1157945-1160347,1160349-1163716,1163718-1166689,1166691-1174340,1174342-1175596,1175598-1175611,1175613-1175932,1175934-1177783,1177785-1177980,1178006-1180720,1180722-1183094,1183096-1187753,1187755,1187775,1187801,1187806,1187809,1187826-1188312,1188314-1188401,1188646-1188840,1188842-1190176,1190178-1195223,1195225-1195953,1195955,1195957-1201238,1201240-1203345,1203347-1206623,1206625-1208046,1208073,1208096,1208114,1208145,1208772,1209194-1212125,1212127-1220291,1220293,1220295-1221321,1221323-1222329,1222332-1222401,1222405-1222795,1222850-1222950,1222969-1225326,1225328-1225463,1225465,1225627,1225629-1226534,1226536-1228908,1228911-1228923,1228927-1229532,1229534-1230766,1230768-1231625,1231627-1233414,1233419-1235207,1235209-1237425,1237427,1237429-1237977,1237981,1237985,1237995,1238070,1238073,1239024-1239048,1239050-1239062,1239135,1239256,1239258-1239485,1239785-1240046,1240101,1240106,1240109,1240112,1240114
 
,1240116,1240118,1240121,1240329,1240474-1240850,1240857,1241087,1241160,1241408-1241822,1241908-1241909,1241912-1242110,1242371-1292130,1292134-1292458,1292464-1292670,1292672-1292776,1292780-1293392,1293397-1297017,1297019-1297963,1297965-1299820,1300108,1300111-1300460,1300520-1300948,1300997,1301006,1301280,1302332,1302348,1302608-1302610,1302649,1302837,1303138,1303163,1303338,1303521,1303587,1303698,1303803,1303852,1304011,1304035,1304037,1304135,1304249,1304253,1304260,1304271,1304275,1304468,1304895,1304930-1304932,1305194,1305943,1305965,1306556,1306579-1306580,1307084,1307310,1307511-1307512,1307579,1307591,1307597,1310636,1310639-1310640,1310642,1310701,1311212,1311995,1327617,1327670,1331766,1333161,1333173,1333827,1334787,1335026,1335257,1335547,1335692,1335711,1335731,1336515,1336813,1336864,1336868,1336884,1337419,1337426,1337546,1337572,1337591-1337595,1337643,1337707,1337719,1337734,1337741,1337745,1338151-1338154,1338178,1342027,1342029,1342315,1342320,1342476,1342
 
498,1342503,1342717,1342795,1342805,1343044-1343046,1343335,1343394,1343400,1343629,1343708,1343718,1343895,1344063,1344068,1344250,1344266,1344515,1344528,1344612,1344629,1344725,1344868,1344890,1344893,1344896,1344901,1345020,1345029,1345039,1345287-1345290,1345294,1345309,1345325,1345357,1345367,1345579-1345580,1345582,1345688,1345699,1345704,1345731-1345732,1345737,1345744,1345752,1345754,1345779,1345781,1345846,1346107,1346365,1346376,1346404,1346510,1346514,1346519,1346581,1346635,1346644,1346683,1346794,1346885,1346932,1347034,1347047,1347087,1347108-1347109,1347583,1347737,1348105,1348357,1348398,1348425,1348461-1348495,1348498,1348752,1348762,1348772,1348776,1348859,1348968,1348973,1348989,1349007,1349237,1349298,1349317,1349410,1349473,1349539,1349879,1349887,1349893,1349922,1349984,1350124,1350241,1350243,1350294-1350295,1350299,1350864,1350900,1351010,1351054,1351056,1351068,1351134-1351135,1351148,1351259,1351604,1351636-1351640,1351991,1351993,1352011,1352056,1352059,1
 

[Bug 57473] WarWatcher does not throw any warning if permissions are broken

2015-01-21 Thread bugzilla
https://issues.apache.org/bugzilla/show_bug.cgi?id=57473

Christopher Schultz ch...@christopherschultz.net changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #1 from Christopher Schultz ch...@christopherschultz.net ---
Fixed in trunk in r1653550.
Back-ported to Tomcat 8 in r1653552. Will be in Tomcat 8.0.18.
Back-ported to Tomcat 7 in r1653559. Will be in Tomcat 7.0.58.

-- 
You are receiving this mail because:
You are the assignee for the bug.

-
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org