I assume based on all the "wonderful experiences" the states have experienced in last dozen years that Canada has wised up and stopped Americans from sneaking across the border without a passport?
better pack you snowshoes..they have about 6 feet of snow (last time i checked) Keep me apprised, M- > Date: Tue, 25 Feb 2014 11:50:30 -0400 > Subject: Re: Tomcat/Java Spring MVC 2.0/c3p0 - Consultant needed > From: charle...@thelearningbar.com > To: users@tomcat.apache.org > > On Tue, Feb 25, 2014 at 11:37 AM, Daniel Mikusa <dmik...@gopivotal.com>wrote: > > > On Feb 25, 2014, at 10:14 AM, Charles Richard < > > charle...@thelearningbar.com> wrote: > > > > > Hi, > > > > > > On Tue, Feb 25, 2014 at 1:26 AM, Christopher Schultz < > > > ch...@christopherschultz.net> wrote: > > > > > >> -----BEGIN PGP SIGNED MESSAGE----- > > >> Hash: SHA256 > > >> > > >> Charles, > > >> > > >> On 2/24/14, 10:15 AM, Charles Richard wrote: > > >>> Sorry if this is not the right forum for this kind of inquiry. I > > >>> figure the best candidates would be in this forum from personal > > >>> experience. > > >>> > > >>> Our company is having production issues which I believe are either > > >>> due to application inefficiencies or a bug somewhere in our > > >>> software stack. > > >>> > > >>> We are having production issues with our Tomcat connection pool > > >>> using c3p0 and while my knowledge in this area has improved, I lack > > >>> the Java developer background that might help in this area and we > > >>> are at a point where we need this solved quickly. > > >> > > >> I've never gotten the sense that c3p0 was production-ready. What made > > >> you deploy with c2p0 instead of either of the two connection pools > > >> that ship with Tomcat? (Note that c3p0 has nothing to do with Tomcat, > > >> other than that Tomcat can be configured to use c3p0 as its > > >> connection-pool). > > >> > > >> > > > That is good to know that c3p0 might not be commonly used in production > > by > > > companies using tomcats. I was under the impression it was the most > > > commonly used. > > > > > > > > >> The problems could be related to leaked connections which I'm quite > > >>> sure we have. I have turned on c3p0 debugging and identified this > > >>> in the past and the ideal consultant could identify in our code > > >>> where those are happening and fix them. > > >> > > >> Both pools Tomcat provides can help you track-down so-called > > >> "abandoned" connections by providing stack traces that point to the > > >> line of code that obtained the connection (or even Statement or > > >> ResultSet). > > >> > > >> C3P0 also allows you to track down abandoned connections and my gut > > > feeling tells me how problem is not tied down exclusively to this as our > > > Tomcat connection pools go from 1 used connection to 150 in a minute and > > I > > > know we are not losing that many leaked connections in a minute. > > > Regardless, I will check with the manager here to see if this has been > > > tried in the past before I started this job and potentially try this as > > > unfortunately, the problem is not happening in our staging environment. > > > > When you are experiencing the problem next, take some thread dumps. Try > > to get two or three, with 10 to 15 seconds between each one. You can then > > look at the thread dumps to see what's going on here. > > > > > > https://wiki.apache.org/tomcat/HowTo#How_do_I_obtain_a_thread_dump_of_my_running_webapp_.3F > > > > It's not easy to get good thread dumps as one minute things are fine and > the next minute, the site is going downhill. I have bash scripts that > monitor c3p0 connections and take an automatic thread dump as soon as the > number exceeds what's normal. > > > > > There is information about interpreting them here or if you need help with > > it, you could post it to the list. > > > > > > https://wiki.apache.org/tomcat/HowTo#How_do_I_read_a_Java_thread_dump_.3F > > > > I have tried to analyze the thread dumps I have gotten so far without much > luck but this could just be that I don't understand enough what I'm looking > for. I will look at the link provided. > > Thanks for taking the time to write this! > > Dan > > > > Cheers, > Charles > > > > > > > > > >> I would highly recommend that you read this blog post I wrote several > > >> years ago that can help you look for obvious errors by providing > > >> examples for what JDBC code should look like -- if you are managing > > >> your own JDBC calls of course: > > >> > > >> > > http://blog.christopherschultz.net/index.php/2009/03/16/properly-handling-pooled-jdbc-connections/ > > >> > > >>> We are looking to hire a consultant that would come to Fredericton, > > >>> NB, Canada to work with us on this problem. Serious inquiries only. > > >>> I will be looking for proof that you have extensive experience with > > >>> Tomcat, Java Spring and c3p0. > > >>> > > >>> If you are interested, send me your resume (through your company > > >>> or individually) and send me as much proof as possible of your > > >>> experience with the specific technologies mentioned. > > >> > > >> While there is certainly no prohibition against doing so, this isn't > > >> really a "help wanted" message board. We are happy to help you -- for > > >> free! -- via email to solve your own problems. If you find this free > > >> forum helpful, please consider staying to be a part of the community. > > >> You may help others or learn things yourself. > > >> > > >> I find this forum for the most part helpful and I've posted a few times > > > before. In general though, I haven't felt that comfortable to post here. > > > > > > Before you hire anyone, you might want to try the following: > > >> > > >> 1. Swap c3p0 for something more reliable such as Tomcat's default pool > > >> (based upon commons-dbcp) or the newer, higher-performance > > >> tomcat-pool. You can find documentation for both of those online in > > >> the Users' Guide. If the pool is performing okay, this may not be > > >> necessary, but it's nearly free to try so it may be a good first-step. > > >> > > > > > > I might have to wait a month to try this so our peak traffic subsides as > > I > > > could test the config on our staging environment but since the problem is > > > only happening on production, I would be nervous of not having the > > optimal > > > configuration and make things worse. > > > > > >> > > >> 2. Check your own code for resource-handling errors. Take some time to > > >> read my blog post, or have your engineers do it (better yet, have > > >> everyone read it). > > >> > > >> Will do. > > > > > > > > >> 3. Run a static-analysis tool such as FindBugs (which is free) against > > >> your code. It can detect resource leaks you may not have known you > > >> had. Running the tool takes almost no setup and/or skill, and you can > > >> read the report entirely for free. If you have a million errors, it > > >> might take you a lot of staff to identify and fix the problems, but > > >> it's likely to point-out some problem areas -- and point you to the > > >> exact line numbers where problems are likely to be. > > >> > > >> Thanks for the recommendation, I've never heard of this tool. > > > > > > > > >> You might get a lot of mileage (kilometerage?) out of the above > > >> without having to hire anyone. > > >> > > >> Thanks for taking the time to write this and trying to help! > > > > > >> - -chris > > >> > > > > > > Cheers! > > > Charles > > > > > > > > >> -----BEGIN PGP SIGNATURE----- > > >> Version: GnuPG v1 > > >> Comment: GPGTools - http://gpgtools.org > > >> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ > > >> > > >> iQIcBAEBCAAGBQJTDCmHAAoJEBzwKT+lPKRYUTAP/iNhYjUQqaYIXCEn7WrKEpVW > > >> PCn4+ZLmzlmm1r7GSVbSc0+632JKA+YSOz+c8LplGnMAmUa6eU7sz2KgrunsnCCm > > >> y5UiNySJ3nQEtKcHn0c7TpNmfGUGn61Y0GoK9A+JID8jubxBNMmt4nvH7FBfRrGA > > >> GjB93hwIsJ0pK0InmejXmcoBxRYIzaVavV7nW7I/63SURv+TnXmuriHtrC5KBB39 > > >> /o5V9VNaDZqsm7zsi3qqEYoxY2/yEMt+W9++bYajXFhhhUevWdRw2NFgihyewRuL > > >> xc4GWV+5OIvSlsr0JtKXlJha8ooz1BVPigRd6vRQDaw2DFNzXy0Jl30kGK5ECuwI > > >> SmldUzYjZZGEJBhN2RGNsJgDi0zpvOIBmAciUCWZFNy7xzhubx+DTK1AHUYjW15j > > >> H1ujwZAkXfSsfY9h+vP9ATntn2YBQ3R3L7pKtjd+d7T5C9ULDIglH4o3+2kK4TEg > > >> zV+bUhyLXM/sf9IXMOTUZa9TsF8EovbaT5sRx2gXWqbMKOgyy3lJuzMaOg3110Cd > > >> P5tOfypeevWE0NY5+nUXDtmgKz+GHAkaOkdhlvDBjQ0UwNL/yV9WU5ui1pev2KLi > > >> Ct7DHj92K//ROM6RerkMjHPCcLPX5c6bbBzXl5R/unfprkPoRZ0RwgxQK/2ARAst > > >> ZDSf1VD+AUL82qVQy1rf > > >> =VgOW > > >> -----END PGP SIGNATURE----- > > >> > > >> --------------------------------------------------------------------- > > >> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > > >> For additional commands, e-mail: users-h...@tomcat.apache.org > > >> > > >> > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > > For additional commands, e-mail: users-h...@tomcat.apache.org > > > >