View Issue Details

IDProjectCategoryView StatusLast Update
0003081VALENTINA SERVERAPIpublic2009-01-24 05:51
ReporterJason MoehlmanAssigned ToIvan Smahin 
PrioritynormalSeveritycrashReproducibilitysometimes
Status resolvedResolutionfixed 
Product Version3.5.2 
Target VersionFixed in Version4.0 
Summary0003081: VServer crashing on Linux and Win32, runs fine on Mac OS X
DescriptionWhen running a V4RB compiled or debug program on Linux or Windows, VServer crashes after the app has closed. There are no entries in the log, just the last messages about closing database and releasing connections.

The VServer instance on Linux at least shows a Segmentation Fault if run from a command line. After the app closes. If you are tailing the log file, there is no indication there was a problem until you try to connect to the VServer.

The same application running on OS X ( where development is going on ) has no issues and the VServer does not ever crash.

I am not sure what else to do, I can provide logs, but they show nothing. I am flushing the DB, closing the DB, shutting down the client etc. The application itself runs fine, does not issue any exceptions and all the data is in the DB after a restart of VServer.

Please help!!!
TagsNo tags attached.

Activities

Jason Moehlman

Jason Moehlman

2008-04-05 12:46

reporter   ~0003323

I have run diagnose on DB and it showed no problems.

I have also recreated DB and started from scratch many times, and it still reliably crashes on Linux and Windows.
Ivan Smahin

Ivan Smahin

2008-04-05 22:58

manager   ~0003324

What are the server, kernel versions?
Also what version of V4RB on "crashed" platforms?
Jason Moehlman

Jason Moehlman

2008-04-06 11:09

reporter   ~0003325

3.5.2 on all software components. It is all I am using right now.
Ruslan Zasukhin

Ruslan Zasukhin

2008-04-06 11:37

administrator   ~0003326

Do you use LIKE ?
Ivan, may be this is crash related to LIKE as we have fix for 3.6 b1

You can try download 3.6beta from here
    http://www.valentina-db.com/download/beta2/

Please download Vserver win and check if crash is gone
Jason Moehlman

Jason Moehlman

2008-04-06 11:49

reporter   ~0003327

I do not use LIKE in any of the current queries. They are very simple in relative terms. And the crash is happening when the app closes. Not 100% of the time, but more than 50%. As I said if I restart the server all the data is there, a diagnose shows no issues, but it basically does a segmentation fault as my app is closing out, flushing, etc.

I have rewritten many parts of the code chasing this instability, and there is no log entry at all. It shows the database being closed, and destroyed and the current connection count back to 5 available kind of thing. The VServer is just crashed at that point. I will be happy to send some one a log, or try a new version but this instablility I believe I have been chasing for a while and did not realize it was crashing on a sucessfuly program close.
Jason Moehlman

Jason Moehlman

2008-04-06 11:55

reporter   ~0003328

As I develop on Mac OS X, I have never seen this problem. Only on deployment to Windows or Linux ( Linux is the current delivery platform ) do I seen this problem. In the past I have chalked it up to a code issue during development. But I am certain that the OS X version has never had an issue, just Linux and Win32 and I am trying to deliver a finished product that works great on OS X, just is not usable on Linux because of these crashes.
Ruslan Zasukhin

Ruslan Zasukhin

2008-04-06 21:38

administrator   ~0003329

then you need give us way to reproduce it on windows.

* upload to FTP your compiled app
* write EXACT steps how come to the crash
Jason Moehlman

Jason Moehlman

2008-04-10 14:51

reporter   ~0003361

I will be happy to do this, I have to get a version of my app shipped to the customer first. Then I will begin working on a demo program of the problem.
Jason Moehlman

Jason Moehlman

2008-08-28 11:50

reporter   ~0003815

I have tested with the newest b34 build and the VServer still seg faults on a very regular basis. More often with multiple clients, but I just opened and closed a single app 6 times, opening a few db client windows and I got it to seg fault the server 2 times on app exit.
Jason Moehlman

Jason Moehlman

2008-08-29 07:33

reporter   ~0003817

I believe I have identified the core problem in my code that was causing the crash in VServer. There were times when an open, hidden window with a cursor object was still open when the program closed.

After identifying the issue through lots of testing, I am curious if the Linux and Windows versions of VServer can be made as robust as the the Mac OS X version which did not ever crash with the same circumstances. I understand that the issue was mine, but the handling of the condition in the Mac version is much better and does not ever crash, even if I send it some bad stuff.

Thanks!
Ruslan Zasukhin

Ruslan Zasukhin

2008-10-29 09:47

administrator   ~0003986

I see it was far ago, but I want ask:

* if its possible send us some project that reproduce this crash on WIN ?
* I hope that NOW when you know why it happens you can reproduce it easy.
Jason Moehlman

