Skip to content
This repository has been archived by the owner on Jun 25, 2020. It is now read-only.

Sporadically crashes on "Taste" caused by 'Cannot access a disposed object.' #147

Closed
jhovgaard opened this issue Jun 26, 2013 · 16 comments
Closed

Comments

@jhovgaard
Copy link

I haven't been able to figure out what causes this to happen. I can easly be recreated by simply sending about 100 requests in short a time (keep pressing F5 ;-)) I've attached the full stacktrace. When restarting "taste" everything works again.

Stacktrace

mnrg2zmfxm_733couknlzfufmfpd43a66lyqfq-2c3g

@markvantilburg
Copy link
Contributor

This still happens in the current version. I tried with the debugger attached but visual studio was not able to show what object it tries to access.

@markvantilburg
Copy link
Contributor

Call stack according to intellitrace

Pretzel.exe!Firefly.Utils.SocketWrapper.Shutdown(System.Net.Sockets.SocketShutdown how = {unknown}) C#
Pretzel.exe!<>c__DisplayClass9.AnonymousMethod() C#
Pretzel.exe!<>c__DisplayClass6.AnonymousMethod() C#
Pretzel.exe!Firefly.Utils.SocketSender.SetStateImmediate() C#
Pretzel.exe!Firefly.Utils.SocketSender.DoSendCompleted() C#
Pretzel.exe!Firefly.Utils.SocketSender.SocketEventCompleted() C#
Pretzel.exe!Firefly.Utils.SocketEventWrapper.SocketEventCompleted(object sender = {unknown}, System.Net.Sockets.SocketAsyncEventArgs e = {unknown}) C#

@laedit
Copy link
Member

laedit commented Mar 31, 2015

This is coming from the embedded server which is no longer supported...
We need to replace it but I haven't found any equivalent.

@markvantilburg
Copy link
Contributor

Would it be easy to replace the server with IIS Express (if the user has that installed?)

@markvantilburg
Copy link
Contributor

It cannot be embedded currently but we could suggest the user to install it, and use it if it's installed.

And for example use a command line parameter to enable the use of iisexpress where taste creates an on disk folder and points iis express to there.

@laedit
Copy link
Member

laedit commented Apr 23, 2015

I don't think having a dependency on a thing as heavy and complex as IIS Express is a good thing.
Specially since the issue here is not blocking.
I think it should be best to replace Firefly with maybe NHttp or juste HttpListener.

@JakeGinnivan
Copy link
Member

https://www.nuget.org/packages/Nancy.Hosting.Self is another option suggested by twitter

@laedit
Copy link
Member

laedit commented Apr 23, 2015

I don't think we need the specificity of Nancy Hosting, we can just use Microsoft.Owin.Host.HttpListener.

@SimonCropp
Copy link

i have lots of love for nancy. perhaps a little too large for this usage, although perhaps that is insignificant compared to getting something stable and well supported in

@damianh
Copy link

damianh commented Apr 24, 2015

👎 for depending on IIS.

Firefly http server is well dead. NHttp doesn't support owin and looks old too.

Use Microsoft.Owin.Host.HttpListener or Nowin. An example

@pysco68
Copy link

pysco68 commented Apr 24, 2015

Just saw the tweet for this issue. I'll recommend Nowin. We use it in five bigger scale intranet applications. The greatest point is support for web sockets on any platform. Plus its really fast (10000 concurrent requests per second are doable as long as the business logic is fast - on a single process)

@damianh
Copy link

damianh commented Apr 24, 2015

Also, since Nowin doesn't depend on Http.sys, you don't have to fup around with Http ACLs

@laedit
Copy link
Member

laedit commented Apr 24, 2015

Thanks for the advices, I think we'll go with Nowin.
@markvantilburg I don't have the time to work on this right now, but a PR is welcome 😃

@markvantilburg
Copy link
Contributor

Cannot get it to crash anymore after the change of #298

@markvantilburg
Copy link
Contributor

Maybe #102 can also be closed with the fix of #298

@laedit
Copy link
Member

laedit commented Feb 9, 2016

Thanks for the update.

@laedit laedit closed this as completed Feb 9, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

7 participants