Daniel,
On 09/08/2010 04:20 AM, Daniel-Constantin Mierla wrote:
have you added some xlogs to see where it ends
the execution for that
case?
If you can run the config with devel version, then load debugger
module and enable execution trace.
I have found the problem. It was a bug on my side that stemmed from
my failure to correctly understand the documentation for
t_lookup_request(). I believe it is written in an ambiguous way, even
though the mistake is surely mine.
The docs say:
Checks if a transaction exists. Returns a positive value if so,
negative otherwise. Most likely you will not want to use it, as a
typical application of a look-up is to introduce a new transaction
if none was found. However this is safely (atomically) done using
t_newtran."
To me, this contains the implicit suggestion that a transaction will
be created by calling t_lookup_request() if it does not already exist.
I was in fact quite mistaken in this and took some measures that
resulted in bizarre outcomes.
you can improve the docs if not clear, git is yours :-)
Cheers,
Daniel
--
Daniel-Constantin Mierla