Some of our guys are currently building under vs6, and the latest versions (anything after the pre-built 0.8.1 release) seem to crash on calling EventMachine::connect. The same crash seems to be occurring on Vista persistently with several compiler combinations and with the pre-built 0.8.1 release. The problem is, it''s not producing a backtrace or any kind of dump, it''s just crashing out. It''s not happening in the production environment at present though, on Windows 2003. First important question though, is anyone else using EM > 0.8.1 on win32 at the moment? (i.e. should I be expecting this to be working fine?)
Francis Cianfrocca
2008-Jan-23 09:37 UTC
[Eventmachine-talk] 0.10.0 and or building under VS 6
On Jan 23, 2008 12:24 PM, James Tucker <jftucker at gmail.com> wrote:> Some of our guys are currently building under vs6, and the latest > versions (anything after the pre-built 0.8.1 release) seem to crash on > calling EventMachine::connect. > > The same crash seems to be occurring on Vista persistently with > several compiler combinations and with the pre-built 0.8.1 release. > > The problem is, it''s not producing a backtrace or any kind of dump, > it''s just crashing out. > > It''s not happening in the production environment at present though, on > Windows 2003. > > First important question though, is anyone else using EM > 0.8.1 on > win32 at the moment? (i.e. should I be expecting this to be working > fine?) >It sounds like you have a problem with Vista with the pre-built version 0.8.1 gem. True? For the other cases, your workaround is to fall back to 0.8.1 for Windows until we figure this out. Most of the recently-added features are Unix-specific anyway. Version 0.11 (in development) adds a lot of nice stuff for Ruby 1.9 users, so we''ll definitely make to effort to be Win32-compatible. -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080123/ba21ecd2/attachment.html
On 23 Jan 2008, at 17:37, Francis Cianfrocca wrote:> On Jan 23, 2008 12:24 PM, James Tucker <jftucker at gmail.com> wrote: > Some of our guys are currently building under vs6, and the latest > versions (anything after the pre-built 0.8.1 release) seem to crash on > calling EventMachine::connect. > > The same crash seems to be occurring on Vista persistently with > several compiler combinations and with the pre-built 0.8.1 release. > > The problem is, it''s not producing a backtrace or any kind of dump, > it''s just crashing out. > > It''s not happening in the production environment at present though, on > Windows 2003. > > First important question though, is anyone else using EM > 0.8.1 on > win32 at the moment? (i.e. should I be expecting this to be working > fine?) > > > > It sounds like you have a problem with Vista with the pre-built > version 0.8.1 gem. True?Yes. Although the problem is also showing up on my parallels install that runs the one-click installer version of ruby. On this build, 0.8.1, 0.10 and 0.11 all exhibit the same behavior.> > > For the other cases, your workaround is to fall back to 0.8.1 for > Windows until we figure this out. Most of the recently-added > features are Unix-specific anyway.Yes this is my fallback, and it works in all but two places (Vista, and the aforementioned Parallels install). One key feature that I do need (well, s/need/could do with/, as I have a caller() hack), is "reactor_running?"> Version 0.11 (in development) adds a lot of nice stuff for Ruby 1.9 > users, so we''ll definitely make to effort to be Win32-compatible.And this version builds fine too, it''s just the runtime that seems to have issues. I haven''t yet tried pure mode either, I have many things to do in order to gain more information about the specific issues.> > _______________________________________________ > Eventmachine-talk mailing list > Eventmachine-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/eventmachine-talk-------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080123/bd622dea/attachment-0001.html
I have built 0.9.0 on VS 6( on XPSP2 machine ). Used it successfully on WinXPsp2 and on Win2k(not sure which sp level). I don''t have access to a Vista machine. The compilation process was fairly straightforward once I had everything in place. DaveS On Jan 23, 2008 12:57 PM, James Tucker <jftucker at gmail.com> wrote:> > On 23 Jan 2008, at 17:37, Francis Cianfrocca wrote: > > On Jan 23, 2008 12:24 PM, James Tucker <jftucker at gmail.com> wrote: > > > Some of our guys are currently building under vs6, and the latest > > versions (anything after the pre-built 0.8.1 release) seem to crash on > > calling EventMachine::connect. > > > > The same crash seems to be occurring on Vista persistently with > > several compiler combinations and with the pre-built 0.8.1 release. > > > > The problem is, it''s not producing a backtrace or any kind of dump, > > it''s just crashing out. > > > > It''s not happening in the production environment at present though, on > > Windows 2003. > > > > First important question though, is anyone else using EM > 0.8.1 on > > win32 at the moment? (i.e. should I be expecting this to be working > > fine?) > > > > > > It sounds like you have a problem with Vista with the pre-built version > 0.8.1 gem. True? > > > Yes. Although the problem is also showing up on my parallels install that > runs the one-click installer version of ruby. On this build, 0.8.1, 0.10and > 0.11 all exhibit the same behavior. > > > > For the other cases, your workaround is to fall back to 0.8.1 for Windows > until we figure this out. Most of the recently-added features are > Unix-specific anyway. > > > Yes this is my fallback, and it works in all but two places (Vista, and > the aforementioned Parallels install). > > One key feature that I do need (well, s/need/could do with/, as I have a > caller() hack), is "reactor_running?" > > Version 0.11 (in development) adds a lot of nice stuff for Ruby 1.9 users, > so we''ll definitely make to effort to be Win32-compatible. > > > And this version builds fine too, it''s just the runtime that seems to have > issues. I haven''t yet tried pure mode either, I have many things to do in > order to gain more information about the specific issues. > > > > _______________________________________________ > Eventmachine-talk mailing list > Eventmachine-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/eventmachine-talk > > > > _______________________________________________ > Eventmachine-talk mailing list > Eventmachine-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/eventmachine-talk >-------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080123/97c718d5/attachment.html
On Jan 23, 2008 10:57 AM, <eventmachine-talk-request at rubyforge.org> wrote:> Send Eventmachine-talk mailing list submissions to > eventmachine-talk at rubyforge.org > > To subscribe or unsubscribe via the World Wide Web, visit > http://rubyforge.org/mailman/listinfo/eventmachine-talk > or, via email, send a message with subject or body ''help'' to > eventmachine-talk-request at rubyforge.org > > You can reach the person managing the list at > eventmachine-talk-owner at rubyforge.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Eventmachine-talk digest..." > > > Today''s Topics: > > 1. Re: Help understanding Eventmachine concepts (Dave Skidmore) > 2. Re: Help understanding Eventmachine concepts (Francis Cianfrocca) > 3. BOSCH/http binding for jabber (snacktime) > 4. Re: Help understanding Eventmachine concepts (Andrea Sisti) > 5. Re: BOSCH/http binding for jabber (Kirk Haines) > 6. 0.10.0 and or building under VS 6 (James Tucker) > 7. Re: 0.10.0 and or building under VS 6 (Francis Cianfrocca) > 8. Re: 0.10.0 and or building under VS 6 (James Tucker) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 22 Jan 2008 09:16:22 -0500 > From: "Dave Skidmore" <dave.skidmore at gmail.com> > Subject: Re: [Eventmachine-talk] Help understanding Eventmachine > concepts > To: eventmachine-talk at rubyforge.org > Message-ID: > <37e1447b0801220616y2db2b04eg50ca2c9d1e888d57 at mail.gmail.com> > Content-Type: text/plain; charset="iso-8859-1" > > As a bit of a game programmer myself, most use custom protocols. No one has > really built a good protocol that is fully generic, and yet fast enough for > most games. the FPS client/servers use custom protocols intended for that > style of play, but it''s really overkill for a boardgame or Internet Hearts. > > To answer the OP, the general design pattern is to have a mirror of the > player object on the server machine, and associate the name and ID of the > player with one of those objects, along with their connection information. > That way when you get a packet from a132.network.com, you know it''s Fred, > who is player 2. Alternatively, you can build the protocol to pass that > information in the packets sent back and forth, in the case that you want to > allow for more than one player per IP (for people playing via home routers, > etc) In that case, the player connects, and you say ''okay, you are player > 42314145'' and then store that in the player object on both client and > server; the server uses it to know who to associate data with. > > For a 4 player game, TCP is acceptable. Only the larger games(hundreds of > users), those that needs very high communication rates, or those that want > to use some of those fancy firewall tricks we discussed, need UDP. > > Dave S > > On 1/21/08, Francis Cianfrocca <garbagecat10 at gmail.com> wrote: > > > > On Jan 21, 2008 12:05 PM, Andrea Sisti <yakuman77 at gmail.com> wrote: > > > > > Hello, > > > > > > I want to develop a multiplayer online game (just a board game). > > > every group of players (4) will play at a table. > > > > > > > > > I want to use eventmachine because of course i''m using ruby to develop. > > > Is eventmachine a correct model for this scenario? > > > > > > I have a question. How I can identify from what player the packets > > > arrive? > > > > > > I mean how can i identify the session of the player? > > > > > > Sorry for bad english. > > > > > > > > > > > > > > If you use TCP, then obviously you can tell who the players are because > > each one will have a distinct connection object associated with him. > > > > If you use UDP, then you can distinguish them either from the source IP > > address, or you can add a player ID to the packets that they send. > > > > Many people ask about multiplayer games. In general, EM is a good platform > > to use. But I''m always curious about the network protocols that people use > > for these applications. Are there standard protocols (like Jabber, perhaps?) > > that are suitable for multiplayer games? Or do people tend to invent their > > own protocols? > > > > > > _______________________________________________ > > Eventmachine-talk mailing list > > Eventmachine-talk at rubyforge.org > > http://rubyforge.org/mailman/listinfo/eventmachine-talk > > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080122/4a1b3227/attachment-0001.html > > ------------------------------ > > Message: 2 > Date: Tue, 22 Jan 2008 20:28:25 -0500 > From: "Francis Cianfrocca" <garbagecat10 at gmail.com> > Subject: Re: [Eventmachine-talk] Help understanding Eventmachine > concepts > To: eventmachine-talk at rubyforge.org > Message-ID: > <3a94cf510801221728o28d0601dj3e5a61960c40b809 at mail.gmail.com> > Content-Type: text/plain; charset="iso-8859-1" > > On Jan 22, 2008 9:16 AM, Dave Skidmore <dave.skidmore at gmail.com> wrote: > > > As a bit of a game programmer myself, most use custom protocols. No one > > has really built a good protocol that is fully generic, and yet fast enough > > for most games. the FPS client/servers use custom protocols intended for > > that style of play, but it''s really overkill for a boardgame or Internet > > Hearts. > > > > To answer the OP, the general design pattern is to have a mirror of the > > player object on the server machine, and associate the name and ID of the > > player with one of those objects, along with their connection information. > > That way when you get a packet from a132.network.com, you know it''s Fred, > > who is player 2. Alternatively, you can build the protocol to pass that > > information in the packets sent back and forth, in the case that you want to > > allow for more than one player per IP (for people playing via home routers, > > etc) In that case, the player connects, and you say ''okay, you are player > > 42314145'' and then store that in the player object on both client and > > server; the server uses it to know who to associate data with. > > > > For a 4 player game, TCP is acceptable. Only the larger games(hundreds of > > users), those that needs very high communication rates, or those that want > > to use some of those fancy firewall tricks we discussed, need UDP. > > > > Dave S > > > > > > > Insightful. Thanks, Dave. > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080122/43441b1d/attachment-0001.html > > ------------------------------ > > Message: 3 > Date: Wed, 23 Jan 2008 00:23:44 -0800 > From: snacktime <snacktime at gmail.com> > Subject: [Eventmachine-talk] BOSCH/http binding for jabber > To: eventmachine-talk at rubyforge.org > Message-ID: > <1f060c4c0801230023o50569fefqff55248991408c0a at mail.gmail.com> > Content-Type: text/plain; charset=ISO-8859-1 > > So it looks like a lot of recent activity going on with http > implementations in EM. So who out there has a fairly solid keep alive > support? I''ve seen swiftiply and it has some work done in that area, > can''t remember if the em httpserver gem does or not. > > I''ve been fighting buggy jabber http bind implementations for longer > then it would have taken to just write one, and I think em is a > perfect platform for it. I don''t need chunked encoding or anything > fancy, just keep alive support for building pipelining between a > jabber server and web clients. > > Chris > > > ------------------------------ > > Message: 4 > Date: Wed, 23 Jan 2008 11:10:25 +0100 > From: "Andrea Sisti" <yakuman77 at gmail.com> > Subject: Re: [Eventmachine-talk] Help understanding Eventmachine > concepts > To: eventmachine-talk at rubyforge.org > Message-ID: > <30bf1e790801230210j38a3d804ld6cf7225c62e0a1c at mail.gmail.com> > Content-Type: text/plain; charset="iso-8859-1" > > Thanks all for the answers. > I thought using TCP for the reasons Dave said and because i need to use > SSL encryption. > Any code snippets of how to setup SSL server? > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080123/23ebc754/attachment-0001.html > > ------------------------------ > > Message: 5 > Date: Wed, 23 Jan 2008 06:35:14 -0700 > From: "Kirk Haines" <wyhaines at gmail.com> > Subject: Re: [Eventmachine-talk] BOSCH/http binding for jabber > To: eventmachine-talk at rubyforge.org > Message-ID: > <f4cd26df0801230535s746577xe67605ed5614521a at mail.gmail.com> > Content-Type: text/plain; charset=ISO-8859-1 > > On Jan 23, 2008 1:23 AM, snacktime <snacktime at gmail.com> wrote: > > So it looks like a lot of recent activity going on with http > > implementations in EM. So who out there has a fairly solid keep alive > > support? I''ve seen swiftiply and it has some work done in that area, > > can''t remember if the em httpserver gem does or not. > > Nobody. > > I implemented it for 0.6.3, but it had bugs and I didn''t want to take > the time to sort them out right now, so I backed it out. > > If anyone wants to contribute a keep-alive implementation, though, I''d > be happy to take the patch. > > > Kirk Haines > > > ------------------------------ > > Message: 6 > Date: Wed, 23 Jan 2008 17:24:55 +0000 > From: James Tucker <jftucker at gmail.com> > Subject: [Eventmachine-talk] 0.10.0 and or building under VS 6 > To: eventmachine-talk at rubyforge.org > Message-ID: <A81B823F-C637-491F-9906-83D7985EC979 at gmail.com> > Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes > -- > Some of our guys are currently building under vs6, and the latest > versions (anything after the pre-built 0.8.1 release) seem to crash on > calling EventMachine::connect. > > The same crash seems to be occurring on Vista persistently with > several compiler combinations and with the pre-built 0.8.1 release. > > The problem is, it''s not producing a backtrace or any kind of dump, > it''s just crashing out.These are sometimes caused (in my experience) when EM encounters something it doesn''t anticiaptes and does a C style raise. In windows it doesn''t say why, just says "program terminated unexpectedly"--you could go into the code and have it printf + raise instead of just raise.> First important question though, is anyone else using EM > 0.8.1 on > win32 at the moment? (i.e. should I be expecting this to be working > fine?)svn HEAD works great for me, on xp using mingw.> One key feature that I do need (well, s/need/could do with/, as I have > a caller() hack), is "reactor_running?"You could add it by adding its code to your own EM: def EventMachine::run &block # rename this something you''ll use @conns = {} @acceptors = {} @timers = {} begin @reactor_running = true initialize_event_machine block and add_timer 0, block released = false run_machine rescue => first released = true begin release_machine rescue Exception => second print ''got error'', second, ''when releasing'', first end raise ensure release_machine unless released @reactor_running = false end end and def self::reactor_running? (@reactor_running || false) end GL. -Roger -- Find peace http://www.google.com/search?q=free+bible
On 24 Jan 2008, at 02:14, Roger Pack wrote:> GL. > -RogerThanks for the info. I tried to wrap up the run in order to catch the error, but this did not help, as the error was not actually raising an exception, but fully crashing out with the following message: This application has requested the Runtime to terminate it in an unusual way. Please contact the application''s support team for more information. I have since managed to track this down to some kind of bug with the SSL layer, as if I remove the start_tls calls, then the issue goes away, on the XP system running under parallels. The Vista system was having issues due to rubygems it would appear, and is now working on the pre-built 0.8.1 gem.> > -- > Find peace http://www.google.com/search?q=free+bible > _______________________________________________ > Eventmachine-talk mailing list > Eventmachine-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/eventmachine-talk
On Jan 25, 2008 1:30 AM, James Tucker <jftucker at gmail.com> wrote:> > > I have since managed to track this down to some kind of bug with the > SSL layer, as if I remove the start_tls calls, then the issue goes > away, on the XP system running under parallels. >Ah, that may explain why I haven''t had any issues; I don''t have OpenSSL installed, so did not compile the SSL stuff in EM. I haven''t had a need for the SSL layer yet. DaveS -------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080125/f8df7d92/attachment.html
Turns out, some bad citizen added an openssl binary that was closer to the path of the program than the original (in the ruby bindir). I think I need to lookup, as I can''t remember, linked library search order on windows, but replacing the local binary version with one compatible solved the issue. On 26 Jan 2008, at 04:05, Dave Skidmore wrote:> > > On Jan 25, 2008 1:30 AM, James Tucker <jftucker at gmail.com> wrote: > > I have since managed to track this down to some kind of bug with the > SSL layer, as if I remove the start_tls calls, then the issue goes > away, on the XP system running under parallels. > > Ah, that may explain why I haven''t had any issues; I don''t have > OpenSSL installed, so did not compile the SSL stuff in EM. I > haven''t had a need for the SSL layer yet. > > DaveS > _______________________________________________ > Eventmachine-talk mailing list > Eventmachine-talk at rubyforge.org > http://rubyforge.org/mailman/listinfo/eventmachine-talk-------------- next part -------------- An HTML attachment was scrubbed... URL: http://rubyforge.org/pipermail/eventmachine-talk/attachments/20080126/252bc378/attachment.html