Eric,

Is there recommended wait between two same ad group or campaign?

Would say a 5 sec delay suffice?

Chandra

On Mar 23, 12:12 pm, AdWords API Advisor
<adwordsapiadvi...@google.com> wrote:
> 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)"
>
> <pete.lavet...@gmail.com> 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 <sem...@gmail.com> 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 adwords-api@googlegroups.com
To unsubscribe from this group, send email to
adwords-api+unsubscr...@googlegroups.com
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