problem about writeInBackgroundAndNotify
Hi everyone, I have downloaded the WebServer-1.2.1 example program from http://wiki.gnustep.org/index.php/WebServer. I got a problem. When the browser client visit the server page, like http://localhost, the server didn't give any response, until timeout. I checked the program, I found that if I change the "[[connection handle] writeInBackgroundAndNotify: result]" in Line 1480 to"[[connection handle] writeData: result]" it can work. Does anyone known why the method writeInBackgroundAndNotify cannot work in this example? ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
On 21 Aug 2009, at 18:17, Guo Xu wrote: Hi everyone, I have downloaded the WebServer-1.2.1 example program from http://wiki.gnustep.org/index.php/WebServer . I got a problem. When the browser client visit the server page, like http:// localhost, the server didn't give any response, until timeout. I can't reproduce that ... when I run the testWebServer program and connect to it using firefox the response in instant. I checked the program, I found that if I change the "[[connection handle] writeInBackgroundAndNotify: result]" in Line 1480 to"[[connection handle] writeData: result]" it can work. Does anyone known why the method writeInBackgroundAndNotify cannot work in this example? I have no idea why that would make any difference (possibly it was just a coincidence?). Are you using an up to date version of GNUstep? Not that the version of the libraries is likely to make any difference ... this code has been running 24*7 in high volume applications for years without any trouble. ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
Hi Richard Thank you very much for your answer. But I have tried it again at a different machine which also have Windows7 Build 7127 platform. All my computer have platform of Windows7, I don't test on any other environment. What about your environment? The program of GNUstep I used is downloaded from http://www.gnustep.org/experience/Windows.html, the latest stable version. It can reproduce the problem with any browser ( Firefox, Chrome ). I think the async socket function of GNUstep maybe have some problem on Windows7. 2009/8/22 Richard Frith-Macdonald > > On 21 Aug 2009, at 18:17, Guo Xu wrote: > > Hi everyone, >> I have downloaded the WebServer-1.2.1 example program from >> http://wiki.gnustep.org/index.php/WebServer. I got a problem. >> When the browser client visit the server page, like http://localhost, the >> server didn't give any response, until timeout. >> > > I can't reproduce that ... when I run the testWebServer program and connect > to it using firefox the response in instant. > > I checked the program, I found that if I change the >> "[[connection handle] writeInBackgroundAndNotify: result]" in Line 1480 >> to"[[connection handle] writeData: result]" >> it can work. >> >> Does anyone known why the method writeInBackgroundAndNotify cannot work in >> this example? >> > > I have no idea why that would make any difference (possibly it was just a > coincidence?). > > Are you using an up to date version of GNUstep? Not that the version of > the libraries is likely to make any difference ... this code has been > running 24*7 in high volume applications for years without any trouble. > > ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
On 22 Aug 2009, at 04:35, Guo Xu wrote: Hi Richard Thank you very much for your answer. But I have tried it again at a different machine which also have Windows7 Build 7127 platform. All my computer have platform of Windows7, I don't test on any other environment. What about your environment? Ah, I didn't realise you were using windows. I guess there could quite easily be a problem with async sockets on windows. I haven't noticed it in other programs, but I don't use windows much, in fact I don't have a windows development environment at the moment. I'll try to find time to get a windows system set up, but in the meantime perhaps someone else who uses windows might be able to help. ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
Hi, Richard Frith-Macdonald wrote: On 22 Aug 2009, at 04:35, Guo Xu wrote: Hi Richard Thank you very much for your answer. But I have tried it again at a different machine which also have Windows7 Build 7127 platform. All my computer have platform of Windows7, I don't test on any other environment. What about your environment? Ah, I didn't realise you were using windows. I guess there could quite easily be a problem with async sockets on windows. I haven't noticed it in other programs, but I don't use windows much, in fact I don't have a windows development environment at the moment. I'll try to find time to get a windows system set up, but in the meantime perhaps someone else who uses windows might be able to help. First I tested on linux and it works. Then I did a test on Windowx XP and I get the following behaviour: 1. I start the webserver (I am admin, on linux you need to be root, since it opens port 80) 2. I retrieve a page from it 3. windows firewall notices the port access, I unlock it 4. on the standard output of the gnustep console, I see the response, but the connecting client doesn't get any data back until it timeouts. 5. the only error I see comes form an NSLog and says "Unable to set blocking mode - Invalid argument" [*] Riccardo [*] I find it interestng that it goes onto the stdout. Usually error messages are routed to the windows event console ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
The behavior you described is exactly the same as me.I also tested it on Windows server2003, It seems all of the Windows platform have the same problem. 2009/8/23 Riccardo Mottola > Hi, > > > Richard Frith-Macdonald wrote: > >> >> On 22 Aug 2009, at 04:35, Guo Xu wrote: >> >> Hi Richard >>> Thank you very much for your answer. >>> But I have tried it again at a different machine which also have >>> Windows7 Build 7127 platform. All my computer have platform of Windows7, I >>> don't test on any other environment. What about your environment? >>> >> >> Ah, I didn't realise you were using windows. I guess there could quite >> easily be a problem with async sockets on windows. I haven't noticed it in >> other programs, but I don't use windows much, in fact I don't have a windows >> development environment at the moment. I'll try to find time to get a >> windows system set up, but in the meantime perhaps someone else who uses >> windows might be able to help. >> >> First I tested on linux and it works. > > Then I did a test on Windowx XP and I get the following behaviour: > > 1. I start the webserver (I am admin, on linux you need to be root, since > it opens port 80) > 2. I retrieve a page from it > 3. windows firewall notices the port access, I unlock it > 4. on the standard output of the gnustep console, I see the response, but > the connecting client doesn't get any data back until it timeouts. > 5. the only error I see comes form an NSLog and says "Unable to set > blocking mode - Invalid argument" [*] > > > > Riccardo > > > [*] I find it interestng that it goes onto the stdout. Usually error > messages are routed to the windows event console > > > ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
On 22 Aug 2009, at 23:23, Riccardo Mottola wrote: Hi, Richard Frith-Macdonald wrote: On 22 Aug 2009, at 04:35, Guo Xu wrote: Hi Richard Thank you very much for your answer. But I have tried it again at a different machine which also have Windows7 Build 7127 platform. All my computer have platform of Windows7, I don't test on any other environment. What about your environment? Ah, I didn't realise you were using windows. I guess there could quite easily be a problem with async sockets on windows. I haven't noticed it in other programs, but I don't use windows much, in fact I don't have a windows development environment at the moment. I'll try to find time to get a windows system set up, but in the meantime perhaps someone else who uses windows might be able to help. First I tested on linux and it works. Then I did a test on Windowx XP and I get the following behaviour: 1. I start the webserver (I am admin, on linux you need to be root, since it opens port 80) 2. I retrieve a page from it 3. windows firewall notices the port access, I unlock it 4. on the standard output of the gnustep console, I see the response, but the connecting client doesn't get any data back until it timeouts. Not sure what you mean by this ... do you mean that, after a timeout, the client receives the response? Or, do you mean that a timeout occurs and the client gives up without ever receiving a response? Either way, how long is the timeout? ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
On 22 Aug 2009, at 23:23, Riccardo Mottola wrote: Hi, Richard Frith-Macdonald wrote: On 22 Aug 2009, at 04:35, Guo Xu wrote: Hi Richard Thank you very much for your answer. But I have tried it again at a different machine which also have Windows7 Build 7127 platform. All my computer have platform of Windows7, I don't test on any other environment. What about your environment? Ah, I didn't realise you were using windows. I guess there could quite easily be a problem with async sockets on windows. I haven't noticed it in other programs, but I don't use windows much, in fact I don't have a windows development environment at the moment. I'll try to find time to get a windows system set up, but in the meantime perhaps someone else who uses windows might be able to help. First I tested on linux and it works. Then I did a test on Windowx XP and I get the following behaviour: 1. I start the webserver (I am admin, on linux you need to be root, since it opens port 80) 2. I retrieve a page from it 3. windows firewall notices the port access, I unlock it 4. on the standard output of the gnustep console, I see the response, but the connecting client doesn't get any data back until it timeouts. 5. the only error I see comes form an NSLog and says "Unable to set blocking mode - Invalid argument" [*] I think this is now fixed in svn trunk with changes to base/Source/ win32/GSFileHandle.m ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
Hi, Richard Frith-Macdonald wrote: 1. I start the webserver (I am admin, on linux you need to be root, since it opens port 80) 2. I retrieve a page from it 3. windows firewall notices the port access, I unlock it 4. on the standard output of the gnustep console, I see the response, but the connecting client doesn't get any data back until it timeouts. Not sure what you mean by this ... do you mean that, after a timeout, the client receives the response? Or, do you mean that a timeout occurs and the client gives up without ever receiving a response? Either way, how long is the timeout? No, the client never received the response, the client gave up and it depended on the client how long it was. I see however that you committed some changes to base and now it works fine for me on WindowsXP. Riccardo ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
Hi Richard I directly downloaded the GNUstep setup bin files from http://www.gnustep.org/experience/Windows.html page, I don't know how to apply this change to my environment. So I can't test if it is ok. Should I compile GNUstep environment myself? Can you give me some references. 2009/8/23 Richard Frith-Macdonald > > On 22 Aug 2009, at 23:23, Riccardo Mottola wrote: > > Hi, >> >> Richard Frith-Macdonald wrote: >> >>> >>> On 22 Aug 2009, at 04:35, Guo Xu wrote: >>> >>> Hi Richard Thank you very much for your answer. But I have tried it again at a different machine which also have Windows7 Build 7127 platform. All my computer have platform of Windows7, I don't test on any other environment. What about your environment? >>> >>> Ah, I didn't realise you were using windows. I guess there could quite >>> easily be a problem with async sockets on windows. I haven't noticed it in >>> other programs, but I don't use windows much, in fact I don't have a windows >>> development environment at the moment. I'll try to find time to get a >>> windows system set up, but in the meantime perhaps someone else who uses >>> windows might be able to help. >>> >>> First I tested on linux and it works. >> >> Then I did a test on Windowx XP and I get the following behaviour: >> >> 1. I start the webserver (I am admin, on linux you need to be root, since >> it opens port 80) >> 2. I retrieve a page from it >> 3. windows firewall notices the port access, I unlock it >> 4. on the standard output of the gnustep console, I see the response, but >> the connecting client doesn't get any data back until it timeouts. >> 5. the only error I see comes form an NSLog and says "Unable to set >> blocking mode - Invalid argument" [*] >> > > I think this is now fixed in svn trunk with changes to > base/Source/win32/GSFileHandle.m > ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
Unless there has been a binary incompatible change to the library since the last release (which there has not, as far as I know), you can just get the latest base library from SVN (see: http://www.gnustep.org/resources/sources.html) or from the daily-snapshots and compile and install it: A. Start the msys shell (Start -> Programs -> GNUstep - Shell) B. Get SVN base (svn co http://://svn.gna.org/svn/gnustep/libs/base/ trunk) or daily snapshot (ftp://ftp.gnustep.org/pub/daily-snapshots/core.current.tar.bz2 ). unpack the snapshot and CD to the base library if necessary. C. Type: configure make install The new base library should overwrite the one that came with the bin files. On Aug 23, 2009, at 9:09 PM, Guo Xu wrote: Hi Richard I directly downloaded the GNUstep setup bin files from http://www.gnustep.org/experience/Windows.html page, I don't know how to apply this change to my environment. So I can't test if it is ok. Should I compile GNUstep environment myself? Can you give me some references. ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev
Re: problem about writeInBackgroundAndNotify
Thanks a lotI tested the problem, it works fine for me on Windows7 now. Thank you Richard and all. 2009/8/24 Adam Fedor > Unless there has been a binary incompatible change to the library since the > last release (which there has not, as far as I know), you can just get the > latest base library from SVN (see: > http://www.gnustep.org/resources/sources.html) or from the daily-snapshots > and compile and install it: > A. Start the msys shell (Start -> Programs -> GNUstep - Shell) > B. Get SVN base (svn co http://://svn.gna.org/svn/gnustep/libs/base/trunk) > or daily snapshot ( > ftp://ftp.gnustep.org/pub/daily-snapshots/core.current.tar.bz2). >unpack the snapshot and CD to the base library if necessary. > C. Type: > configure > make install > > The new base library should overwrite the one that came with the bin files. > > > > On Aug 23, 2009, at 9:09 PM, Guo Xu wrote: > > Hi Richard > I directly downloaded the GNUstep setup bin files from > http://www.gnustep.org/experience/Windows.html page, I don't know how to > apply this change to my environment. So I can't test if it is ok. > Should I compile GNUstep environment myself? Can you give me some > references. > > > ___ Gnustep-dev mailing list Gnustep-dev@gnu.org http://lists.gnu.org/mailman/listinfo/gnustep-dev