Hi Richard,

Currently at 4971, one off the trunk revision.

The sessions have different IDs across the two threads, so I figure that's
out. Is there any other obvious gotcha's I should rule out first?

I'm kinda mystified at the moment, but it's doing it really consistently...
so hopefully will get there.

James

On 23 April 2010 13:19, Richard Brown (gmail) <[email protected]>wrote:

>  Hi James,
>
> Can you confirm which version of the code you're looking at?  (trunk?
> revision?)
>
> In addition, I would also have thought all the variables in that method are
> local to the session too ... is there any chance you've shared the session
> across more than one thread?
>
> It would be great if you could reproduce this in a test case, but I realise
> the difficulties of trying to create test cases for multi-threaded
> scenarios.
>
> Cheers,
>     Richard
>
>
>  *From:* James Crowley <[email protected]>
> *Sent:* Friday, April 23, 2010 1:09 PM
> *To:* [email protected] ; [email protected]
> *Subject:* [nhusers] Thread safety problem in
> QueryParameters.PrepareParameterTypes ?
>
> Hi guys,
>
> Are you aware of a threading issue
> within QueryParameters.PrepareParameterTypes? I've got two threads
> (operating over different sessions) that, when run starting from the same
> execution point at the start of the PrepareParameterTypes method. All works
> fine when the other thread is frozen, but when both are run at the same
> time, there are issues with the parameter locations.
>
> It's something to do with here:
>
>  while ((location < sqlParameters.Count) &&
> (sqlParameters[location].ParameterPosition != null))
> location++;
>
> in that this can actually result in location being equal to
> sqlParameters.Count (and later having an IndexOutOfRange exception being
> thrown). However, it's only happening because ParameterPosition is
> unexpectedly set. Still trying to figure out how, as all I can see are local
> variables right now.
>
> I'm still trying to pin this down exactly, but wanted to check if you were
> already aware of not?
>
> Thanks,
>
> James
>
> --
> You received this message because you are subscribed to the Google Groups
> "nhusers" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected]<nhusers%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/nhusers?hl=en.
>
>


-- 

---
James Crowley
CEO, developerFusion - the global developer community -
http://www.developerfusion.com/
CTO, TechEye - all the technology news unfit for print -
http://www.techeye.net/

linkedin: http://linkedin.com/in/jamescrowley
twitter: http://twitter.com/jamescrowley

Reply via email to