I have done some preliminary testing and this appears to have sorted
things out.

Thanks, appreciated

On Sep 7, 2:05 pm, Craig Neuwirt <[email protected]> wrote:
> I just committed an update that properly uses CloseTimeout overrides.  
> Otherwise, the normal Close is used.  This should let Daniel get by his 
> problem.
>
> -craig
>
> On Sep 6, 2010, at 6:42 PM, John Simons wrote:
>
>
>
> > Craig,
>
> > Did u have time to have  a look at this yet?
> > Any resolution?
>
> > Cheers
> > John
>
> > From: Daniel Richardson <[email protected]>
> > To: Castle Project Users <[email protected]>
> > Cc: Craig Neuwirt <[email protected]>
> > Sent: Wed, 1 September, 2010 3:41:38 PM
> > Subject: Re: WcfIntegration - timeout exception?
>
> > It didn't like my zip attachment. Try here (also sent an email)...
> >http://cid-2d0aa55ad987c518.office.live.com/browse.aspx/.Public/Code?...
>
> > On Aug 31, 9:29 pm, Craig Neuwirt <[email protected]> wrote:
> > > Didn't get email yet.  Can you send it again
>
> > > On Aug 31, 2010, at 8:15 AM, Daniel Richardson wrote:
>
> > > > I have sent an email. Many thanks for looking into it.
>
> > > > On Aug 31, 8:03 pm, Craig Neuwirt <[email protected]> wrote:
> > > >> Can you send me sample to demonstrate?
>
> > > >> On Aug 30, 2010, at 11:12 PM, Daniel Richardson wrote:
>
> > > >>> Craig,
>
> > > >>> Yes, that's the code and the channel is aborted. This however must
> > > >>> leave the session attached/active (or something) because after the
> > > >>> client then makes 10th consecutive call the next call times out due to
> > > >>> exceeding maxConcurrentSessions.
> > > >>> The PerformInvocation method in WcfRemotingInterceptor then throws a
> > > >>> TimeoutException as the service is no longer responding due to no more
> > > >>> sessions being available. A client call cannot be made then until a
> > > >>> session times out on the service freeing one up.
> > > >>> I can send a simple solution to demonstrate the issue.
>
> > > >>> Thanks Daniel
>
> > > >>> On Aug 30, 8:03 pm, Craig Neuwirt <[email protected]> wrote:
> > > >>>> Hey Daniel,
>
> > > >>>>   Isn't the code in question something like
>
> > > >>>>                                         try
> > > >>>>                                         {
> > > >>>>                                                 if (timeout.HasValue)
> > > >>>>                                                 {
> > > >>>>                                                         
> > > >>>> comm.Close(timeout.Value);
> > > >>>>                                                 }
> > > >>>>                                                 else
> > > >>>>                                                 {
> > > >>>>                                                         comm.Close();
> > > >>>>                                                 }
> > > >>>>                                         }
> > > >>>>                                         catch
> > > >>>>                                         {
> > > >>>>                                                 comm.Abort();
> > > >>>>                                         }
>
> > > >>>> If an exception occurs, the channel should be aborted.  Is there 
> > > >>>> something else that needs to be
> > > >>>> done to close it properly?
>
> > > >>>> thanks,
> > > >>>>  craig
>
> > > >>>> On Aug 30, 2010, at 1:15 AM, Daniel Richardson wrote:
>
> > > >>>>> True, it isn't bubbling up but this means the communication channel
> > > >>>>> isn't being closed properly and aborted.
> > > >>>>> This in itself wouldn't be too much of a problem but if you have a
> > > >>>>> default WCF configuration then for a service the
> > > >>>>> maxConcurrentSessions="10". If you then make the same service call
> > > >>>>> repeatedly in succession then after the 10th call the WCF service 
> > > >>>>> then
> > > >>>>> times out due to all the sessions being taken up, due to the channel
> > > >>>>> not being successfully released.
> > > >>>>> This then is a problem. The maxConcurrentSessions can be increased 
> > > >>>>> but
> > > >>>>> this isn't correcting the issue.
>
> > > >>>>> On Aug 27, 7:37 pm, Craig Neuwirt <[email protected]> wrote:
> > > >>>>>> Zero is chosen to avoid excessive waiting on disposal.  It is in a 
> > > >>>>>> try/catch block so it shouldn't be bubbling up.
>
> > > >>>>>> On Aug 27, 2010, at 4:49 AM, Daniel Richardson wrote:
>
> > > >>>>>>> The WcfChannelHolder class though doesn't appear to use this 
> > > >>>>>>> value.
> > > >>>>>>> Both the RefreshChannel and Dispose method are hardcoded to use
> > > >>>>>>> TimeSpan.Zero when calling WcfUtils.ReleaseCommunicationObject??
>
> > > >>>>>>> On Aug 27, 1:07 pm, John Simons <[email protected]> 
> > > >>>>>>> wrote:
> > > >>>>>>>> Hi Daniel,
>
> > > >>>>>>>> When you add the wcffacility to the container you can specify 
> > > >>>>>>>> the timeout:
> > > >>>>>>>> container.AddFacility<WcfFacility>(f => f.CloseTimeout = 
> > > >>>>>>>> TimeSpan.Zero)
>
> > > >>>>>>>> Cheers
> > > >>>>>>>> John
>
> > > >>>>>>>> ________________________________
> > > >>>>>>>> From: Daniel Richardson <[email protected]>
> > > >>>>>>>> To: Castle Project Users <[email protected]>
> > > >>>>>>>> Sent: Fri, 27 August, 2010 2:28:53 PM
> > > >>>>>>>> Subject: WcfIntegration - timeout exception?
>
> > > >>>>>>>> Hi,
>
> > > >>>>>>>> I am using the WcfIntegration client side to instantiate my 
> > > >>>>>>>> services.
> > > >>>>>>>> The lifestyle is transient (this is a requirement of my design) 
> > > >>>>>>>> so I
> > > >>>>>>>> understand that I need to manage the lifecycle of the 
> > > >>>>>>>> components. I am
> > > >>>>>>>> using the below code to instantiate and call my service (where 
> > > >>>>>>>> the
> > > >>>>>>>> ComponentContainer is a wrapper around IWindsorContainer).
>
> > > >>>>>>>> This however results in a call to the Dispose method on
> > > >>>>>>>> WcfChannelHolder, which is throwing an exception due to the call 
> > > >>>>>>>> to
> > > >>>>>>>> release the communication object...
> > > >>>>>>>> WcfUtils.ReleaseCommunicationObject(Channel, TimeSpan.Zero);
> > > >>>>>>>> This results in a System.TimeoutException when attempting to 
> > > >>>>>>>> close the
> > > >>>>>>>> channel.
>
> > > >>>>>>>> Why is the timeout set to zero? Is anyone else encountering this
> > > >>>>>>>> issue? Can this be made configurable somehow?
>
> > > >>>>>>>>     var search = ComponentContainer.Resolve<ISearchService>();
> > > >>>>>>>>     try
> > > >>>>>>>>     {
> > > >>>>>>>>         var result = search.PolicySearch(new PolicySearchRequest
> > > >>>>>>>>         {
> > > >>>>>>>>             RiskReference = "abc"
> > > >>>>>>>>         });
> > > >>>>>>>>         System.Console.WriteLine("count: " + result.ResultCount);
> > > >>>>>>>>     }
> > > >>>>>>>>     finally
> > > >>>>>>>>     {
> > > >>>>>>>>         ComponentContainer.Release(search);
> > > >>>>>>>>     }
>
> > > >>>>>>>> Thanks
>
> > > >>>>>>>> --
> > > >>>>>>>> You received this message because you are subscribed to the 
> > > >>>>>>>> Google Groups
> > > >>>>>>>> "Castle Project Users" group.
> > > >>>>>>>> To post to this group, send email to 
> > > >>>>>>>> [email protected].
> > > >>>>>>>> To unsubscribe from this group, send email to
> > > >>>>>>>> [email protected].
> > > >>>>>>>> For more options, visit this group 
> > > >>>>>>>> athttp://groups.google.com/group/castle-project-users?hl=en.
>
> > > >>>>>>> --
> > > >>>>>>> You received this message because you are subscribed to the 
> > > >>>>>>> Google Groups "Castle Project Users" group.
> > > >>>>>>> To post to this group, send email to 
> > > >>>>>>> [email protected].
> > > >>>>>>> To unsubscribe from this group, send email to 
> > > >>>>>>> [email protected].
> > > >>>>>>> For more options, visit this group 
> > > >>>>>>> athttp://groups.google.com/group/castle-project-users?hl=en.-Hidequoted...-
>
> > > >>>>>> - Show quoted text -
>
> > > >>>>> --
> > > >>>>> You received this message because you are subscribed to the Google 
> > > >>>>> Groups "Castle Project Users" group.
> > > >>>>> To post to this group, send email to 
> > > >>>>> [email protected].
> > > >>>>> To unsubscribe from this group, send email to 
> > > >>>>> [email protected].
> > > >>>>> For more options, visit this group 
> > > >>>>> athttp://groups.google.com/group/castle-project-users?hl=en.-Hidequotedtext
> > > >>>>>  -
>
> > > >>>> - Show quoted text -
>
> > > >>> --
> > > >>> You received this message because you are subscribed to the Google 
> > > >>> Groups "Castle Project Users" group.
> > > >>> To post to this group, send email to 
> > > >>> [email protected].
> > > >>> To unsubscribe from this group, send email to 
> > > >>> [email protected].
> > > >>> For more options, visit this group 
> > > >>> athttp://groups.google.com/group/castle-project-users?hl=en.-Hidequoted
> > > >>>  text -
>
> > > >> - Show quoted text -
>
> > > > --
> > > > You received this message because you are subscribed to the Google 
> > > > Groups "Castle Project Users" group.
> > > > To post to this group, send email to 
> > > > [email protected].
> > > > To unsubscribe from this group, send email to 
> > > > [email protected].
> > > > For more options, visit this group 
> > > > athttp://groups.google.com/group/castle-project-users?hl=en.-Hide 
> > > > quoted text -
>
> > > - Show quoted text -
>
> > --
> > You received this message because you are subscribed to the Google Groups 
> > "Castle Project Users" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to 
> > [email protected].
> > For more options, visit this group 
> > athttp://groups.google.com/group/castle-project-users?hl=en.
>
> > --
> > You received this message because you are subscribed to the Google Groups 
> > "Castle Project Users" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to 
> > [email protected].
> > For more options, visit this group 
> > athttp://groups.google.com/group/castle-project-users?hl=en.- Hide quoted 
> > text -
>
> - Show quoted text -

-- 
You received this message because you are subscribed to the Google Groups 
"Castle Project Users" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-users?hl=en.

Reply via email to