Unable to delete ProductPartitions (PRODUCT_PARTITION_DOES_NOT_EXIST)

38 views
Skip to first unread message

Christian H.

unread,
Feb 7, 2018, 9:18:43 AM2/7/18
to AdWords API Forum
Hi!

I'm trying to delete ProductPartitions in a test account, but I always get the error message AdGroupCriterionError.PRODUCT_PARTITION_DOES_NOT_EXIST.

I download a PRODUCT_PARTITION_REPORT for not-removed campaigns and adgroups, take AdGroupId and CriterionId and use the AdGroupCriterionService to delete the partitions.

An example request is 0005649fb55ad1d80a379d90bc0a538e.

The partitions exist (according to the ProductPartitonReport and the Web-Interface), but I'm not able to delete it.

What am I doing wrong?

Regards,

Christian

Sreelakshmi Sasidharan (AdWords API Team)

unread,
Feb 7, 2018, 1:00:38 PM2/7/18
to AdWords API Forum
Hi Christian, 

What you have explained is the correct approach to identify the product partition. To take a closer look at the issue, could you please enable logging and share the SOAP request and response logs? You can use reply privately to author while sharing the details. 

Thanks,
Sreelakshmi, AdWords API Team

Nadine Sundquist (AdWords API Team)

unread,
Feb 8, 2018, 10:03:35 AM2/8/18
to AdWords API Forum
Hello Christian,

Thanks for providing all those details. That really helped me figure out what's going on. I'm just following up on the forum, so anyone else who bumps into this in the future can be helped out as well. I noticed in your logs that the first removes were happening just fine and later it became more frequent. So, I looked at the path of your tree that was being removed. What was happening is that you were trying to remove a leaf node after you had already removed a higher node in the tree earlier in the same request. That's why the errors were happening. It was telling you that you had already removed an item further up in the tree, so the item you were trying to remove now no longer existed. Here's an example. Let's say you have:

1234       * / product type = "haus & garten" / product type = "heimtextilien" / product type = "frottierwaren" / product type = "duschtuch" / brand = "vossen" /
5678       * / product type = "haus & garten" / product type = "heimtextilien" / product type = "frottierwaren" / product type = "duschtuch" / brand = "vossen" / item id = *

You remove the first one 1234. Then, you try to remove the second one 5678. The second one would error because the the first remove call would have wiped out the second one already. Trees are a tricky business. Many of our client libraries have utilities to handle these trees because of odd situations like this one.

Cheers,
Nadine, AdWords API Team

Christian H.

unread,
Feb 8, 2018, 11:01:39 AM2/8/18
to AdWords API Forum
Hello Nadine,

thanks for your effort and your solution!

I already created and deleted product partitions in past, but I never had these problems before. I never recognized that the order in the request was relevant, I always thought it's sufficent to keep a consistent state after a request.

Therefore my question: was something changed on product partition's server side or have I just been lucky by not running into these problems so far? (I changed my task collector from List to Set so it's absolutely possible, that request's  operation order changed)

Regards,

Christian
Reply all
Reply to author
Forward
0 new messages