You are viewing a plain text version of this content. The canonical link for it is here.
Posted to olio-user@incubator.apache.org by Mingfan Lu <mi...@gmail.com> on 2009/09/28 06:58:36 UTC
Dead lock found exception
In my benchmark, I found that there is a dead lock exception.
exception 'PDOException' with message 'SQLSTATE[40001]: Serialization
failure: 1213 Deadlock found when trying to get lock; try restarting
transaction' in
/opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php:77\nStack
trace:\n#0
/opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php(77):
PDO->exec('insert into ADD...')\n#1
/opt/faban/faban/apache-olio-php/oliophp/public_html/addPersonResult.php(79):
PDOConnection->exec('insert into ADD...')\n#2 {main}
According to the source code, it throws by
$insertaddr = "insert into ADDRESS (street1, street2, city, state, zip,
country, latitude, longitude) ".
"values ('$strt1', '$street2', '$cty', '$state',
'$zip', '$country', ".
"'$geocode->latitude', '$geocode->longitude')";
$connection->beginTransaction();
$connection->exec($insertaddr);
There is not other index but btree index.
Will we modify the insert to "insert ignore" ?
RE: Java doAddEvent failing in workload
Posted by James Zubb <jz...@vmware.com>.
That fixed it.
thanks,
james
________________________________
From: Kim.Lichong@Sun.COM [mailto:Kim.Lichong@Sun.COM]
Sent: Monday, October 05, 2009 12:04 PM
To: olio-user@incubator.apache.org
Subject: Re: Java doAddEvent failing in workload
Hi James,
Can you do me a favor and verify if this works for you? You will save me some time in setting a new configuration :)
After line 514, can you add the following line:
params.add(new StringPart("timezone", parameters[5])); //timezone
then rebuild and deploy the driver?
thanks,
Kim
i.e.
817435 public void doAddEvent() throws IOException {
497 : logger.finer("doAddEvent");
498 : ctx.recordTime();
499 : http.readURL(addEventURL);
500 : loadStatics(addEventStatics);
501 : if(isLoggedOn) {
502 : // Prepare the parts for the request.
503 : ArrayList<Part> params = new ArrayList<Part>();
504 : 818271 String[] parameters = prepareEvent();
505 : if (parameters[0] == null || parameters[0].length() == 0)
506 : logger.warning("Socialevent title is null!");
507 : else
508 : logger.finer("addEvent adding event title: " + parameters[0]);
509 :
510 : params.add(new StringPart("title", parameters[0])); //title
511 : params.add(new StringPart("summary", parameters[1])); // summary
512 : params.add(new StringPart("description", parameters[2])); // description
513 : params.add(new StringPart("submitter_user_name", parameters[3]));
514 : params.add(new StringPart("telephone", parameters[4])); //phone
----------> params.add(new StringPart("timezone", parameters[5])); //timezone
515 : params.add(new StringPart("year", parameters[6]));
Hi James,
It seems like there is a bug introduced with the recent checkin of the Java driver. It is missing a parameter for timezone in the doAddEvent although the prepareEvent does populate a field for timezone.
Can you file a bug on this please?
Thanks,
Kim
I am having issues with the latest Java code. I am getting 100% failure for adding events when running the workload. I AM able to add events manually without error. Everything was working with the code I checked out about 2 weeks ago.
I am running on:
CentOS 5.3
Faban-kit-091109
Glassfish v2.1
Java SE 6 u16
Here is the error from the driver:
Message:
UIDriverAgent[0].36.doAddEvent: Multipart Post did not work, returned status code: 500
Exception:
Message:
java.io.IOException: Multipart Post did not work, returned status code: 500
Stack Trace:
Class Method Line
org.apache.olio.workload.driver.UIDriver doMultiPartPost 870
org.apache.olio.workload.driver.UIDriver doAddEvent 541
sun.reflect.GeneratedMethodAccessor9 invoke sun.reflect.DelegatingMethodAccessorImpl invoke 25
java.lang.reflect.Method invoke 597
com.sun.faban.driver.engine.TimeThread doRun 169
com.sun.faban.driver.engine.AgentThread run 201
I am also getting this error in the server.log (timestamp corresponds to the timestamp of the driver error):
[#|2009-10-05T10:45:10.945-0700|SEVERE|sun-appserver2.1|javax.enterprise.system.container.web|_ThreadID=16;_ThreadName=h
ttpSSLWorkerThread-8080-4;_RequestID=90409951-fe84-46c8-abf4-86fea4b5831a;|StandardWrapperValve[ControllerServlet]: PWC1
406: Servlet.service() for servlet ControllerServlet threw exception
java.lang.NullPointerException
at java.util.TimeZone.parseCustomTimeZone(TimeZone.java:692)
at java.util.TimeZone.getTimeZone(TimeZone.java:471)
at java.util.TimeZone.getTimeZone(TimeZone.java:465)
at org.apache.olio.webapp.rest.EventRestAction.createEvent(EventRestAction.java:329)
at org.apache.olio.webapp.rest.EventRestAction.process(EventRestAction.java:108)
at org.apache.olio.webapp.controller.ControllerServlet.process(ControllerServlet.java:61)
at org.apache.olio.webapp.controller.ControllerServlet.doPost(ControllerServlet.java:103)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:315)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:647)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
|#]
Re: Java doAddEvent failing in workload
Posted by Shanti Subramanyam - PAE <Sh...@Sun.COM>.
This is my fault. I missed the update to the app for the timezone and
was testing with the older version and so the new driver works for me.
Kim - I will take care of this fix as I have other minor pending fixes
to the driver.
Shanti
On 10/05/09 12:04, Kim LiChong wrote:
> Hi James,
>
> Can you do me a favor and verify if this works for you? You will save
> me some time in setting a new configuration :)
>
> After line 514, can you add the following line:
>
> params.add(new StringPart("timezone", parameters[5])); //timezone
>
> then rebuild and deploy the driver?
>
> thanks,
>
> Kim
>
>
> i.e.
>
> 817435 public void doAddEvent() throws IOException {
> 497 : logger.finer("doAddEvent");
> 498 : ctx.recordTime();
> 499 : http.readURL(addEventURL);
> 500 : loadStatics(addEventStatics);
> 501 : if(isLoggedOn) {
> 502 : // Prepare the parts for the request.
> 503 : ArrayList<Part> params = new ArrayList<Part>();
> 504 : 818271 String[] parameters = prepareEvent();
> 505 : if (parameters[0] == null ||
> parameters[0].length() == 0)
> 506 : logger.warning("Socialevent title is null!");
> 507 : else
> 508 : logger.finer("addEvent adding event title: " +
> parameters[0]);
> 509 :
> 510 : params.add(new StringPart("title",
> parameters[0])); //title
> 511 : params.add(new StringPart("summary",
> parameters[1])); // summary
> 512 : params.add(new StringPart("description",
> parameters[2])); // description
> 513 : params.add(new StringPart("submitter_user_name",
> parameters[3]));
> 514 : params.add(new StringPart("telephone",
> parameters[4])); //phone
> *----------> params.add(new StringPart("timezone",
> parameters[5])); //timezone *
> 515 : params.add(new StringPart("year", parameters[6]));
>> Hi James,
>>
>> It seems like there is a bug introduced with the recent checkin of the
>> Java driver. It is missing a parameter for timezone in the doAddEvent
>> although the prepareEvent does populate a field for timezone.
>>
>> Can you file a bug on this please?
>>
>> Thanks,
>>
>> Kim
>>
>>
>>
>>
>>> I am having issues with the latest Java code. I am getting 100%
>>> failure for adding events when running the workload. I AM able to
>>> add events manually without error. Everything was working with the
>>> code I checked out about 2 weeks ago.
>>> I am running on:
>>>
>>> CentOS 5.3
>>> Faban-kit-091109
>>> Glassfish v2.1
>>> Java SE 6 u16
>>>
>>>
>>> Here is the error from the driver:
>>>
>>> Message:
>>> UIDriverAgent[0].36.doAddEvent: Multipart Post did not work, returned
>>> status code: 500
>>>
>>> Exception:
>>> Message:
>>> java.io.IOException: Multipart Post did not work, returned status
>>> code: 500
>>>
>>> Stack Trace:
>>> Class Method Line
>>> org.apache.olio.workload.driver.UIDriver doMultiPartPost 870
>>> org.apache.olio.workload.driver.UIDriver doAddEvent 541
>>> sun.reflect.GeneratedMethodAccessor9 invoke
>>> sun.reflect.DelegatingMethodAccessorImpl invoke 25
>>> java.lang.reflect.Method invoke 597
>>> com.sun.faban.driver.engine.TimeThread doRun 169
>>> com.sun.faban.driver.engine.AgentThread run 201
>>>
>>>
>>> I am also getting this error in the server.log (timestamp corresponds
>>> to the timestamp of the driver error):
>>>
>>> [#|2009-10-05T10:45:10.945-0700|SEVERE|sun-appserver2.1|javax.enterprise.system.container.web|_ThreadID=16;_ThreadName=h
>>>
>>> ttpSSLWorkerThread-8080-4;_RequestID=90409951-fe84-46c8-abf4-86fea4b5831a;|StandardWrapperValve[ControllerServlet]:
>>> PWC1
>>> 406: Servlet.service() for servlet ControllerServlet threw exception
>>> java.lang.NullPointerException
>>> at java.util.TimeZone.parseCustomTimeZone(TimeZone.java:692)
>>> at java.util.TimeZone.getTimeZone(TimeZone.java:471)
>>> at java.util.TimeZone.getTimeZone(TimeZone.java:465)
>>> at
>>> org.apache.olio.webapp.rest.EventRestAction.createEvent(EventRestAction.java:329)
>>>
>>> at
>>> org.apache.olio.webapp.rest.EventRestAction.process(EventRestAction.java:108)
>>>
>>> at
>>> org.apache.olio.webapp.controller.ControllerServlet.process(ControllerServlet.java:61)
>>>
>>> at
>>> org.apache.olio.webapp.controller.ControllerServlet.doPost(ControllerServlet.java:103)
>>>
>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
>>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
>>> at
>>> org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
>>>
>>> at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:315)
>>>
>>> at
>>> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
>>>
>>> at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
>>>
>>> at
>>> com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
>>> at
>>> com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
>>>
>>> at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
>>>
>>> at
>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
>>> at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
>>>
>>> at
>>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
>>>
>>> at
>>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
>>> at
>>> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)
>>> at
>>> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:647)
>>>
>>> at
>>> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)
>>>
>>> at
>>> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)
>>>
>>> at
>>> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
>>>
>>> at
>>> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
>>>
>>> at
>>> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
>>>
>>> at
>>> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
>>> at
>>> com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
>>>
>>> |#]
>>>
>>
>
Re: Java doAddEvent failing in workload
Posted by Kim LiChong <Ki...@Sun.COM>.
Hi James,
Can you do me a favor and verify if this works for you? You will save
me some time in setting a new configuration :)
After line 514, can you add the following line:
params.add(new StringPart("timezone", parameters[5])); //timezone
then rebuild and deploy the driver?
thanks,
Kim
i.e.
817435 public void doAddEvent() throws IOException {
497 : logger.finer("doAddEvent");
498 : ctx.recordTime();
499 : http.readURL(addEventURL);
500 : loadStatics(addEventStatics);
501 : if(isLoggedOn) {
502 : // Prepare the parts for the request.
503 : ArrayList<Part> params = new ArrayList<Part>();
504 : 818271 String[] parameters = prepareEvent();
505 : if (parameters[0] == null ||
parameters[0].length() == 0)
506 : logger.warning("Socialevent title is null!");
507 : else
508 : logger.finer("addEvent adding event title: " +
parameters[0]);
509 :
510 : params.add(new StringPart("title",
parameters[0])); //title
511 : params.add(new StringPart("summary",
parameters[1])); // summary
512 : params.add(new StringPart("description",
parameters[2])); // description
513 : params.add(new StringPart("submitter_user_name",
parameters[3]));
514 : params.add(new StringPart("telephone",
parameters[4])); //phone
*----------> params.add(new StringPart("timezone",
parameters[5])); //timezone *
515 : params.add(new StringPart("year", parameters[6]));
> Hi James,
>
> It seems like there is a bug introduced with the recent checkin of the
> Java driver. It is missing a parameter for timezone in the doAddEvent
> although the prepareEvent does populate a field for timezone.
>
> Can you file a bug on this please?
>
> Thanks,
>
> Kim
>
>
>
>
>> I am having issues with the latest Java code. I am getting 100%
>> failure for adding events when running the workload. I AM able to
>> add events manually without error. Everything was working with the
>> code I checked out about 2 weeks ago.
>> I am running on:
>>
>> CentOS 5.3
>> Faban-kit-091109
>> Glassfish v2.1
>> Java SE 6 u16
>>
>>
>> Here is the error from the driver:
>>
>> Message:
>> UIDriverAgent[0].36.doAddEvent: Multipart Post did not work, returned
>> status code: 500
>>
>> Exception:
>> Message:
>> java.io.IOException: Multipart Post did not work, returned status
>> code: 500
>>
>> Stack Trace:
>> Class Method Line
>> org.apache.olio.workload.driver.UIDriver doMultiPartPost 870
>> org.apache.olio.workload.driver.UIDriver doAddEvent 541
>> sun.reflect.GeneratedMethodAccessor9 invoke
>> sun.reflect.DelegatingMethodAccessorImpl invoke 25
>> java.lang.reflect.Method invoke 597
>> com.sun.faban.driver.engine.TimeThread doRun 169
>> com.sun.faban.driver.engine.AgentThread run 201
>>
>>
>> I am also getting this error in the server.log (timestamp corresponds
>> to the timestamp of the driver error):
>>
>> [#|2009-10-05T10:45:10.945-0700|SEVERE|sun-appserver2.1|javax.enterprise.system.container.web|_ThreadID=16;_ThreadName=h
>>
>> ttpSSLWorkerThread-8080-4;_RequestID=90409951-fe84-46c8-abf4-86fea4b5831a;|StandardWrapperValve[ControllerServlet]:
>> PWC1
>> 406: Servlet.service() for servlet ControllerServlet threw exception
>> java.lang.NullPointerException
>> at java.util.TimeZone.parseCustomTimeZone(TimeZone.java:692)
>> at java.util.TimeZone.getTimeZone(TimeZone.java:471)
>> at java.util.TimeZone.getTimeZone(TimeZone.java:465)
>> at
>> org.apache.olio.webapp.rest.EventRestAction.createEvent(EventRestAction.java:329)
>>
>> at
>> org.apache.olio.webapp.rest.EventRestAction.process(EventRestAction.java:108)
>>
>> at
>> org.apache.olio.webapp.controller.ControllerServlet.process(ControllerServlet.java:61)
>>
>> at
>> org.apache.olio.webapp.controller.ControllerServlet.doPost(ControllerServlet.java:103)
>>
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
>> at
>> org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
>>
>> at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:315)
>>
>> at
>> org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
>>
>> at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
>>
>> at
>> com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
>> at
>> com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
>>
>> at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
>>
>> at
>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
>> at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
>>
>> at
>> org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
>>
>> at
>> org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
>> at
>> org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)
>> at
>> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:647)
>>
>> at
>> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)
>>
>> at
>> com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)
>>
>> at
>> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
>>
>> at
>> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
>>
>> at
>> com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
>>
>> at
>> com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
>> at
>> com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
>>
>> |#]
>>
>
Re: Java doAddEvent failing in workload
Posted by Kim LiChong <Ki...@Sun.COM>.
Hi James,
It seems like there is a bug introduced with the recent checkin of the
Java driver. It is missing a parameter for timezone in the doAddEvent
although the prepareEvent does populate a field for timezone.
Can you file a bug on this please?
Thanks,
Kim
> I am having issues with the latest Java code. I am getting 100% failure for adding events when running the workload. I AM able to add events manually without error. Everything was working with the code I checked out about 2 weeks ago.
>
> I am running on:
>
> CentOS 5.3
> Faban-kit-091109
> Glassfish v2.1
> Java SE 6 u16
>
>
> Here is the error from the driver:
>
> Message:
> UIDriverAgent[0].36.doAddEvent: Multipart Post did not work, returned status code: 500
>
> Exception:
> Message:
> java.io.IOException: Multipart Post did not work, returned status code: 500
>
> Stack Trace:
> Class Method Line
> org.apache.olio.workload.driver.UIDriver doMultiPartPost 870
> org.apache.olio.workload.driver.UIDriver doAddEvent 541
> sun.reflect.GeneratedMethodAccessor9 invoke
> sun.reflect.DelegatingMethodAccessorImpl invoke 25
> java.lang.reflect.Method invoke 597
> com.sun.faban.driver.engine.TimeThread doRun 169
> com.sun.faban.driver.engine.AgentThread run 201
>
>
> I am also getting this error in the server.log (timestamp corresponds to the timestamp of the driver error):
>
> [#|2009-10-05T10:45:10.945-0700|SEVERE|sun-appserver2.1|javax.enterprise.system.container.web|_ThreadID=16;_ThreadName=h
> ttpSSLWorkerThread-8080-4;_RequestID=90409951-fe84-46c8-abf4-86fea4b5831a;|StandardWrapperValve[ControllerServlet]: PWC1
> 406: Servlet.service() for servlet ControllerServlet threw exception
> java.lang.NullPointerException
> at java.util.TimeZone.parseCustomTimeZone(TimeZone.java:692)
> at java.util.TimeZone.getTimeZone(TimeZone.java:471)
> at java.util.TimeZone.getTimeZone(TimeZone.java:465)
> at org.apache.olio.webapp.rest.EventRestAction.createEvent(EventRestAction.java:329)
> at org.apache.olio.webapp.rest.EventRestAction.process(EventRestAction.java:108)
> at org.apache.olio.webapp.controller.ControllerServlet.process(ControllerServlet.java:61)
> at org.apache.olio.webapp.controller.ControllerServlet.doPost(ControllerServlet.java:103)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
> at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:315)
> at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
> at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
> at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
> at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
> at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
> at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
> at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
> at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)
> at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:647)
> at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)
> at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)
> at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
> at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
> at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
> at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
> at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
> |#]
>
Java doAddEvent failing in workload
Posted by James Zubb <jz...@vmware.com>.
I am having issues with the latest Java code. I am getting 100% failure for adding events when running the workload. I AM able to add events manually without error. Everything was working with the code I checked out about 2 weeks ago.
I am running on:
CentOS 5.3
Faban-kit-091109
Glassfish v2.1
Java SE 6 u16
Here is the error from the driver:
Message:
UIDriverAgent[0].36.doAddEvent: Multipart Post did not work, returned status code: 500
Exception:
Message:
java.io.IOException: Multipart Post did not work, returned status code: 500
Stack Trace:
Class Method Line
org.apache.olio.workload.driver.UIDriver doMultiPartPost 870
org.apache.olio.workload.driver.UIDriver doAddEvent 541
sun.reflect.GeneratedMethodAccessor9 invoke
sun.reflect.DelegatingMethodAccessorImpl invoke 25
java.lang.reflect.Method invoke 597
com.sun.faban.driver.engine.TimeThread doRun 169
com.sun.faban.driver.engine.AgentThread run 201
I am also getting this error in the server.log (timestamp corresponds to the timestamp of the driver error):
[#|2009-10-05T10:45:10.945-0700|SEVERE|sun-appserver2.1|javax.enterprise.system.container.web|_ThreadID=16;_ThreadName=h
ttpSSLWorkerThread-8080-4;_RequestID=90409951-fe84-46c8-abf4-86fea4b5831a;|StandardWrapperValve[ControllerServlet]: PWC1
406: Servlet.service() for servlet ControllerServlet threw exception
java.lang.NullPointerException
at java.util.TimeZone.parseCustomTimeZone(TimeZone.java:692)
at java.util.TimeZone.getTimeZone(TimeZone.java:471)
at java.util.TimeZone.getTimeZone(TimeZone.java:465)
at org.apache.olio.webapp.rest.EventRestAction.createEvent(EventRestAction.java:329)
at org.apache.olio.webapp.rest.EventRestAction.process(EventRestAction.java:108)
at org.apache.olio.webapp.controller.ControllerServlet.process(ControllerServlet.java:61)
at org.apache.olio.webapp.controller.ControllerServlet.doPost(ControllerServlet.java:103)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:427)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:315)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:287)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:218)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:94)
at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:98)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:222)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:166)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:648)
at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:593)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:587)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:1096)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:288)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.invokeAdapter(DefaultProcessorTask.java:647)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.doProcess(DefaultProcessorTask.java:579)
at com.sun.enterprise.web.connector.grizzly.DefaultProcessorTask.process(DefaultProcessorTask.java:831)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.executeProcessorTask(DefaultReadTask.java:341)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:263)
at com.sun.enterprise.web.connector.grizzly.DefaultReadTask.doTask(DefaultReadTask.java:214)
at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:265)
at com.sun.enterprise.web.connector.grizzly.ssl.SSLWorkerThread.run(SSLWorkerThread.java:106)
|#]
Re: Dead lock found exception
Posted by Akara Sucharitakul <Ak...@Sun.COM>.
Looks like this page:
http://dev.mysql.com/doc/refman/5.0/en/innodb-deadlocks.html
does explain somewhat how deadlocks could happen in our scenario - lock
on insert.
"InnoDB uses automatic row-level locking. You can get deadlocks even in
the case of transactions that just insert or delete a single row. That
is because these operations are not really “atomic”; they automatically
set locks on the (possibly several) index records of the row inserted or
deleted."
It would be good to follow the instructions on the page, run SHOW ENGINE
INNODB STATUS, and share the outcome. Thanks.
-Akara
Mingfan Lu wrote:
> Yes I am using Olio 0.1
>
> On Tue, Sep 29, 2009 at 2:21 AM, Akara Sucharitakul
> <Akara.Sucharitakul@sun.com <ma...@sun.com>> wrote:
>
> Even duplicate addresses generate a new PK. I do not quite
> understand how the deadlock could happen. It looks like something is
> trying to lock the table rather than the record. This is the Olio
> 0.1 publicly available, right?
>
> -Akara
>
>
> Mingfan Lu wrote:
>
> In my benchmark, I found that there is a dead lock exception.
>
> exception 'PDOException' with message 'SQLSTATE[40001]:
> Serialization failure: 1213 Deadlock found when trying to get
> lock; try restarting transaction' in
> /opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php:77\nStack
> trace:\n#0
> /opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php(77):
> PDO->exec('insert into ADD...')\n#1
> /opt/faban/faban/apache-olio-php/oliophp/public_html/addPersonResult.php(79):
> PDOConnection->exec('insert into ADD...')\n#2 {main}
>
> According to the source code, it throws by
>
> $insertaddr = "insert into ADDRESS (street1, street2, city,
> state, zip, country, latitude, longitude) ".
> "values ('$strt1', '$street2', '$cty',
> '$state', '$zip', '$country', ".
> "'$geocode->latitude', '$geocode->longitude')";
> $connection->beginTransaction();
> $connection->exec($insertaddr);
>
> There is not other index but btree index.
> Will we modify the insert to "insert ignore" ?
>
>
>
Re: Dead lock found exception
Posted by Mingfan Lu <mi...@gmail.com>.
Yes I am using Olio 0.1
On Tue, Sep 29, 2009 at 2:21 AM, Akara Sucharitakul <
Akara.Sucharitakul@sun.com> wrote:
> Even duplicate addresses generate a new PK. I do not quite understand how
> the deadlock could happen. It looks like something is trying to lock the
> table rather than the record. This is the Olio 0.1 publicly available,
> right?
>
> -Akara
>
>
> Mingfan Lu wrote:
>
>> In my benchmark, I found that there is a dead lock exception.
>>
>> exception 'PDOException' with message 'SQLSTATE[40001]: Serialization
>> failure: 1213 Deadlock found when trying to get lock; try restarting
>> transaction' in
>> /opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php:77\nStack
>> trace:\n#0
>> /opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php(77):
>> PDO->exec('insert into ADD...')\n#1
>> /opt/faban/faban/apache-olio-php/oliophp/public_html/addPersonResult.php(79):
>> PDOConnection->exec('insert into ADD...')\n#2 {main}
>>
>> According to the source code, it throws by
>>
>> $insertaddr = "insert into ADDRESS (street1, street2, city, state, zip,
>> country, latitude, longitude) ".
>> "values ('$strt1', '$street2', '$cty', '$state',
>> '$zip', '$country', ".
>> "'$geocode->latitude', '$geocode->longitude')";
>> $connection->beginTransaction();
>> $connection->exec($insertaddr);
>>
>> There is not other index but btree index.
>> Will we modify the insert to "insert ignore" ?
>>
>
>
Re: Dead lock found exception
Posted by Akara Sucharitakul <Ak...@Sun.COM>.
Even duplicate addresses generate a new PK. I do not quite understand
how the deadlock could happen. It looks like something is trying to lock
the table rather than the record. This is the Olio 0.1 publicly
available, right?
-Akara
Mingfan Lu wrote:
> In my benchmark, I found that there is a dead lock exception.
>
> exception 'PDOException' with message 'SQLSTATE[40001]: Serialization
> failure: 1213 Deadlock found when trying to get lock; try restarting
> transaction' in
> /opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php:77\nStack
> trace:\n#0
> /opt/faban/faban/apache-olio-php/oliophp/classes/PDOConnection.php(77):
> PDO->exec('insert into ADD...')\n#1
> /opt/faban/faban/apache-olio-php/oliophp/public_html/addPersonResult.php(79):
> PDOConnection->exec('insert into ADD...')\n#2 {main}
>
> According to the source code, it throws by
>
> $insertaddr = "insert into ADDRESS (street1, street2, city, state, zip,
> country, latitude, longitude) ".
> "values ('$strt1', '$street2', '$cty', '$state',
> '$zip', '$country', ".
> "'$geocode->latitude', '$geocode->longitude')";
> $connection->beginTransaction();
> $connection->exec($insertaddr);
>
> There is not other index but btree index.
> Will we modify the insert to "insert ignore" ?