Hi Chandra, Unfortunately there is no exact time that will prevent these types of errors of coming up from time to time. Your best bet is to:
1) Batch your updates together in fewer requests (http:// adwordsapi.blogspot.com/2010/03/discover-v2009-do-more-with- mutate.html) 2) Catch this type of error, pause for a few seconds, and try again. Best, - Eric On Mar 24, 9:55 am, Chandra Bhandaru <[email protected]> wrote: > 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 > > > > <[email protected]> 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)" > > > <[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.