Jason Moehlman

2009-01-17 04:47

reporter   ~0004180

You asked for a method to recreate, so I found one. VStudio.

1. Have a linux VServer with database with tables and data.
2. Connect using a NON-REGISTERED VStudio. ( I use SSL and the DB is encrypted ). I don't know if that matters overall.
3. Open the DB, and open a table with data and let the VStudio to sit until it hits the demo timeout and closes.
4. When VStudio closes from demo timeout with the table data editor open, I assume that is an open cursor object, like my description provides from my software testing and the VServer just crashes and goes away with no log entry at all.

I have seen this on Windows as well, never on OS X.

I feel this is a critical issue, no DB server should crash on anything that the client might do, especially when any crash of an open program has a good chance to bring down the whole DB server.
Ruslan Zasukhin

Ruslan Zasukhin

2009-01-20 04:55

administrator   ~0004202

Ivan have spend few hours playing on Windows with b15. No crash

Kirill have spend few hours on Linux with b15. No crash.


Jason, we cannot reproduce it on 4.0b15
So may be you can try b15 and see if you can ?
Jason Moehlman

Jason Moehlman

2009-01-20 06:09

reporter   ~0004208

This is what I got once I got b15 vstudio working. On windows, vstudio pro will not run, crashes on loading the vs_plugins_sql everytime. Test was done with vstudio standard. Still crashed but now it at least lists the timeout error even though I have timeout set to 99999 per Ruslan, earlier reported issue.

/*************************************************************************************/
Tue Jan 20 2009 09:52:25.656212 VServer_Embedded (4.0, Kernel 4.0 b15)
Maximum number of connections: 5

 09:52:26.073300 (3058706112): VProject facilities are disabled since no appropriate license found
 09:52:26.073381 (3058706112): Server started
 09:52:26.073422 (3058706112): Non-secure port: 5204
 09:52:26.073459 (3058706112): SSL port: 5210
 09:52:29.268514 (3050310576): (20) ERROR 0x61502: Specified encryption key is wrong.
 09:53:41.360346 (3050310576): (20) ERROR 0x70503: Table "sys_Diagrams" not found.
 10:02:42.791114 (3041917872): Client has been disconnected due to the transfer timeout (20)
linuxdev:/usr/local/VServer_embedded#

ini values for timeouts:
MaxClientTimeout=0; Specifies the IDLE timeout in minutes for a client.
; On timeout VServer will disconnect that client.
; 0 - means inifinite timeout.

MaxTransferTimeout=99999;
Ruslan Zasukhin

Ruslan Zasukhin

2009-01-20 06:54

administrator   ~0004209

I want to clarify.

so it is crash or disconnect issue???

 10:02:42.791114 (3041917872): Client has been disconnected due to the
transfer timeout (20)
Ruslan Zasukhin

Ruslan Zasukhin

2009-01-24 05:51

administrator   ~0004217

Kirill have add catch of PIPEBROKEN signal.

Issue History

Date Modified Username Field Change
2008-04-05 12:42 Jason Moehlman New Issue
2008-04-05 12:46 Jason Moehlman Note Added: 0003323
2008-04-05 22:58 Ivan Smahin Note Added: 0003324
2008-04-06 11:09 Jason Moehlman Note Added: 0003325
2008-04-06 11:37 Ruslan Zasukhin Note Added: 0003326
2008-04-06 11:49 Jason Moehlman Note Added: 0003327
2008-04-06 11:55 Jason Moehlman Note Added: 0003328
2008-04-06 21:38 Ruslan Zasukhin Note Added: 0003329
2008-04-10 14:51 Jason Moehlman Note Added: 0003361
2008-08-28 11:50 Jason Moehlman Note Added: 0003815
2008-08-29 07:33 Jason Moehlman Note Added: 0003817
2008-10-29 09:47 Ruslan Zasukhin Note Added: 0003986
2008-10-29 09:47 Ruslan Zasukhin Status new => assigned
2008-10-29 09:47 Ruslan Zasukhin Assigned To => Ivan Smahin
2009-01-17 04:47 Jason Moehlman Note Added: 0004180
2009-01-20 04:55 Ruslan Zasukhin Note Added: 0004202
2009-01-20 06:09 Jason Moehlman Note Added: 0004208
2009-01-20 06:54 Ruslan Zasukhin Note Added: 0004209
2009-01-24 05:51 Ruslan Zasukhin Note Added: 0004217
2009-01-24 05:51 Ruslan Zasukhin Status assigned => resolved
2009-01-24 05:51 Ruslan Zasukhin Fixed in Version => 4.0
2009-01-24 05:51 Ruslan Zasukhin Resolution open => fixed