http://blog.adamcameron.me/2014/03/confusion-as-to-why-cfhtmltopdf-is-not.html
I hate to be the bring bad news, but request timeout errors are the most
difficult to track down because the error reporting on ACF usually just
points to a line that doesn't make sense. This is because ACT only
checks of the request timeout is exceeded on certain tags (not all
tags). CFloop is one of them. The error you are seeing is that it
checked the request timeout at the end of the loop. The loop itself is
NOT causing the error. For example, your request timeout may be
something like 30 seconds. At the beginning of the loop, the request
time is 29.99 and therefore hasn't timed out. At the end of the loop,
it has timed out and CF reports the loop as the error.
What you need to do is look for things that can cause the request to
take too much time:
* queries
* web services / rest requests
* cfdocument
* cfimage
* cfpdf
* file operations
* cfmail operations
We all "setArgs()" after you announce an event (internally). More than
likely -- something is causing the request to take a while and then you
are announcing another event. If you know the event name of the
request, you should be able to trace yourself through the code and see
if any of the "big" things I listed could be causing problems. In the
past, the hard I tracked down had to do with a slow SMTP server and
switching to spooling to disk instead of directly to the server fixed
the issue.
Let us know what you figure out. Sadly, I wish I could say -- oh that's
an issue with Mach-II, but alas -- there aren't any known issues with
request timeouts with Mach-II. They are almost always one of those
things I listed.
.pjf
I hate to be the bring bad news, but request timeout errors are the most
difficult to track down because the error reporting on ACF usually just
points to a line that doesn't make sense. This is because ACT only
checks of the request timeout is exceeded on certain tags (not all
tags). CFloop is one of them. The error you are seeing is that it
checked the request timeout at the end of the loop. The loop itself is
NOT causing the error. For example, your request timeout may be
something like 30 seconds. At the beginning of the loop, the request
time is 29.99 and therefore hasn't timed out. At the end of the loop,
it has timed out and CF reports the loop as the error.
What you need to do is look for things that can cause the request to
take too much time:
* queries
* web services / rest requests
* cfdocument
* cfimage
* cfpdf
* file operations
* cfmail operations
We all "setArgs()" after you announce an event (internally). More than
likely -- something is causing the request to take a while and then you
are announcing another event. If you know the event name of the
request, you should be able to trace yourself through the code and see
if any of the "big" things I listed could be causing problems. In the
past, the hard I tracked down had to do with a slow SMTP server and
switching to spooling to disk instead of directly to the server fixed
the issue.
Let us know what you figure out. Sadly, I wish I could say -- oh that's
an issue with Mach-II, but alas -- there aren't any known issues with
request timeouts with Mach-II. They are almost always one of those
things I listed.
.pjf
Comments
Post a Comment