We've seen SOAP errors (below) in the logs resulting from empty URI arrays when custom modules remove all paths via hook_akamai_paths_alter(). It seems to me that the function should terminate if the paths array comes back empty after the calls to _akamai_get_all_paths().
The attached patch adds in a quick check for an empty paths array and logs the occurrence via watchdog() and returns FALSE if that occurs.
Error Clearing Akamai Cache: Exception: class com.idoox.soap.DemarshallException: Type in schema differs from type in SOAP message - expected string@http://www.w3.org/1999/XMLSchema; got ur-type@http://www.w3.org/2001/XMLSchema
| Comment | File | Size | Author |
|---|---|---|---|
| #4 | terminate_clear_if_no_paths-1312508-4.patch | 473 bytes | cuebix |
| terminate_clear_if_no_paths.patch | 893 bytes | barrett |
Comments
Comment #1
febbraro commentedFixed in D7, still needs a fix in D6
Comment #2
barrett commentedSince it still needs a fix in D6, how about applying the patch I posted and rolling a new D6?
Comment #3
barrett commentedAny chance of getting this applied for d6 so we can get an error off our logs?
Comment #4
cuebix commentedI'm running the latest version of the D7 code and I don't see the patch applied.
I also don't agree with it returning a return value of false; if no paths are supplied, the function did exactly what it was supposed to - nothing - so it should return true.
I've attached a revised patch for D7 for review.
Comment #5
barrett commentedThis is fixed in the HEAD of the 7.x-1.x branc, but a new version of the module has not been released. Since there's not a dev release, you'll have to use a checkout from git.