<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>SuperWebSocket Issue Tracker Rss Feed</title><link>http://superwebsocket.codeplex.com/workitem/list/basic</link><description>SuperWebSocket Issue Tracker Rss Description</description><item><title>Commented Issue: Newest SuperWebSocket Kills Computer [12403]</title><link>http://superwebsocket.codeplex.com/workitem/12403</link><description>Upgrading from v0.6 to v0.7 causes CPU usage to go to 100&amp;#37;. This appears to be because the NP Pool is filling up with data and thrashing the computer. We have &amp;#126;3000 people that connect from a very high latency, this seems to cause the crash to happen faster &amp;#40;in our production environment&amp;#41;. However, even in our development environment the crash will happen after about a week of constant running. &lt;br /&gt;&lt;br /&gt;No other code was changed other than changing SuperWebSocket from 0.6 to 0.7, so I am sure that this is the problem. The issue is immediately resolved after downgrading to 0.6. However, this is not a long term solution because v0.6 appears to have a steady memory leak. &lt;br /&gt;Comments: Could you try the PushTestServer in the latest source code&amp;#58; &amp;#10;https&amp;#58;&amp;#47;&amp;#47;superwebsocket.codeplex.com&amp;#47;SourceControl&amp;#47;latest&amp;#35;PerformanceTest&amp;#47;PushTestServer&amp;#47;PushTestAppServer.cs&amp;#10;&amp;#10;Server&amp;#58; PushTestServer&amp;#10;Client&amp;#58; PushTestClient&amp;#10;&amp;#10;The server and client are implemented similar with the CrashServer and CrashClient.&amp;#10;&amp;#10;It doesn&amp;#39;t have the issue which can be produced by your CrashServer. I am not sure it is caused by the latest changes or some different code.</description><author>kerryjiang</author><pubDate>Sun, 19 May 2013 11:31:18 GMT</pubDate><guid isPermaLink="false">Commented Issue: Newest SuperWebSocket Kills Computer [12403] 20130519113118A</guid></item><item><title>Commented Issue: Newest SuperWebSocket Kills Computer [12403]</title><link>http://superwebsocket.codeplex.com/workitem/12403</link><description>Upgrading from v0.6 to v0.7 causes CPU usage to go to 100&amp;#37;. This appears to be because the NP Pool is filling up with data and thrashing the computer. We have &amp;#126;3000 people that connect from a very high latency, this seems to cause the crash to happen faster &amp;#40;in our production environment&amp;#41;. However, even in our development environment the crash will happen after about a week of constant running. &lt;br /&gt;&lt;br /&gt;No other code was changed other than changing SuperWebSocket from 0.6 to 0.7, so I am sure that this is the problem. The issue is immediately resolved after downgrading to 0.6. However, this is not a long term solution because v0.6 appears to have a steady memory leak. &lt;br /&gt;Comments: Ok, I &amp;#39;ll track this issue.</description><author>kerryjiang</author><pubDate>Sun, 19 May 2013 02:40:09 GMT</pubDate><guid isPermaLink="false">Commented Issue: Newest SuperWebSocket Kills Computer [12403] 20130519024009A</guid></item><item><title>Commented Issue: Newest SuperWebSocket Kills Computer [12403]</title><link>http://superwebsocket.codeplex.com/workitem/12403</link><description>Upgrading from v0.6 to v0.7 causes CPU usage to go to 100&amp;#37;. This appears to be because the NP Pool is filling up with data and thrashing the computer. We have &amp;#126;3000 people that connect from a very high latency, this seems to cause the crash to happen faster &amp;#40;in our production environment&amp;#41;. However, even in our development environment the crash will happen after about a week of constant running. &lt;br /&gt;&lt;br /&gt;No other code was changed other than changing SuperWebSocket from 0.6 to 0.7, so I am sure that this is the problem. The issue is immediately resolved after downgrading to 0.6. However, this is not a long term solution because v0.6 appears to have a steady memory leak. &lt;br /&gt;Comments: I did some testing using the crash test code that adotout provided. However, the non-paged pool memory issue happens with both versions of SuperWebSocket, so it doesn&amp;#39;t seem like that particular issue is anything new. I wonder if something else may be causing the problems that adotout was experiencing.</description><author>ziebart60</author><pubDate>Sat, 18 May 2013 21:01:51 GMT</pubDate><guid isPermaLink="false">Commented Issue: Newest SuperWebSocket Kills Computer [12403] 20130518090151P</guid></item><item><title>Commented Issue: Newest SuperWebSocket Kills Computer [12403]</title><link>http://superwebsocket.codeplex.com/workitem/12403</link><description>Upgrading from v0.6 to v0.7 causes CPU usage to go to 100&amp;#37;. This appears to be because the NP Pool is filling up with data and thrashing the computer. We have &amp;#126;3000 people that connect from a very high latency, this seems to cause the crash to happen faster &amp;#40;in our production environment&amp;#41;. However, even in our development environment the crash will happen after about a week of constant running. &lt;br /&gt;&lt;br /&gt;No other code was changed other than changing SuperWebSocket from 0.6 to 0.7, so I am sure that this is the problem. The issue is immediately resolved after downgrading to 0.6. However, this is not a long term solution because v0.6 appears to have a steady memory leak. &lt;br /&gt;Comments: Hi,&amp;#10;&amp;#10;I am also using SuperWebSocket in a production project. Has there been any update on this issue&amp;#63; I have also noticed the small, steady memory leak in 0.6, so it would be great to upgrade if this issue is resolved.&amp;#10;&amp;#10;Thanks</description><author>ziebart60</author><pubDate>Sat, 18 May 2013 16:38:06 GMT</pubDate><guid isPermaLink="false">Commented Issue: Newest SuperWebSocket Kills Computer [12403] 20130518043806P</guid></item><item><title>Commented Unassigned: Can SuperSocket Server have SuperWebSocket listener as well? [12407]</title><link>http://superwebsocket.codeplex.com/workitem/12407</link><description>Hello,&lt;br /&gt;I have developed a SuperSocket Server which will run as a Service on a Server.&lt;br /&gt;It already accepts connections to TCP Clients.&lt;br /&gt;&lt;br /&gt;Now I would like to log in to the Service using a web browser to issue some commands to the clients that are connected.&lt;br /&gt;It seem like using SuperWebSockets would work for this.&lt;br /&gt;Would I be able to add a listener to my SuperSocket server, which uses the SuperWebSockets connection&amp;#63;&lt;br /&gt;&lt;br /&gt;I am new to .NET and C&amp;#35;, and web programming in general. I have done lots of Real Time C&amp;#43;&amp;#43;&amp;#47;C Unix programming. So any tips are appreciated. &lt;br /&gt;&lt;br /&gt;If SuperWebSockets are the way to go, are there any good examples of this type of implementation&amp;#63;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Thanks,&lt;br /&gt;Comments: I am sorry, I accidentally made this an issue, when I meant to make it a new discussion.&amp;#13;&amp;#10;If I cannot delete it, the admin can feel free to delete.&amp;#13;&amp;#10;I will repost in Discussions.&amp;#13;&amp;#10;</description><author>ik606</author><pubDate>Mon, 08 Apr 2013 00:34:10 GMT</pubDate><guid isPermaLink="false">Commented Unassigned: Can SuperSocket Server have SuperWebSocket listener as well? [12407] 20130408123410A</guid></item><item><title>Edited Unassigned: Can SuperSocket Server have SuperWebSocket listener as well? [12407]</title><link>http://superwebsocket.codeplex.com/workitem/12407</link><description>Hello,&lt;br /&gt;I have developed a SuperSocket Server which will run as a Service on a Server.&lt;br /&gt;It already accepts connections to TCP Clients.&lt;br /&gt;&lt;br /&gt;Now I would like to log in to the Service using a web browser to issue some commands to the clients that are connected.&lt;br /&gt;It seem like using SuperWebSockets would work for this.&lt;br /&gt;Would I be able to add a listener to my SuperSocket server, which uses the SuperWebSockets connection&amp;#63;&lt;br /&gt;&lt;br /&gt;I am new to .NET and C&amp;#35;, and web programming in general. I have done lots of Real Time C&amp;#43;&amp;#43;&amp;#47;C Unix programming. So any tips are appreciated. &lt;br /&gt;&lt;br /&gt;If SuperWebSockets are the way to go, are there any good examples of this type of implementation&amp;#63;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Thanks,&lt;br /&gt;</description><author>ik606</author><pubDate>Mon, 08 Apr 2013 00:34:10 GMT</pubDate><guid isPermaLink="false">Edited Unassigned: Can SuperSocket Server have SuperWebSocket listener as well? [12407] 20130408123410A</guid></item><item><title>Created Unassigned: Can SuperSocket Server have SuperWebSocket listener as well? [12407]</title><link>http://superwebsocket.codeplex.com/workitem/12407</link><description>Hello,&lt;br /&gt;I have developed a SuperSocket Server which will run as a Service on a Server.&lt;br /&gt;It already accepts connections to TCP Clients.&lt;br /&gt;&lt;br /&gt;Now I would like to log in to the Service using a web browser to issue some commands to the clients that are connected.&lt;br /&gt;It seem like using SuperWebSockets would work for this.&lt;br /&gt;Would I be able to add a listener to my SuperSocket server, which uses the SuperWebSockets connection&amp;#63;&lt;br /&gt;&lt;br /&gt;I am new to .NET and C&amp;#35;, and web programming in general. I have done lots of Real Time C&amp;#43;&amp;#43;&amp;#47;C Unix programming. So any tips are appreciated. &lt;br /&gt;&lt;br /&gt;If SuperWebSockets are the way to go, are there any good examples of this type of implementation&amp;#63;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Thanks,&lt;br /&gt;</description><author>ik606</author><pubDate>Mon, 08 Apr 2013 00:25:36 GMT</pubDate><guid isPermaLink="false">Created Unassigned: Can SuperSocket Server have SuperWebSocket listener as well? [12407] 20130408122536A</guid></item><item><title>Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406]</title><link>http://superwebsocket.codeplex.com/workitem/12406</link><description>First, let me describe my scenario&amp;#58;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m developing a real-time intranet where users will connect through web sockets to a high port &amp;#40;let&amp;#39;s say 9999&amp;#41;, using Flash to emulate web sockets in IE &amp;#60; 10 or, if it fails, connect though SignalR.&lt;br /&gt;&lt;br /&gt;There are companies that doesn&amp;#39;t like to open ports to the internet, so I can convince them to open the 9999, but not the 843.&lt;br /&gt;&lt;br /&gt;When flash connects to a socket, it first goes to port 843 to request the security policy file. The FlashSecurityPolicyServer works fine. BUT, if port 843 is unavailable or unresponsive, Flash asks the same to the port it is connecting &amp;#40;9999&amp;#41;.&lt;br /&gt;&lt;br /&gt;The problem is that SuperWebSocket will not respond to this request.&lt;br /&gt;&lt;br /&gt;It would be nice if there is some way to inject the flash security policy not only in SuperWebSocket, but in SuperSocket itself, allowing all clients connecting with flash to connect even if port 843 is closed.&lt;br /&gt;Comments: No, you cannot. One port only can be used for one purpose.</description><author>kerryjiang</author><pubDate>Sun, 31 Mar 2013 17:31:10 GMT</pubDate><guid isPermaLink="false">Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406] 20130331053110P</guid></item><item><title>Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406]</title><link>http://superwebsocket.codeplex.com/workitem/12406</link><description>First, let me describe my scenario&amp;#58;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m developing a real-time intranet where users will connect through web sockets to a high port &amp;#40;let&amp;#39;s say 9999&amp;#41;, using Flash to emulate web sockets in IE &amp;#60; 10 or, if it fails, connect though SignalR.&lt;br /&gt;&lt;br /&gt;There are companies that doesn&amp;#39;t like to open ports to the internet, so I can convince them to open the 9999, but not the 843.&lt;br /&gt;&lt;br /&gt;When flash connects to a socket, it first goes to port 843 to request the security policy file. The FlashSecurityPolicyServer works fine. BUT, if port 843 is unavailable or unresponsive, Flash asks the same to the port it is connecting &amp;#40;9999&amp;#41;.&lt;br /&gt;&lt;br /&gt;The problem is that SuperWebSocket will not respond to this request.&lt;br /&gt;&lt;br /&gt;It would be nice if there is some way to inject the flash security policy not only in SuperWebSocket, but in SuperSocket itself, allowing all clients connecting with flash to connect even if port 843 is closed.&lt;br /&gt;Comments: To be clearer&amp;#58;&amp;#10;&amp;#10;My costumer has opened only port 9999 to the internet &amp;#40;which is my WebSocket&amp;#41;.&amp;#10;&amp;#10;Flash will request the security file on port 843 &amp;#40;which is closed&amp;#41;. When this fails, it will request in port 9999 &amp;#40;the flash works this way&amp;#58; first try on 843, then try on the port we&amp;#39;re trying to connect&amp;#41;.&amp;#10;&amp;#10;9999 IS WebSocket, but flash will send a &amp;#60;request-policy-something&amp;#47;&amp;#62; on this port if can&amp;#39;t reach 843, understood&amp;#63; &amp;#61;&amp;#41;</description><author>JCKodel</author><pubDate>Sun, 31 Mar 2013 14:37:32 GMT</pubDate><guid isPermaLink="false">Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406] 20130331023732P</guid></item><item><title>Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406]</title><link>http://superwebsocket.codeplex.com/workitem/12406</link><description>First, let me describe my scenario&amp;#58;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m developing a real-time intranet where users will connect through web sockets to a high port &amp;#40;let&amp;#39;s say 9999&amp;#41;, using Flash to emulate web sockets in IE &amp;#60; 10 or, if it fails, connect though SignalR.&lt;br /&gt;&lt;br /&gt;There are companies that doesn&amp;#39;t like to open ports to the internet, so I can convince them to open the 9999, but not the 843.&lt;br /&gt;&lt;br /&gt;When flash connects to a socket, it first goes to port 843 to request the security policy file. The FlashSecurityPolicyServer works fine. BUT, if port 843 is unavailable or unresponsive, Flash asks the same to the port it is connecting &amp;#40;9999&amp;#41;.&lt;br /&gt;&lt;br /&gt;The problem is that SuperWebSocket will not respond to this request.&lt;br /&gt;&lt;br /&gt;It would be nice if there is some way to inject the flash security policy not only in SuperWebSocket, but in SuperSocket itself, allowing all clients connecting with flash to connect even if port 843 is closed.&lt;br /&gt;Comments: I cannot understand you now. Do you want 9999 work as a policy server port or a websocket server port&amp;#63;&amp;#10;&amp;#10;Either SuperSocket or SuperWebSocket support multiple listeners, they have same format configuration files.&amp;#10;</description><author>kerryjiang</author><pubDate>Fri, 29 Mar 2013 02:49:11 GMT</pubDate><guid isPermaLink="false">Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406] 20130329024911A</guid></item><item><title>Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406]</title><link>http://superwebsocket.codeplex.com/workitem/12406</link><description>First, let me describe my scenario&amp;#58;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m developing a real-time intranet where users will connect through web sockets to a high port &amp;#40;let&amp;#39;s say 9999&amp;#41;, using Flash to emulate web sockets in IE &amp;#60; 10 or, if it fails, connect though SignalR.&lt;br /&gt;&lt;br /&gt;There are companies that doesn&amp;#39;t like to open ports to the internet, so I can convince them to open the 9999, but not the 843.&lt;br /&gt;&lt;br /&gt;When flash connects to a socket, it first goes to port 843 to request the security policy file. The FlashSecurityPolicyServer works fine. BUT, if port 843 is unavailable or unresponsive, Flash asks the same to the port it is connecting &amp;#40;9999&amp;#41;.&lt;br /&gt;&lt;br /&gt;The problem is that SuperWebSocket will not respond to this request.&lt;br /&gt;&lt;br /&gt;It would be nice if there is some way to inject the flash security policy not only in SuperWebSocket, but in SuperSocket itself, allowing all clients connecting with flash to connect even if port 843 is closed.&lt;br /&gt;Comments: But then I could&amp;#39;n start a SuperWebSocket on port 9999, right&amp;#63; &amp;#61;&amp;#92;</description><author>JCKodel</author><pubDate>Thu, 28 Mar 2013 13:52:38 GMT</pubDate><guid isPermaLink="false">Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406] 20130328015238P</guid></item><item><title>Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406]</title><link>http://superwebsocket.codeplex.com/workitem/12406</link><description>First, let me describe my scenario&amp;#58;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m developing a real-time intranet where users will connect through web sockets to a high port &amp;#40;let&amp;#39;s say 9999&amp;#41;, using Flash to emulate web sockets in IE &amp;#60; 10 or, if it fails, connect though SignalR.&lt;br /&gt;&lt;br /&gt;There are companies that doesn&amp;#39;t like to open ports to the internet, so I can convince them to open the 9999, but not the 843.&lt;br /&gt;&lt;br /&gt;When flash connects to a socket, it first goes to port 843 to request the security policy file. The FlashSecurityPolicyServer works fine. BUT, if port 843 is unavailable or unresponsive, Flash asks the same to the port it is connecting &amp;#40;9999&amp;#41;.&lt;br /&gt;&lt;br /&gt;The problem is that SuperWebSocket will not respond to this request.&lt;br /&gt;&lt;br /&gt;It would be nice if there is some way to inject the flash security policy not only in SuperWebSocket, but in SuperSocket itself, allowing all clients connecting with flash to connect even if port 843 is closed.&lt;br /&gt;Comments: Of course you can let your SuperSocket policy server listen two ports&amp;#58;&amp;#10;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;&amp;#60;server name&amp;#61;&amp;#34;FlashPolicyServer&amp;#34;&amp;#10;  &amp;#9;      serverType&amp;#61;&amp;#34;SuperSocket.Facility.PolicyServer.FlashPolicyServer, SuperSocket.Facility&amp;#34;&amp;#10;&amp;#9;      receiveBufferSize&amp;#61;&amp;#34;32&amp;#34;&amp;#10;              maxConnectionNumber&amp;#61;&amp;#34;100&amp;#34;&amp;#10;              policyFile&amp;#61;&amp;#34;Policy&amp;#92;flash.xml&amp;#34;&amp;#10;&amp;#9;      clearIdleSession&amp;#61;&amp;#34;true&amp;#34;&amp;#62;&amp;#10;          &amp;#60;listeners&amp;#62;&amp;#10;              &amp;#60;add ip&amp;#61;&amp;#34;Any&amp;#34; port&amp;#61;&amp;#34;843&amp;#34; &amp;#47;&amp;#62;&amp;#10;              &amp;#60;add ip&amp;#61;&amp;#34;Any&amp;#34; port&amp;#61;&amp;#34;9999&amp;#34; &amp;#47;&amp;#62;&amp;#10;          &amp;#60;&amp;#47;listeners&amp;#62;&amp;#10;      &amp;#60;&amp;#47;server&amp;#62;&amp;#10;&amp;#96;&amp;#96;&amp;#96;&amp;#10;&amp;#10;https&amp;#58;&amp;#47;&amp;#47;gist.github.com&amp;#47;kerryjiang&amp;#47;3994663</description><author>kerryjiang</author><pubDate>Thu, 28 Mar 2013 02:10:15 GMT</pubDate><guid isPermaLink="false">Commented Issue: Flash Security Policy without FlashSecurityPolicyServer [12406] 20130328021015A</guid></item><item><title>Created Issue: Flash Security Policy without FlashSecurityPolicyServer [12406]</title><link>http://superwebsocket.codeplex.com/workitem/12406</link><description>First, let me describe my scenario&amp;#58;&lt;br /&gt;&lt;br /&gt;I&amp;#39;m developing a real-time intranet where users will connect through web sockets to a high port &amp;#40;let&amp;#39;s say 9999&amp;#41;, using Flash to emulate web sockets in IE &amp;#60; 10 or, if it fails, connect though SignalR.&lt;br /&gt;&lt;br /&gt;There are companies that doesn&amp;#39;t like to open ports to the internet, so I can convince them to open the 9999, but not the 843.&lt;br /&gt;&lt;br /&gt;When flash connects to a socket, it first goes to port 843 to request the security policy file. The FlashSecurityPolicyServer works fine. BUT, if port 843 is unavailable or unresponsive, Flash asks the same to the port it is connecting &amp;#40;9999&amp;#41;.&lt;br /&gt;&lt;br /&gt;The problem is that SuperWebSocket will not respond to this request.&lt;br /&gt;&lt;br /&gt;It would be nice if there is some way to inject the flash security policy not only in SuperWebSocket, but in SuperSocket itself, allowing all clients connecting with flash to connect even if port 843 is closed.&lt;br /&gt;</description><author>JCKodel</author><pubDate>Wed, 27 Mar 2013 17:12:33 GMT</pubDate><guid isPermaLink="false">Created Issue: Flash Security Policy without FlashSecurityPolicyServer [12406] 20130327051233P</guid></item><item><title>Commented Issue: Newest SuperWebSocket Kills Computer [12403]</title><link>http://superwebsocket.codeplex.com/workitem/12403</link><description>Upgrading from v0.6 to v0.7 causes CPU usage to go to 100&amp;#37;. This appears to be because the NP Pool is filling up with data and thrashing the computer. We have &amp;#126;3000 people that connect from a very high latency, this seems to cause the crash to happen faster &amp;#40;in our production environment&amp;#41;. However, even in our development environment the crash will happen after about a week of constant running. &lt;br /&gt;&lt;br /&gt;No other code was changed other than changing SuperWebSocket from 0.6 to 0.7, so I am sure that this is the problem. The issue is immediately resolved after downgrading to 0.6. However, this is not a long term solution because v0.6 appears to have a steady memory leak. &lt;br /&gt;Comments: I&amp;#39;ve made a client&amp;#47;server to demonstrate the problem. This is an accelerated version of what happens in my production environment. The client is going to connect 1000 sockets that connect but then do not respond &amp;#40;they do not clear their receive buffers&amp;#41;. The server is going to send 10 heartbeats every second to all connected clients. &amp;#13;&amp;#10;&amp;#13;&amp;#10;Everything starts out fine, with the server around &amp;#126;5&amp;#37; CPU. But if you let it run for around 5 minutes the NP Pool of the CrasherServer.exe process climbs rapidly and it begins using &amp;#126;50&amp;#37; CPU. This eventually leads to out of memory conditions on the computer.  &amp;#13;&amp;#10;&amp;#13;&amp;#10;To view the NP Pool usage go to task manager -&amp;#62; View -&amp;#62; Check &amp;#34;Memory - Non-paged Pool&amp;#34; .&amp;#13;&amp;#10;&amp;#13;&amp;#10;I would expect that since I say SyncSend &amp;#61; true, and SendTimeOut &amp;#61; 1000 that all these non-responsive connections would eventually be dropped. </description><author>adotout</author><pubDate>Wed, 13 Mar 2013 15:00:17 GMT</pubDate><guid isPermaLink="false">Commented Issue: Newest SuperWebSocket Kills Computer [12403] 20130313030017P</guid></item><item><title>Commented Issue: Custom subprotocol vs. out-of-box commands [12405]</title><link>http://superwebsocket.codeplex.com/workitem/12405</link><description>Hi,&lt;br /&gt;&lt;br /&gt;In order to implement custom logic for command search and resolution, we had to implement a sub-protocol of our own by inheriting from __SubProtocolBase&amp;#60;T&amp;#62;__&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#9;public class PluggableSubProtocol&amp;#60;TWebSocketSession&amp;#62; &amp;#58; &lt;br /&gt;&amp;#9;&amp;#9;SubProtocolBase&amp;#60;TWebSocketSession&amp;#62;&lt;br /&gt;&amp;#9;&amp;#9;where TWebSocketSession &amp;#58; WebSocketSession&amp;#60;TWebSocketSession&amp;#62;, new&amp;#40;&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;However, the new protocol cannot work with any command inherited from __SubCommandBase&amp;#60;T&amp;#62;__. The problem is with uninitialized __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ field, resulting in a __NullReferenceException__ in the __ISubCommand&amp;#60;TWebSocketSession&amp;#62;.ExecuteCommand__ method&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;            var filters &amp;#61; m_Filters&amp;#59;&lt;br /&gt;&lt;br /&gt;            if &amp;#40;filters.Length &amp;#61;&amp;#61; 0&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;The problem is that the field is initialized with null by default and the only way to initialize it is via _internal_&lt;br /&gt;__ISubCommandFilterLoader__ interface, which is not acceptable to any code outside __SuperWebSocket__ assembly, including our __PluggableSubProtocol&amp;#60;T&amp;#62;__.&lt;br /&gt;&lt;br /&gt;Please either make the interface public or initialize __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ with an empty list by default.&lt;br /&gt;&lt;br /&gt;Thanks in advance&amp;#33;&lt;br /&gt;Comments: I commit a change to fix this issue. Actually, I&amp;#39;ll improve the code to make sure the method always be invoked.</description><author>kerryjiang</author><pubDate>Wed, 13 Mar 2013 02:01:37 GMT</pubDate><guid isPermaLink="false">Commented Issue: Custom subprotocol vs. out-of-box commands [12405] 20130313020137A</guid></item><item><title>Commented Issue: Custom subprotocol vs. out-of-box commands [12405]</title><link>http://superwebsocket.codeplex.com/workitem/12405</link><description>Hi,&lt;br /&gt;&lt;br /&gt;In order to implement custom logic for command search and resolution, we had to implement a sub-protocol of our own by inheriting from __SubProtocolBase&amp;#60;T&amp;#62;__&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#9;public class PluggableSubProtocol&amp;#60;TWebSocketSession&amp;#62; &amp;#58; &lt;br /&gt;&amp;#9;&amp;#9;SubProtocolBase&amp;#60;TWebSocketSession&amp;#62;&lt;br /&gt;&amp;#9;&amp;#9;where TWebSocketSession &amp;#58; WebSocketSession&amp;#60;TWebSocketSession&amp;#62;, new&amp;#40;&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;However, the new protocol cannot work with any command inherited from __SubCommandBase&amp;#60;T&amp;#62;__. The problem is with uninitialized __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ field, resulting in a __NullReferenceException__ in the __ISubCommand&amp;#60;TWebSocketSession&amp;#62;.ExecuteCommand__ method&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;            var filters &amp;#61; m_Filters&amp;#59;&lt;br /&gt;&lt;br /&gt;            if &amp;#40;filters.Length &amp;#61;&amp;#61; 0&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;The problem is that the field is initialized with null by default and the only way to initialize it is via _internal_&lt;br /&gt;__ISubCommandFilterLoader__ interface, which is not acceptable to any code outside __SuperWebSocket__ assembly, including our __PluggableSubProtocol&amp;#60;T&amp;#62;__.&lt;br /&gt;&lt;br /&gt;Please either make the interface public or initialize __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ with an empty list by default.&lt;br /&gt;&lt;br /&gt;Thanks in advance&amp;#33;&lt;br /&gt;Comments: I commit a change to fix this issue.</description><author>kerryjiang</author><pubDate>Wed, 13 Mar 2013 02:00:44 GMT</pubDate><guid isPermaLink="false">Commented Issue: Custom subprotocol vs. out-of-box commands [12405] 20130313020044A</guid></item><item><title>Commented Issue: Custom subprotocol vs. out-of-box commands [12405]</title><link>http://superwebsocket.codeplex.com/workitem/12405</link><description>Hi,&lt;br /&gt;&lt;br /&gt;In order to implement custom logic for command search and resolution, we had to implement a sub-protocol of our own by inheriting from __SubProtocolBase&amp;#60;T&amp;#62;__&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#9;public class PluggableSubProtocol&amp;#60;TWebSocketSession&amp;#62; &amp;#58; &lt;br /&gt;&amp;#9;&amp;#9;SubProtocolBase&amp;#60;TWebSocketSession&amp;#62;&lt;br /&gt;&amp;#9;&amp;#9;where TWebSocketSession &amp;#58; WebSocketSession&amp;#60;TWebSocketSession&amp;#62;, new&amp;#40;&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;However, the new protocol cannot work with any command inherited from __SubCommandBase&amp;#60;T&amp;#62;__. The problem is with uninitialized __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ field, resulting in a __NullReferenceException__ in the __ISubCommand&amp;#60;TWebSocketSession&amp;#62;.ExecuteCommand__ method&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;            var filters &amp;#61; m_Filters&amp;#59;&lt;br /&gt;&lt;br /&gt;            if &amp;#40;filters.Length &amp;#61;&amp;#61; 0&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;The problem is that the field is initialized with null by default and the only way to initialize it is via _internal_&lt;br /&gt;__ISubCommandFilterLoader__ interface, which is not acceptable to any code outside __SuperWebSocket__ assembly, including our __PluggableSubProtocol&amp;#60;T&amp;#62;__.&lt;br /&gt;&lt;br /&gt;Please either make the interface public or initialize __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ with an empty list by default.&lt;br /&gt;&lt;br /&gt;Thanks in advance&amp;#33;&lt;br /&gt;Comments: The method ISubCommandFilterLoader.LoadSubCommandFilters&amp;#40;IEnumerable&amp;#60;SubCommandFilterAttribute&amp;#62; globalFilters&amp;#41; of each command should be invoked in your sub protocol implementation before you start to really use them.&amp;#10;&amp;#10;Any way, I&amp;#39;ll add more detection code.</description><author>kerryjiang</author><pubDate>Wed, 13 Mar 2013 01:57:21 GMT</pubDate><guid isPermaLink="false">Commented Issue: Custom subprotocol vs. out-of-box commands [12405] 20130313015721A</guid></item><item><title>Created Issue: Custom subprotocol vs. out-of-box commands [12405]</title><link>http://superwebsocket.codeplex.com/workitem/12405</link><description>Hi,&lt;br /&gt;&lt;br /&gt;In order to implement custom logic for command search and resolution, we had to implement a sub-protocol of our own by inheriting from __SubProtocolBase&amp;#60;T&amp;#62;__&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&amp;#9;public class PluggableSubProtocol&amp;#60;TWebSocketSession&amp;#62; &amp;#58; &lt;br /&gt;&amp;#9;&amp;#9;SubProtocolBase&amp;#60;TWebSocketSession&amp;#62;&lt;br /&gt;&amp;#9;&amp;#9;where TWebSocketSession &amp;#58; WebSocketSession&amp;#60;TWebSocketSession&amp;#62;, new&amp;#40;&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;However, the new protocol cannot work with any command inherited from __SubCommandBase&amp;#60;T&amp;#62;__. The problem is with uninitialized __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ field, resulting in a __NullReferenceException__ in the __ISubCommand&amp;#60;TWebSocketSession&amp;#62;.ExecuteCommand__ method&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;            var filters &amp;#61; m_Filters&amp;#59;&lt;br /&gt;&lt;br /&gt;            if &amp;#40;filters.Length &amp;#61;&amp;#61; 0&amp;#41;&lt;br /&gt;&amp;#96;&amp;#96;&amp;#96;&lt;br /&gt;&lt;br /&gt;The problem is that the field is initialized with null by default and the only way to initialize it is via _internal_&lt;br /&gt;__ISubCommandFilterLoader__ interface, which is not acceptable to any code outside __SuperWebSocket__ assembly, including our __PluggableSubProtocol&amp;#60;T&amp;#62;__.&lt;br /&gt;&lt;br /&gt;Please either make the interface public or initialize __SubCommandBase&amp;#60;T&amp;#62;.m_Filters__ with an empty list by default.&lt;br /&gt;&lt;br /&gt;Thanks in advance&amp;#33;&lt;br /&gt;</description><author>alexeypr</author><pubDate>Tue, 12 Mar 2013 20:08:33 GMT</pubDate><guid isPermaLink="false">Created Issue: Custom subprotocol vs. out-of-box commands [12405] 20130312080833P</guid></item><item><title>Commented Issue: Cannot load Counter Name [12404]</title><link>http://superwebsocket.codeplex.com/workitem/12404</link><description>Hi,&lt;br /&gt;&lt;br /&gt;On a windows 8 64bit pc, I&amp;#39;m getting this build error...&lt;br /&gt;&lt;br /&gt;Cannot load Counter Name data because an invalid index &amp;#39;&amp;#39; was read from the registry.&lt;br /&gt;&lt;br /&gt;Stack trace...&lt;br /&gt;&lt;br /&gt;at System.Diagnostics.PerformanceCounterLib.GetStringTable&amp;#40;Boolean isHelp&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.get_NameTable&amp;#40;&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.get_CategoryTable&amp;#40;&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.GetCategorySample&amp;#40;String category&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.GetCategorySample&amp;#40;String machine, String category&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterCategory.GetCounterInstances&amp;#40;String categoryName, String machineName&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterCategory.GetInstanceNames&amp;#40;&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.PerformanceMonitor.GetPerformanceCounterInstanceName&amp;#40;Process process&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.PerformanceMonitor..ctor&amp;#40;IRootConfig config, IEnumerable&amp;#96;1 appServers, ILogFactory logFactory&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.DefaultBootstrap.Initialize&amp;#40;Func&amp;#96;2 serverConfigResolver, ILogFactory logFactory&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.DefaultBootstrap.Initialize&amp;#40;Func&amp;#96;2 serverConfigResolver&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.DefaultBootstrap.Initialize&amp;#40;&amp;#41;&lt;br /&gt;   at Portal.Web.Global.StartWebSocketByConfig&amp;#40;&amp;#41; in i&amp;#58;&amp;#92;Portal&amp;#92;Web&amp;#92;Global.asax.cs&amp;#58;line 544&lt;br /&gt;   at Portal.Web.Global.Application_Start&amp;#40;Object sender, EventArgs e&amp;#41; in i&amp;#58;&amp;#92;Portal&amp;#92;Web&amp;#92;Global.asax.cs&amp;#58;line 85&lt;br /&gt;&lt;br /&gt;I don&amp;#39;t get this on a windows 7 64bit machine.&lt;br /&gt;&lt;br /&gt;Any help much appreciated. As always, thanks for the awesome work on this project&amp;#33;&amp;#33;&lt;br /&gt;Comments: Run &amp;#34;lodctr &amp;#47;r&amp;#34; in the console window.</description><author>kerryjiang</author><pubDate>Fri, 08 Mar 2013 00:31:55 GMT</pubDate><guid isPermaLink="false">Commented Issue: Cannot load Counter Name [12404] 20130308123155A</guid></item><item><title>Edited Issue: Cannot load Counter Name [12404]</title><link>http://superwebsocket.codeplex.com/workitem/12404</link><description>Hi,&lt;br /&gt;&lt;br /&gt;On a windows 8 64bit pc, I&amp;#39;m getting this build error...&lt;br /&gt;&lt;br /&gt;Cannot load Counter Name data because an invalid index &amp;#39;&amp;#39; was read from the registry.&lt;br /&gt;&lt;br /&gt;Stack trace...&lt;br /&gt;&lt;br /&gt;at System.Diagnostics.PerformanceCounterLib.GetStringTable&amp;#40;Boolean isHelp&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.get_NameTable&amp;#40;&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.get_CategoryTable&amp;#40;&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.GetCategorySample&amp;#40;String category&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterLib.GetCategorySample&amp;#40;String machine, String category&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterCategory.GetCounterInstances&amp;#40;String categoryName, String machineName&amp;#41;&lt;br /&gt;   at System.Diagnostics.PerformanceCounterCategory.GetInstanceNames&amp;#40;&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.PerformanceMonitor.GetPerformanceCounterInstanceName&amp;#40;Process process&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.PerformanceMonitor..ctor&amp;#40;IRootConfig config, IEnumerable&amp;#96;1 appServers, ILogFactory logFactory&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.DefaultBootstrap.Initialize&amp;#40;Func&amp;#96;2 serverConfigResolver, ILogFactory logFactory&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.DefaultBootstrap.Initialize&amp;#40;Func&amp;#96;2 serverConfigResolver&amp;#41;&lt;br /&gt;   at SuperSocket.SocketEngine.DefaultBootstrap.Initialize&amp;#40;&amp;#41;&lt;br /&gt;   at Portal.Web.Global.StartWebSocketByConfig&amp;#40;&amp;#41; in i&amp;#58;&amp;#92;Portal&amp;#92;Web&amp;#92;Global.asax.cs&amp;#58;line 544&lt;br /&gt;   at Portal.Web.Global.Application_Start&amp;#40;Object sender, EventArgs e&amp;#41; in i&amp;#58;&amp;#92;Portal&amp;#92;Web&amp;#92;Global.asax.cs&amp;#58;line 85&lt;br /&gt;&lt;br /&gt;I don&amp;#39;t get this on a windows 7 64bit machine.&lt;br /&gt;&lt;br /&gt;Any help much appreciated. As always, thanks for the awesome work on this project&amp;#33;&amp;#33;&lt;br /&gt;</description><author>Zimmer</author><pubDate>Thu, 07 Mar 2013 18:13:30 GMT</pubDate><guid isPermaLink="false">Edited Issue: Cannot load Counter Name [12404] 20130307061330P</guid></item></channel></rss>