Real Software Forums

The forum for Real Studio and other Real Software products.
[ REAL Software Website | Board Index ]
It is currently Sat Oct 20, 2018 11:45 pm
xojo

All times are UTC - 5 hours




Post new topic Reply to topic  [ 9 posts ] 
Author Message
 Post subject: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Wed Sep 26, 2012 5:56 pm 
Offline

Joined: Wed Oct 05, 2005 12:42 am
Posts: 63
So basically we've had networking code that's worked great for years now. We have TCP sockets for syncing some information between client and server machines.

With Mountain Lion and a build of our program with RS2012r1, we're having a very strange issue:
- Connections over a LAN work fine with no issue
- Connections from non-Mountain Lion machines work fine (including windows, and 10.7 and older)

The issue arises when someone makes a connection on 10.8 from outside of the local network. Initially it connects correctly without any issue. It sends the initial information and gets to our login page where the socket is basically supposed to stay connected and wait for the user to type in their login information on the client machine.

Once the client submits the information, it's sent to the server and the process continues. In testing, the client properly sends the information to the server, and the server even receives it and attempts to send data back, but the client never receives and additional data. The client socket's DataAvailable even never fires again after the initial setup. The client socket still says it's properly connected, and it even sends the usual disconnect error to the server when the app is quit after unsuccessfully logging in.

Here's where it gets weirder: if we put in a bunch of break points in the code on the client machine and run it in debug mode slowly, it will often keep the socket working properly and not have any issues. The DataAvailable event will properly fire when there's data available.

I've looked for updates in 2012r1 regarding TCPSockets but couldn't find any. Does anyone have any idea where to go/start with this?

Thanks!


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Wed Sep 26, 2012 6:35 pm 
Offline
Real Software Engineer

Joined: Sat Dec 24, 2005 8:18 pm
Posts: 7858
Location: Canada, Alberta, Near Red Deer
Tom Iwaniec wrote:
So basically we've had networking code that's worked great for years now. We have TCP sockets for syncing some information between client and server machines.

With Mountain Lion and a build of our program with RS2012r1, we're having a very strange issue:
- Connections over a LAN work fine with no issue
- Connections from non-Mountain Lion machines work fine (including windows, and 10.7 and older)

The issue arises when someone makes a connection on 10.8 from outside of the local network. Initially it connects correctly without any issue. It sends the initial information and gets to our login page where the socket is basically supposed to stay connected and wait for the user to type in their login information on the client machine.

Once the client submits the information, it's sent to the server and the process continues. In testing, the client properly sends the information to the server, and the server even receives it and attempts to send data back, but the client never receives and additional data. The client socket's DataAvailable even never fires again after the initial setup. The client socket still says it's properly connected, and it even sends the usual disconnect error to the server when the app is quit after unsuccessfully logging in.

Here's where it gets weirder: if we put in a bunch of break points in the code on the client machine and run it in debug mode slowly, it will often keep the socket working properly and not have any issues. The DataAvailable event will properly fire when there's data available.

I've looked for updates in 2012r1 regarding TCPSockets but couldn't find any. Does anyone have any idea where to go/start with this?

Thanks!


A bug report & a sample (or your projects attached to an additional note marked as private) is a good way to get this looked into

_________________
Norman Palardy (Real Software)


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Thu Sep 27, 2012 8:03 am 
Offline
User avatar

Joined: Sat Nov 11, 2006 2:43 pm
Posts: 1221
Location: This poster has left the forums
Tom Iwaniec wrote:
I've looked for updates in 2012r1 regarding TCPSockets but couldn't find any. Does anyone have any idea where to go/start with this?


Did you try compiling with 2011R4.3?

TCPSockets has lots of bugs in 2012. It is unusable for me, I'm back to running 2011R4.3

_________________
%Invalidforumsignatureexception% user signature not found


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Thu Sep 27, 2012 8:06 am 
Offline
User avatar

Joined: Sat Nov 11, 2006 2:43 pm
Posts: 1221
Location: This poster has left the forums
npalardy wrote:
A bug report & a sample (or your projects attached to an additional note marked as private) is a good way to get this looked into



Good luck with that.
When I submitted a bug very similar to the one here, with sample code, it was marked as fixed and closed. Its not fixed.
How about engineers update a ticket and allow the reporter to test the fix before closing it? I've submitted another bug, which I suspect will end up with the same frustration and lack of resolution.

If I sound angry, I am

_________________
%Invalidforumsignatureexception% user signature not found


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Thu Sep 27, 2012 9:31 am 
Offline
Real Software Engineer

Joined: Sat Dec 24, 2005 8:18 pm
Posts: 7858
Location: Canada, Alberta, Near Red Deer
pony wrote:
npalardy wrote:
A bug report & a sample (or your projects attached to an additional note marked as private) is a good way to get this looked into



