why has some field not been locked before accessed.
Hi, The field sessionCounter and rejectedSessions in org.apache.catalina.session.ManagerBase is not atomic field?? Now, These fields ware not locked before they were accessed in Concurrent environment. it was allowed because the very low probability ? Look forward to your reply, thanks very much!
[Bug 61052] New: Startup can be excessively long due to scanning resource paths for TLDs
https://bz.apache.org/bugzilla/show_bug.cgi?id=61052 Bug ID: 61052 Summary: Startup can be excessively long due to scanning resource paths for TLDs Product: Tomcat 8 Version: 8.5.x-trunk Hardware: PC OS: All Status: NEW Severity: normal Priority: P2 Component: Jasper Assignee: dev@tomcat.apache.org Reporter: matt...@cacorp.com Target Milestone: Some of my web applications have a large number of folders and files inside the WEB-INF directory. Scanning all of these causes startup to be excessively long. There is a property for skipping jar files, but there needs to be one for skipping resource paths too. -- 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 61052] Startup can be excessively long due to scanning resource paths for TLDs
https://bz.apache.org/bugzilla/show_bug.cgi?id=61052 Mark Thomas changed: What|Removed |Added Resolution|--- |INVALID Status|NEW |RESOLVED --- Comment #1 from Mark Thomas --- The configuration option already exists. Use the users@ mailing list if you need further assistance. -- 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: why has some field not been locked before accessed.
On 27/04/17 13:19, ?? wrote: > Hi, > The field sessionCounter and rejectedSessions in > org.apache.catalina.session.ManagerBase > is not atomic field?? > > > Now, These fields ware not locked before they were accessed in Concurrent > environment. > > > it was allowed because the very low probability ? Yes. Performance trumps accuracy in those cases. Mark - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
Re: Read events suspend/resume logic in websocket impl to achieve backpressure
Hi, 2017-04-26 17:43 GMT+03:00 Mark Thomas : > > On 25/04/17 11:47, Violeta Georgieva wrote: > > > > > Thanks for the review. > > Changes for all comments are applied to the PR. > > Can you take a look? > > Sure. A few more comments but nothing serious. Unless the fixes for any > of these require large changes to the patch I'd be +1 on applying the > patch with these fixes. I'd be fine with the patch being committed > without the minor issues fixed as long as they were addressed later. > > Mark > > > Moderate > > - If another thread calls suspend() after the call to close() it looks > like there could be an issue. Is another state - CLOSING - required? > > - On the client READ means a read is progress and READY means data has > been read and is being processed. On the server the meanings are > reversed. You are correct and it is tricky to find fitting state names as the server and the client has different roles. Currently the states mean: On the Server - READY means we are waiting for a notification that data is ready to be read from the socket - READ means we are reading from the socket and processing data On the Client - READ means that we will process the data if such has already been read and more data will be read from the socket - READY means data has been read and is available for processing What about to rename READY -> WAITING which will have meaning: - on the Server - waiting to read a data from the socket - on the Client - waiting for a data to be processed READ -> PROCESSING - on the Server - the data is read from the socket and processed - on the Client - the available data is processed and more data is read from the socket Also the other states will be: READY_SUSPENDING -> SUSPENDING_WAIT READ_SUSPENDING -> SUSPENDING_PROCESS Regards, Violeta > > - A couple of lines have trailing whitespace > (only moderate because it will break the CI system) > > > Minor > > - The Javadoc for the state diagram would be clearer with separate > lines for each transition rather than some lines being bi-directional > > - Can WsFrameClient.processSocketRead() be simplified? The try/catch > block that sets read state to READY looks to be unnecessary. The code > paths all appear to lead to close - and that sets the read state > anyway. > > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org >
Re: Read events suspend/resume logic in websocket impl to achieve backpressure
On 27/04/17 21:22, Violeta Georgieva wrote: > Hi, > > 2017-04-26 17:43 GMT+03:00 Mark Thomas : >> >> On 25/04/17 11:47, Violeta Georgieva wrote: >> >> >> >>> Thanks for the review. >>> Changes for all comments are applied to the PR. >>> Can you take a look? >> >> Sure. A few more comments but nothing serious. Unless the fixes for any >> of these require large changes to the patch I'd be +1 on applying the >> patch with these fixes. I'd be fine with the patch being committed >> without the minor issues fixed as long as they were addressed later. >> >> Mark >> >> >> Moderate >> >> - If another thread calls suspend() after the call to close() it looks >> like there could be an issue. Is another state - CLOSING - required? >> >> - On the client READ means a read is progress and READY means data has >> been read and is being processed. On the server the meanings are >> reversed. > > You are correct and it is tricky to find fitting state names as the server > and the client has different roles. > Currently the states mean: > > On the Server > - READY means we are waiting for a notification that data is ready to be > read from the socket > - READ means we are reading from the socket and processing data > > On the Client > - READ means that we will process the data if such has already been read > and more data will be read from the socket > - READY means data has been read and is available for processing Maybe just document the above in the Javadoc for the state diagram. Mark > > What about to rename > READY -> WAITING which will have meaning: > - on the Server - waiting to read a data from the socket > - on the Client - waiting for a data to be processed > > READ -> PROCESSING > - on the Server - the data is read from the socket and processed > - on the Client - the available data is processed and more data is read > from the socket > > Also the other states will be: > > READY_SUSPENDING -> SUSPENDING_WAIT > READ_SUSPENDING -> SUSPENDING_PROCESS > > Regards, > Violeta > >> >> - A couple of lines have trailing whitespace >> (only moderate because it will break the CI system) >> >> >> Minor >> >> - The Javadoc for the state diagram would be clearer with separate >> lines for each transition rather than some lines being bi-directional >> >> - Can WsFrameClient.processSocketRead() be simplified? The try/catch >> block that sets read state to READY looks to be unnecessary. The code >> paths all appear to lead to close - and that sets the read state >> anyway. >> >> >> - >> 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: r1792957 - in /tomcat/trunk: java/org/apache/coyote/AbstractProtocol.java webapps/docs/changelog.xml
Author: markt Date: Thu Apr 27 20:49:32 2017 New Revision: 1792957 URL: http://svn.apache.org/viewvc?rev=1792957&view=rev Log: Wildcard host names need quoting since '*' is a reserved character in an ObjectName. Modified: tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java tomcat/trunk/webapps/docs/changelog.xml Modified: tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java?rev=1792957&r1=1792956&r2=1792957&view=diff == --- tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java (original) +++ tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java Thu Apr 27 20:49:32 2017 @@ -552,13 +552,13 @@ public abstract class AbstractProtocolhttp://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?rev=1792957&r1=1792956&r2=1792957&view=diff == --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ tomcat/trunk/webapps/docs/changelog.xml Thu Apr 27 20:49:32 2017 @@ -65,6 +65,12 @@ Avoid a NullPointerException when reading attributes for a initialised HTTP connector where TLS is enabled. (markt) + +If a wild card hostName is configured for a +SSLHostConfig element, quote the host name when using it as +part of a JMX object name to avoid errors that prevent the associated +TLS connector from starting. (markt) + - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
svn commit: r1792958 - in /tomcat/tc8.5.x/trunk: ./ java/org/apache/coyote/AbstractProtocol.java webapps/docs/changelog.xml
Author: markt Date: Thu Apr 27 20:50:41 2017 New Revision: 1792958 URL: http://svn.apache.org/viewvc?rev=1792958&view=rev Log: Wildcard host names need quoting since '*' is a reserved character in an ObjectName. Modified: tomcat/tc8.5.x/trunk/ (props changed) tomcat/tc8.5.x/trunk/java/org/apache/coyote/AbstractProtocol.java tomcat/tc8.5.x/trunk/webapps/docs/changelog.xml Propchange: tomcat/tc8.5.x/trunk/ -- --- svn:mergeinfo (original) +++ svn:mergeinfo Thu Apr 27 20:50:41 2017 @@ -1 +1 @@ -/tomcat/trunk:1734785,1734799,1734845,1734928,1735041,1735044,1735480,1735577,1735597,1735599-1735600,1735615,1736145,1736162,1736209,1736280,1736297,1736299,1736489,1736646,1736703,1736836,1736849,1737104-1737105,1737112,1737117,1737119-1737120,1737155,1737157,1737192,1737280,1737339,1737632,1737664,1737715,1737748,1737785,1737834,1737860,1737903,1737959,1738005,1738007,1738014-1738015,1738018,1738022,1738039,1738043,1738059-1738060,1738147,1738149,1738174-1738175,1738261,1738589,1738623-1738625,1738643,1738816,1738850,1738855,1738946-1738948,1738953-1738954,1738979,1738982,1739079-1739081,1739087,1739113,1739153,1739172,1739176,1739191,1739474,1739726,1739762,1739775,1739814,1739817-1739818,1739975,1740131,1740324,1740465,1740495,1740508-1740509,1740520,1740535,1740707,1740803,1740810,1740969,1740980,1740991,1740997,1741015,1741033,1741036,1741058,1741060,1741080,1741147,1741159,1741164,1741173,1741181,1741190,1741197,1741202,1741208,1741213,1741221,1741225,1741232,1741409,1741501 ,1741677,1741892,1741896,1741984,1742023,1742042,1742071,1742090,1742093,1742101,1742105,1742111,1742139,1742146,1742148,1742166,1742181,1742184,1742187,1742246,1742248-1742251,1742263-1742264,1742268,1742276,1742369,1742387,1742448,1742509-1742512,1742917,1742919,1742933,1742975-1742976,1742984,1742986,1743019,1743115,1743117,1743124-1743125,1743134,1743425,1743554,1743679,1743696-1743698,1743700-1743701,1744058,1744064-1744065,1744125,1744194,1744229,1744270,1744323,1744432,1744684,1744697,1744705,1744713,1744760,1744786,1745083,1745142-1745143,1745145,1745177,1745179-1745180,1745227,1745248,1745254,1745337,1745467,1745473,1745535,1745576,1745735,1745744,1746304,1746306-1746307,1746319,1746327,1746338,1746340-1746341,1746344,1746427,1746441,1746473,1746490,1746492,1746495-1746496,1746499-1746501,1746503-1746507,1746509,1746549,1746551,1746554,1746556,1746558,1746584,1746620,1746649,1746724,1746939,1746989,1747014,1747028,1747035,1747210,1747225,1747234,1747253,1747404,1747506,1747 536,1747924,1747980,1747993,1748001,1748253,1748452,1748547,1748629,1748676,1748715,1749287,1749296,1749328,1749373,1749465,1749506,1749508,1749665-1749666,1749763,1749865-1749866,1749898,1749978,1749980,1750011,1750015,1750056,1750480,1750617,1750634,1750692,1750697,1750700,1750703,1750707,1750714,1750718,1750723,1750774,1750899,1750975,1750995,1751061,1751097,1751173,1751438,1751447,1751463,1751702,1752212,1752737,1752745,1753078,1753080,1753358,1753363,1754111,1754140-1754141,1754281,1754310,1754445,1754467,1754494,1754496,1754528,1754532-1754533,1754613,1754714,1754874,1754941,1754944,1754950-1754951,1755005,1755007,1755009,1755132,1755180-1755181,1755185,1755190,1755204-1755206,1755208,1755214,1755224,1755227,1755230,1755629,1755646-1755647,1755650,1755653,1755675,1755680,1755683,1755693,1755717,1755731-1755737,1755812,1755828,1755884,1755890,1755918-1755919,1755942,1755958,1755960,1755970,1755993,1756013,1756019,1756039,1756056,1756083-1756114,1756175,1756288-1756289,1756408-1 756410,1756778,1756798,1756878,1756898,1756939,1757123-1757124,1757126,1757128,1757132-1757133,1757136,1757145,1757167-1757168,1757175,1757180,1757182,1757195,1757271,1757278,1757347,1757353-1757354,1757363,1757374,1757399,1757406,1757408,1757485,1757495,1757499,1757527,1757578,1757684,1757722,1757727,1757790,1757799,1757813,1757853,1757883,1757903,1757976,1757997,1758000,1758058,1758072-1758075,1758078-1758079,1758223,1758257,1758261,1758276,1758292,1758369,1758378-1758383,1758421,1758423,1758425-1758427,1758430,1758443,1758448,1758459,1758483,1758486-1758487,1758499,1758525,1758556,1758580,1758582,1758584,1758588,1758842,1759019,1759212,1759224,1759227,1759252,1759274,1759513-1759516,1759611,1759757,1759785-1759790,1760005,1760022,1760109-1760110,1760135,1760200-1760201,1760227,1760300,1760397,1760446,1760454,1760640,1760648,1761057,1761422,1761491,1761498,1761500-1761501,1761550,1761553,1761572,1761574,1761625-1761626,1761628,1761682,1761740,1761752,1762051-1762053,1762123,176216 8,1762172,1762182,1762201-1762202,1762204,1762208,1762288,1762296,1762324,1762348,1762353,1762362,1762374,1762492,1762503,1762505,1762541,1762608,1762710,1762753,1762766,1762769,1762944,1762947,1762953,1763167,1763179,1763232,1763259,1763271-1763272,1763276-1763277,1763319-1763320,1763370,1763372,1763375,1763377,1763393,1763412,1763430,1763450,1763462,1763505,1763511-1763512,1763516,1763518,1763520,1763529
Re: svn commit: r1792957 - in /tomcat/trunk: java/org/apache/coyote/AbstractProtocol.java webapps/docs/changelog.xml
-BEGIN PGP SIGNED MESSAGE- Hash: SHA256 Mark, On 4/27/17 4:49 PM, ma...@apache.org wrote: > Author: markt Date: Thu Apr 27 20:49:32 2017 New Revision: 1792957 > > URL: http://svn.apache.org/viewvc?rev=1792957&view=rev Log: > Wildcard host names need quoting since '*' is a reserved character > in an ObjectName. > > Modified: > tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java > tomcat/trunk/webapps/docs/changelog.xml > > Modified: > tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java URL: > http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/coyote/Abstr actProtocol.java?rev=1792957&r1=1792956&r2=1792957&view=diff > > == > --- tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java > (original) +++ > tomcat/trunk/java/org/apache/coyote/AbstractProtocol.java Thu Apr > 27 20:49:32 2017 @@ -552,13 +552,13 @@ public abstract class > AbstractProtocol > for (SSLHostConfig sslHostConfig : > getEndpoint().findSslHostConfigs()) { ObjectName sslOname = new > ObjectName(domain + ":type=SSLHostConfig,ThreadPool=" + - > getName() + ",name=" + sslHostConfig.getHostName()); + > getName() + ",name=" + > ObjectName.quote(sslHostConfig.getHostName())); > Registry.getRegistry(null, null).registerComponent(sslHostConfig, > sslOname, null); sslOnames.add(sslOname); for > (SSLHostConfigCertificate sslHostConfigCert : > sslHostConfig.getCertificates()) { ObjectName sslCertOname = new > ObjectName(domain + ":type=SSLHostConfigCertificate,ThreadPool=" + > getName() + -",Host=" + > sslHostConfig.getHostName() + +",Host=" > + ObjectName.quote(sslHostConfig.getHostName()) + ",name=" + > sslHostConfigCert.getType()); Registry.getRegistry(null, > null).registerComponent( sslHostConfigCert, sslCertOname, null); > > Modified: tomcat/trunk/webapps/docs/changelog.xml URL: > http://svn.apache.org/viewvc/tomcat/trunk/webapps/docs/changelog.xml?r ev=1792957&r1=1792956&r2=1792957&view=diff > > == > --- tomcat/trunk/webapps/docs/changelog.xml (original) +++ > tomcat/trunk/webapps/docs/changelog.xml Thu Apr 27 20:49:32 2017 @@ > -65,6 +65,12 @@ Avoid a NullPointerException when > reading attributes for a initialised HTTP connector where TLS is > enabled. (markt) + +If a wild card > hostName is configured for a + > SSLHostConfig element, quote the host name when using > it as +part of a JMX object name to avoid errors that > prevent the associated +TLS connector from starting. > (markt) + name="Jasper"> We are always quoting, not just for wildcard hostnames. The "fix" implies that quoting only happens for wildcards. - -chris -BEGIN PGP SIGNATURE- Comment: GPGTools - http://gpgtools.org Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBCAAGBQJZAlvHAAoJEBzwKT+lPKRYkTgQAKF+zcM4yN5niDaVWAUXsMcK mx8IYo/eYTtyv25tP634QjOEbL0uD0kbkTBEIW+ymmQxsKtPGShD/N1Ch38Epwfh MxJdQcdKDjHBGI8FP+8PcLTixydN5wpE4m7c6TMXcrUFrrG6fWr6gVmpfy5184IH V8k0T8JdS4RZjFgAfxnTFtuGcNoTEeds+8CbWm4i7U0dJc29p8HGF5xjWpNanRK1 DYR9NiA0reAgZA/0PES0ArsI1fL4k2mA+5YBTKDuOcNkQUJHKx7ElTHIjXz2ZC9Z PXvUDc0oFHJB9v6N0t0/DIGJ3EMrHDsw5VJ5Ln//GSq1FJby93T889RkEcc4TxZf 1a4hpk9tq+QjrmH1dmcYswhNYC877iA9Ae+HLJTE0wxf6Enby4bUZjcB4iv33Srz CCVm2s7Ut+z/o5uhlqJwOo9EeHjtntuW1Ga7ByJGtfZEXqZsIOth2lyfUdNMYHEr 59z0ySMrz1glzP5euZ6TZVVGQLo7W5tuU/gjENMu8Kdrk6xGwrRyA7tW/Uc6apMK v510rzFIF7C/12rYT1sz02XN6w7dV6Kqsj1e2yjNh71+LjcD598WQVve1/PYOk0E L/rEPucBBj+RHNDwHPWcmTPmR1W3cCO9MchjTh7sMcwZ63OqIAh9Ff3g/oLSRLdm 7rEaBviPpbQwwlUctzXx =ZV1K -END PGP SIGNATURE- - To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org
[Bug 60963] Optimize class loading for unpackWARs=false case
https://bz.apache.org/bugzilla/show_bug.cgi?id=60963 --- Comment #14 from Thomas Meyer --- Hi, any news on this? Do you want me to attach the patch here? Anything else I can do? -- 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: Read events suspend/resume logic in websocket impl to achieve backpressure
Hi, 2017-04-26 17:43 GMT+03:00 Mark Thomas : > > On 25/04/17 11:47, Violeta Georgieva wrote: > > > > > Thanks for the review. > > Changes for all comments are applied to the PR. > > Can you take a look? > > Sure. A few more comments but nothing serious. Unless the fixes for any > of these require large changes to the patch I'd be +1 on applying the > patch with these fixes. I'd be fine with the patch being committed > without the minor issues fixed as long as they were addressed later. > > Mark > > > Moderate > > - If another thread calls suspend() after the call to close() it looks > like there could be an issue. Is another state - CLOSING - required? > > - On the client READ means a read is progress and READY means data has > been read and is being processed. On the server the meanings are > reversed. > > - A couple of lines have trailing whitespace > (only moderate because it will break the CI system) > > > Minor > > - The Javadoc for the state diagram would be clearer with separate > lines for each transition rather than some lines being bi-directional > > - Can WsFrameClient.processSocketRead() be simplified? The try/catch > block that sets read state to READY looks to be unnecessary. The code > paths all appear to lead to close - and that sets the read state > anyway. The fixes for all comments are available in the PR. If there are no other comments I'm going to commit this functionality to Tomcat 9. Thanks, Violeta > > - > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org >