Posts: 45
Threads: 15
Joined: Jul 2019
Reputation:
2
Location: Italy
Posts: 1,136
Threads: 37
Joined: Mar 2018
Reputation:
30
Location: Limassol, Cyprus
I can say with 99% certainty it is your code. IW is used in many large deployments and is well tested.
You can take a simple demo like Guess and deploy it and see that even under load it wont crash.
From the traces it appears that in your events something is creating an invalid state or memory issues.
Posts: 1,136
Threads: 37
Joined: Mar 2018
Reputation:
30
Location: Limassol, Cyprus
Memory is probably not the issue and if it is, then you probably have a serious memory leak.
You can use web stress tools to stress your app.
I would suggest trying something like MadExcept to help with the crash logging.
Posts: 2,205
Threads: 186
Joined: Mar 2018
Reputation:
79
Location: Auckland, New Zealand
01-08-2020, 08:17 PM
(This post was last modified: 01-09-2020, 11:00 AM by Alexandre Machado.)
In all of the stack traces I see references to IWBS components. Besides that, at first, looks to me that somehow the form being executed has been released prematurely. Is that possible? How are you creating/destroying your forms?
Forget what I said above. The issue seems to be during the destruction of one of the forms, this is what happens:
- IWContainers of the form are being destroyed and destroy all child controls
- TIWBSCustomRegion.Destroy is called
- TIWBSCustomControl.Destroy is called -> somewhere here down the line an AV happens
Seems to be related to the destruction of one descendant of TIWBSCustomControl
Posts: 2,205
Threads: 186
Joined: Mar 2018
Reputation:
79
Location: Auckland, New Zealand
01-08-2020, 08:19 PM
(This post was last modified: 01-08-2020, 08:20 PM by Alexandre Machado.)
I don't think memory is an issue here. Unless you have thousands of users connected, you shouldn't reach 2 gb easily.
Do you have other exception log files as these? Can you make them available (it can be G-drive or dropbox) and send me a link to my email (alexandre at atozed dot com)?
Posts: 2,205
Threads: 186
Joined: Mar 2018
Reputation:
79
Location: Auckland, New Zealand
01-08-2020, 08:35 PM
(This post was last modified: 01-08-2020, 08:36 PM by Alexandre Machado.)
All 3 stack traces belong to the same session and occurred in sequence. The last 2 are consequences of the first and I doubt they have anything useful. The first one shows that one of your forms was begin destroyed (BSVisualizzaCedForm, BSStampaCed1Form or BSStampaCed2Form ??). During the release of these forms something caused an AV. Anything unusual about the destruction of one of the forms?
Posts: 64
Threads: 9
Joined: Jun 2019
Reputation:
0
Location: here
This may be unrelated but it is adviced that when you declare an object, you set its value to nil in onFormCreate
var
s: TBitmap;
onFormCreate
s:=nil;
This is useful in case you do not create the object by
s:= TBitmap.Create;
because when you free the object with
if assigned(s) then FreeAndNil(s);
you will get acces violation since "s" will not have "nil" value and so it will be undetected by "if assigned"
Posts: 2,205
Threads: 186
Joined: Mar 2018
Reputation:
79
Location: Auckland, New Zealand
If you could share this form (even if it doesn't compile) it would be good, so I could try to understand what is the sequence of events.