Watch, Follow, &
Connect with Us

Please visit our new home
community.embarcadero.com.

Public Report
Report From: InterBase/Server    [ Add a report in this area ]  
Report #:  119288   Status: Reported
API call isc_queue_events FREEZE
Project:  InterBase Build #:  WI-V11.0.3.655
Version:    11.0 Submitted By:   Jason Wharton
Report Type:  Crash / Data loss / Total failure Date Reported:  9/25/2013 8:48:20 PM
Severity:    Serious / Highly visible problem Last Updated: 10/2/2013 9:26:59 AM
Platform:    64 Bit Internal Tracking #:  
Resolution: None  Resolved in Build: : None
Duplicate of:  None
Voting and Rating
Overall Rating: (1 Total Rating)
5.00 out of 5
Total Votes: 2
Description
I am using the new InterBase that comes with XE5 installed on a Win8 64 bit machine.

I have a very aggressive regression testing application that pummels the event alerter functionality and I can run the test successfully numerous times without any problems. However, on occasion, the very same test running in the same application instance after several successful runs will freeze up on a call to the isc_queue_events() API call.
Steps to Reproduce:
I have included a ZIP file with my regression testing application. Unzip it into a folder of your choice and run the executable. You will be presented with a list of tests and the one you will want to run is the EventAlerter test. Run it over and over and over until it fails.

I tried to write in a way to apply some "anti-freeze" but was never fully successful. The app still acts rather unstable after a failure. But, it should be quite unmistakable when it fails vs. when it succeeds as normal.
Workarounds
I have found no way to work around this probmem. I'm actually hoping to find a way to make it reproduce in a more reliable manner so that the cause can be isolated, identified and either worked around or fixed.
Attachment
119288.zip
Comments

Jason Wharton at 9/25/2013 9:07:22 PM -
I tried to upload my sample app but I just get a busy signal and it fails after about 2 minutes or so.
Is there some other way I can provide this?

Ah, yes, I'll put it on my server and you can download it via http download:

http://www.ibobjects.com/files/IBXE5_FREEZE_Sample.zip

Sriram Balasubramanian at 9/27/2013 10:25:10 AM -
Jason,

Thanks for the report! Can you let us know if you have ever observed this with older InterBase releases (before InterBase XE3 Update 3)?

Also, do you notice the problem with both local connection (via IPC), and, remote loopback (via TCP)?

Best wishes,
Sriram

Jason Wharton at 9/29/2013 11:41:29 PM -
I will also test the local and remote TCP_IP modes for you as well. I've been working on making that little app configurable so that you can provide settings to run it against multiple instances. I'll get you an updated version of it when that is ready.

Jason Wharton at 9/29/2013 11:28:29 PM -
I would gladly test any earlier versions you would like me to. I have run these tests on a WinXP virtual machine against an older version and it was 100% good. I believe it was IB 2009 or it may have been IBO 2007. I'll double check and get back to you.

Sriram Balasubramanian at 9/27/2013 11:07:12 AM -
Reported in internal bug tracking system as INTB-1900

Jason Wharton at 9/29/2013 11:24:51 PM -
Great to see progress. Did you by chance run the sample app I provided and see the same problem?

Jason Wharton at 10/2/2013 9:35:45 AM -
I have uploaded a new version of the sample app for you to use to reproduce this problem. I added the ability to configure it with a custom ClientDDL filespec and a value for the InstanceName feature to hit a specific instance of a multi-instance server.

I can confirm that the problem only shows up for me in the recent release of InterBase that ships with RAD Studio XE5. It doesn't matter how I connect to it whether it is local or through TCP/IP.

Please let me know when you have run the sample app provided to see if it also freezes up in your environment.

Jason Wharton at 10/2/2013 12:14:13 PM -
typo: ClientDLL instead of ClientDDL

Jason Wharton at 10/16/2013 7:53:39 PM -
How do I find out what the status of this issue is?
Is there some kind of a projection as to when a fix can be expected?

Jason Wharton at 12/7/2013 12:57:40 PM -
Please answer these questions.

Jason Wharton at 12/13/2013 11:33:55 AM -
I have additional steps to reproduce this problem.
If you load up a copy of Delphi XE2 and open the sample app provided for IBX called Events.dproj and open it up and run it you can get the app to freeze up.

Step 1: Click the Open Database button.
Step 2: Type MYEVENT in the Event Registration memo.
Step 3: Click the Register Events button.
Step 4: Type MYEVENT in the Generate Events edit.
Step 5: Click the Generate Event button.
Step 6: Verify that the event functioned by observing MYEVENT appearing in the Events Received memo.
Step 7: Click the Close Database button.
Step 8: Click the Open Database button.
Step 9: Click the Register Events button. The app should freeze up at this point.

Please run this series of steps and let me know if you are able to reproduce the problem or not. If you do this and do not get the problem I will need to closely investigate what is corrupted in my own setup.

Server Response from: ETNACODE01