Good luck with that.
When I submitted a bug very similar to the one here, with sample code, it was marked as fixed and closed. Its not fixed.

You can submit another sample that demonstrates that it's not fixed.
The report will get reviewed again and go through the process of getting assessed, assigned & dealt with (and if it's truly a bug fixed)
But there's no guarantee it will happen immediately - I know that pretty well as I have something like 1200 bug reports outstanding.

We can't fix what we don't know about and if you say the bug isn't fixed then a sample that shows that attached to the report will get it reviewed again & it will go through the process again.

But to say "I did this once & it didn't get fixed so it's not worth it" is really not realistic or fair - esp if you didn't re-report that it was still not fixed and show us why you make that assertion.

_________________
Norman Palardy (Real Software)


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Thu Sep 27, 2012 10:20 am 
Offline
User avatar

Joined: Sat Nov 11, 2006 2:43 pm
Posts: 1221
Location: This poster has left the forums
npalardy wrote:
But to say "I did this once & it didn't get fixed so it's not worth it" is really not realistic or fair - esp if you didn't re-report that it was still not fixed and show us why you make that assertion.


I'm not going to name names, but I contacted the original Real engineer and said it wasn't fixed, that the original example showed the same problem. Uploading the same example seemed futile.

You completely ignored the fact that it would be helpful if cases were updated rather than closed, allowing the bug reporter an opportunity to update the case. My bug had been assigned, and being closed means it has to go through that process again. I believe it is a realistic expectation to think ownership of a problem would remain with the assignee until it was resolved.

I've seen plenty of closed cases that have been updated with comments that the fix did not work, with no further action.




npalardy wrote:
I know that pretty well as I have something like 1200 bug reports outstanding.

make that 1201

_________________
%Invalidforumsignatureexception% user signature not found


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Thu Sep 27, 2012 1:19 pm 
Offline

Joined: Wed Oct 05, 2005 12:42 am
Posts: 63
We too have had basically no success in submitting bugs over the years. Also in this case, submitting sample code would basically be impossible. We have to spend hours or days trying to recreate the server/networking setup, or send in our entire program's source code (which obviously isn't ideal) to get everything reproduced.

Basically, are there any known/undocumented issues with the TCPsocket in RS2012r1 that could cause them to be connected, but for the server side to become unable to send any data to the client side? Sometimes the abstract description of a bug is the quickest easiest way to figure out a solution, especially when we have a very complex program and a possibly very complex bug we're running into.

We've been trying to work on a solution for our product that we can release immediately. Submitting a bug report would take many hours of work, plus the time it would take to get any bug fix and a new release of RB, and would result in an unacceptable turnaround for our customers.


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Thu Sep 27, 2012 1:31 pm 
Offline
Real Software Engineer

Joined: Fri Jan 28, 2011 5:24 pm
Posts: 145
Tom Iwaniec wrote:
We too have had basically no success in submitting bugs over the years. Also in this case, submitting sample code would basically be impossible. We have to spend hours or days trying to recreate the server/networking setup, or send in our entire program's source code (which obviously isn't ideal) to get everything reproduced.

Basically, are there any known/undocumented issues with the TCPsocket in RS2012r1 that could cause them to be connected, but for the server side to become unable to send any data to the client side? Sometimes the abstract description of a bug is the quickest easiest way to figure out a solution, especially when we have a very complex program and a possibly very complex bug we're running into.

We've been trying to work on a solution for our product that we can release immediately. Submitting a bug report would take many hours of work, plus the time it would take to get any bug fix and a new release of RB, and would result in an unacceptable turnaround for our customers.


I am not aware of any bugs with TCPSockets themselves. There are known issues with HTTPSockets in 2012r1 that we aim to fix in 2012r1.1.

_________________
Joe Ranieri
Mac Frameworks & Compiler
REAL Software, Inc.


Top
 Profile  
Reply with quote  
 Post subject: Re: TCPSocket stops working on 2012r1 in Mountain Lion
PostPosted: Sat Sep 29, 2012 4:52 am 
Offline
User avatar

Joined: Fri Oct 28, 2005 7:05 am
Posts: 565
Location: Emsworth, UK
Tom Iwaniec wrote:
Does anyone have any idea where to go/start with this?
Fire up Wireshark and see what if anything arrives at the client interface, after the login is submitted.

If you were to assume that the TCPSocket is in fact working (although it might not be), the symptoms you are observing can be produced by a flawed expectation within DataAvailable, which subsequently causes the code to enter a loop where the Socket is not being polled by the framework.

E.g. The client code in the following snippet will break when the server transmission is fragmented by the network.

//server code
socket.write "the quick brown fox jumped over the lazy dog" + chr(10)

//client code
DataAvailable
dim line as string
do
line = line + socket.read(1)
loop until socket.read(1) = chr(10)
End

_________________
Yes it's me in the avatar


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 9 posts ] 

All times are UTC - 5 hours


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group