Hi,

The most common causes of this error are:

- Two threads working on the same account at the same time.
- Two updates to the same ad group or campaign in short succession.

In both cases the recommended reaction is to wait for a few seconds
and try the request again.

Best,
- Eric Koleda, AdWords API Team

On Mar 23, 8:27 am, "Pete Lavetsky (AdWords API Guru)"
<[email protected]> wrote:
> We used to get this when we tried running two mutate operations
> simultaneously on the same account ... could be any mix of
> services ... Campaign + AdGroup, Keyword + Keyword ... etc
>
> Pete
>
> On Mar 22, 12:58 pm, SEM <[email protected]> wrote:
>
>
>
> > Hi,
>
> > We are seeing this API error being thrown many times for some of our
> > clients with
> > com.google.api.adwords.cm.AdGroupCriterionServiceSoapBindingStub.mutate()
> > API call while trying to update ad group criteria (keywords). We are
> > using Google Adwords v200909 API.
>
> > Please let us know what is the cause for this error.
>
> > Thanks,
> > semdev
>
> > Error Stacktrace:
> > -----------------
> > AxisFault
> >  faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server
> >  faultSubcode:
> >  faultString: DatabaseError.CONCURRENT_MODIFICATION @
> >  faultActor:
> >  faultNode:
> >  faultDetail:
> >         {https://adwords.google.com/api/adwords/cm/v200909}
> > ApiExceptionFault:<message>DatabaseError.CONCURRENT_MODIFICATION @ </
> > message><ApplicationException.Type>ApiException</
> > ApplicationException.Type><errors xmlns:xsi="http://www.w3.org/2001/
> > XMLSchema-instance" 
> > xsi:type="DatabaseError"><fieldPath/><trigger/><ApiError.Type>DatabaseError 
> > </
>
> > ApiError.Type><reason>CONCURRENT_MODIFICATION</reason></errors>
>
> > DatabaseError.CONCURRENT_MODIFICATION @
> >         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> > Method)
> >         at
> > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAcce 
> > ssorImpl.java:
> > 39)
> >         at
> > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstru 
> > ctorAccessorImpl.java:
> > 27)
> >         at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
> >         at java.lang.Class.newInstance0(Class.java:355)
> >         at java.lang.Class.newInstance(Class.java:308)
> >         at
> > org.apache.axis.encoding.ser.BeanDeserializer.<init>(BeanDeserializer.java:
> > 104)
> >         at
> > org.apache.axis.encoding.ser.BeanDeserializer.<init>(BeanDeserializer.java:
> > 90)
> >         at
> > com.google.api.adwords.cm.ApiException_Helper.getDeserializer(ApiException_ 
> > Helper.java:
> > 53)
> >         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >         at
> > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:
> > 39)
> >         at
> > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp 
> > l.java:
> > 25)
> >         at java.lang.reflect.Method.invoke(Method.java:597)
> >         at
> > org.apache.axis.encoding.ser.BaseDeserializerFactory.getSpecialized(BaseDes 
> > erializerFactory.java:
> > 154)
> >         at
> > org.apache.axis.encoding.ser.BaseDeserializerFactory.getDeserializerAs(Base 
> > DeserializerFactory.java:
> > 84)
> >         at
> > org.apache.axis.encoding.DeserializationContext.getDeserializer(Deserializa 
> > tionContext.java:
> > 464)
> >         at
> > org.apache.axis.encoding.DeserializationContext.getDeserializerForType(Dese 
> > rializationContext.java:
> > 547)
> >         at
> > org.apache.axis.message.SOAPFaultDetailsBuilder.onStartChild(SOAPFaultDetai 
> > lsBuilder.java:
> > 157)
> >         at
> > org.apache.axis.encoding.DeserializationContext.startElement(Deserializatio 
> > nContext.java:
> > 1035)
> >         at
> > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(A 
> > bstractSAXParser.java:
> > 501)
> >         at
> > com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartE 
> > lement(XMLNSDocumentScannerImpl.java:
> > 400)
> >         at
> > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl
> > $FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2747)
> >         at
> > com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocu 
> > mentScannerImpl.java:
> > 648)
> >         at
> > com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNS 
> > DocumentScannerImpl.java:
> > 140)
> >         at
> > com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scan 
> > Document(XMLDocumentFragmentScannerImpl.java:
> > 510)
> >         at
> > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Co 
> > nfiguration.java:
> > 807)
> >         at
> > com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Co 
> > nfiguration.java:
> > 737)
> >         at
> > com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:
> > 107)
> >         at
> > com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Abstract 
> > SAXParser.java:
> > 1205)
> >         at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl
> > $JAXPSAXParser.parse(SAXParserImpl.java:522)
> >         at javax.xml.parsers.SAXParser.parse(SAXParser.java:395)
> >         at
> > org.apache.axis.encoding.DeserializationContext.parse(DeserializationContex 
> > t.java:
> > 227)
> >         at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
> >         at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
> >         at
> > org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandCh 
> > ecker.java:
> > 62)
> >         at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
> >         at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
> >         at org.apache.axis.client.Call.invoke(Call.java:2767)
> >         at org.apache.axis.client.Call.invoke(Call.java:2443)
> >         at org.apache.axis.client.Call.invoke(Call.java:2366)
> >         at org.apache.axis.client.Call.invoke(Call.java:1812)
> >         at
> > com.google.api.adwords.cm.AdGroupCriterionServiceSoapBindingStub.mutate(AdG 
> > roupCriterionServiceSoapBindingStub.java:
> > 910)

-- 
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~
Have you migrated to v200909 yet?
The v13 sunset is on April 22, 2010.

Also find us on our blog and discussion group:
http://adwordsapi.blogspot.com
http://groups.google.com/group/adwords-api
=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~=~

You received this message because you are subscribed to the Google
Groups "AdWords API Forum" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/adwords-api?hl=en

To unsubscribe from this group, send email to 
adwords-api+unsubscribegooglegroups.com or reply to this email with the words 
"REMOVE ME" as the subject.

Reply via email to