Diese Seite mit anderen teilen ...

Informationen zum Thema:
Forum:
WinDev Forum
Beiträge im Thema:
23
Erster Beitrag:
vor 7 Monaten
Letzter Beitrag:
vor 6 Monaten, 3 Wochen
Beteiligte Autoren:
Fabrice Harari, DerekT, John Fligg, GuenterP, Peter Holemans, Luis Antonio Gutiérrez Flores, André Labuschagné, KenKnight, Al, Donald Montaine, kingdr

WD22 has corrupted my app

Startbeitrag von DerekT am 16.01.2018 17:27

Do not know what has happened to my app

Started when I set up an ArraySeek() and no matter whether I sought a value I new to be valid or not the result always returned 1
Drank lots of coffee and played around for an hour or more - I could see in the debugger that the value I was seeking was in the array bu still the result was 1

I recompiled, deleted the .env and .cpl files, closed an reopened WD and even rebooted my laptop - no change still returned 1 in all cases.

So last chance thought I and took the 'Repare the project' option

WTF - WD has no completely screwed me by corrupting my code - I now have over 500 compilation errors - by randomly inserting/overwriting numeric strings.
By example my class method for connecting to the database is now named PROCEDUREv0000000200000002_DBConnect() and the Connection 'Access' element has changed to ConnectionHFCSv0000000800000002Access = hOReadWrite
All other code in the method is untouched

Same sort of corruption has occurred randomly all over the place

So 3 questions....
1. Any idea what can cause ArraySeek() to always return 1
2. What could possibly have caused the corruption
3. Do I try to fix or is it better to start again

Antworten:

Hi Derek,

as I have never seen anything like that, I doubt that windev ALONE did that.. So I would look for an external program interfering with normal windev operations, like, by example and anti-virus program not liking the fact that windev is writing inside an exe...

Did you exclude the windev folder AND the project folder from the anti-virus surveillance?

As for trying to repair... I probably would just restart from yesterdays backup...

Best regards

von Fabrice Harari - am 16.01.2018 17:48
I have never had the exact problem you mention. But my first step would be to run a memory test and then a hard drive test.

Also, I save historical copies of my projects daily and sometimes more often (if working on something critical)to a USB attached drive,and also make copies to the cloud and have very recent copies on a flash drive. I keep all the daily backups for years (disk space is cheap).

Last, 32 bit or 64 bit version of WinDev.

von Donald Montaine - am 16.01.2018 17:53
Hi

My experience telling me that it could be hardware (RAM/HD) problem when
it reached to some area that couldn't be managed.

Software problem, possible but you didn't mention what Windows version you're
running...

HTH

King

von kingdr - am 16.01.2018 18:21
Thanks guys

Version is WD22 32 bit - with all latest updates
OS is Win10 Proferssional - with all latest updates
Laptop = Dell Precision M3800
Disc Checked - Error Free
Memory 16GB checked - All OK
Anti virus excludes all and everything to do with the Projects WD versions installed.

So far so good then but I have received a possible cause from Andy Stapleton.
Apparently the corruption I have can be caused if 'Project repair' is rune and a test Test of the application is still active.
To be honest I do not recall if that was the case but as I had been running in Test mode quite a lot re the ArraySeek() issue I would have to admit it is possible.

So with an hours to spare I am going to try and correct the errors just to see if it will actually run and copy the code I added today to a document - may even try 'Project repair' to see what happens.
BUT of course before resuming programming I will ditch the current version and restore yesterdays.

von DerekT - am 16.01.2018 19:29
Hi Derek,

Had an identical issue with WD16/WD17 corrupting a project and make me loose a lot of time...
If I recall correctly having a running test on a breakpoint with a 'Repair Project' might have been part of the context as Andy suggested.
Anyway, having a crash several times a day or even project content corruption from your favourite IDE shouldn't be defined as acceptable imho...

Cheers,

Peter

von Peter Holemans - am 17.01.2018 14:08
Hi Peter,

>> Anyway, having a crash several times a day or even project content corruption from your favourite IDE shouldn't be defined as acceptable imho...

I agree... However, as I do NOT have frequent crashes or corruptions as you described, and as I know many people who do not have those either, I'm of a mind that it's more a configuration problem than anything else.

By example, I have been working like crazy in windev for the last 2 month on a growing project and I do not remember ANY crash during that time.

So, I do understand that YOU had problems that YOU couldn't solve... Putting everything on Windev's back, however, is not productive and is starting to be tiresome, to be honest.

Best regards

von Fabrice Harari - am 17.01.2018 14:37
Quote
Fabrice Harari
Hi Peter,

>> Anyway, having a crash several times a day or even project content corruption from your favourite IDE shouldn't be defined as acceptable imho...

I agree... However, as I do NOT have frequent crashes or corruptions as you described, and as I know many people who do not have those either, I'm of a mind that it's more a configuration problem than anything else.

By example, I have been working like crazy in windev for the last 2 month on a growing project and I do not remember ANY crash during that time.

So, I do understand that YOU had problems that YOU couldn't solve... Putting everything on Windev's back, however, is not productive and is starting to be tiresome, to be honest.

Best regards


Cannot say that I experience many crashes - and even those I can usually lay at my own door.
But I do think the running 'Repair' with a test ongoing was the cause of the corruption.
A useful lesson for me and a tip for all others.

I did get rid of all the errors in the app (65 mins), recompiled and it ran without any issues.
I have however now reverted to my last backup which fortunately was yesterday lunchtime so not to much coding time lost.

von DerekT - am 17.01.2018 15:55
It is definitely what Andy says. I have had it intermittently for several years and even PCSoft could offer no advice.

Now that Andy mentions it arises from not stopping a Debug run and changing code, all makes sense. It is never possible to edit out either as it seems to propogate throughout the app.

I wish PCSoft would fix this now but from now on I will ALWAYS complete a run before editing any more code.

von John Fligg - am 17.01.2018 22:05
Hello

I also see the issue as the "test" option.
I had the test option set as "Propose to end the test" but then I found that after making changes I would try to save or do something else while the test (WDTst.exe) was still running and invariably Windev would crash. This seems more prevalent in V22 than I can recall in earlier versions, although as Fabrice mentioned it could be a configuration issue with me as running a file update during the save after an analysis change also crashes Windev.
In relation to the test crashes I don't see that as a major Windev Fault as it must be extremely difficult for the PCSoft programmers to maintain the test environment and cope with my changes and saves of new code.
I resolved the test issue by setting the debugger to "End the test automatically" as the safest method.

Regards
Al

von Al - am 17.01.2018 23:13
As for the comment of Fabrice on not having any crashes, I would like to know the configuration and specs of his developement machine, where I work we are 6 developers working on the various platforms of windev, and IDE crashes are everyday things here, especially when retrieveing elements from the SCM, when there are a considerable amounts of cahnges to retrieve Windev, WebDev or Windev mobile, would crash, but after opening the IDE again it will ask you to recompile and everything will be fine. Also we experience some crashes when hovering over certain elements of the menu in WebDev after clicking the copy style option.

von Luis Antonio Gutiérrez Flores - am 18.01.2018 18:40
Hello Luis,

Indeed, crashes are indeed often (but not always) related to the SCM. Mentioned that before over here and to support... Specialy if the SCM is an HF in the cloud it seems to become more unstable. I now Fabrice doesn't use the SCM as he stated here before (why?) so that may explain why he has a more stable environment.

It even gets more complicated and unstable if you have several SCM's (e.g. some at a customer location on a server you access via VPN or an SSL tunnel and your own somewhere in the cloud) and you open projects connecting to different SCM's. Whenever the SCM connection cannot be recovered there is only one option: End Program. Way to go ?!?. After so many years of offering the SCM (Since V14 if I recall correctly) I would expect something more stable... Besides, there's no other SCM solution you can use with WX like you can with most IDE's so there's simply no choice to shop for a better solution.

I know I'm getting tiresome but if you use everything the package claims to offer (even better and easier than the competition) I would expect it to work... As I still have some maintenance on WX stuff I have running I'm still lurking around here form time to time as you noticed. Back to VS now and will stay quiet for a while, I promise... ;-)

Cheers,

Peter

von Peter Holemans - am 19.01.2018 09:09
I wasn't going to comment but feel I must.

It is a struggle to get any single developer to use the SCM but it is a wonderful tool and a real "get out of jail free" tool.

I feel this conversation, whilst probably correct for complex scenarios as Peter has explained will put anyone off using the SCM at all. Frankly I find it very stable indeed.

However I am a single developer using the SCM to manage 2 machines on a local network. I am astounded Fabrice of all people does not use it but it's obviously his choice.

If dealing with WebDev however I find this causes issues more than anything and am convinced there is a memory leak. The more you do it crashes but has nothing to do with the SCM.

Anyway if you are a single developer please don't be put off. The SCM is an invaluable tool IMHO.

von John Fligg - am 19.01.2018 10:30
Hi Luis

Quote
Luis Antonio Gutiérrez Flores
As for the comment of Fabrice on not having any crashes, I would like to know the configuration and specs of his developement machine, where I work we are 6 developers working on the various platforms of windev, and IDE crashes are everyday things here, especially when retrieveing elements from the SCM, when there are a considerable amounts of cahnges to retrieve Windev, WebDev or Windev mobile, would crash, but after opening the IDE again it will ask you to recompile and everything will be fine. Also we experience some crashes when hovering over certain elements of the menu in WebDev after clicking the copy style option.


Well it's easy to answer and hard at the same time, as I do NOT know what is causing the crashes on you all's machines...

I can only tell you what I THINK is relevant. My development configuration:
- Laptop HP Envy + 3 external screens (1 HDMI, 2 USBtoHDMI)
- Processor intel i7
- RAM 8 GB
- Hard drive 1 To SSD (don't remember the brand, but it's a fast one)
- Anti-virus is Microsoft defender (or whatever they are calling the regular/included anti-virus in windev these days)
- ALL DIRECTORIES (Windev, webdev, windev mobile AND PROJECTS) EXCLUDED from the anti-virus surveillance.
- windows 10 64 bits (always up to date)
- All dongles on an external 10 ports USB3 ANKER usb hub
- All wx products installed in their own/single directory (using both french and us versions, depending on the customer)
- All wx products used in 32 bits version, last available update installed
- NEVER using the last version (23 right now) before MAY or JUNE (ok, using it SOMETIMES, when a customer made the crazy plunge)
- NEVER using the SCM (ok, using it SOMETIMES, when a customer requests it)--- and in that case, having the SCM linked crashes.
- NOT using the microsoft suite (libre office and thunderbird) except when I have an integration to code
- Orthographic correction (therefore coming from libreoffice) turned ON in the WX projects
- Windows 10 locked down as much as possible with w10privacy (no cortana, no keylogging, etc)

With that configuration, I have been regularly working on 3 or 4 projects open at the same time (a good example is the wxreplication project, where for months I had 2 windev project, 1 webdev project and 1 or 2 windev mobile projects open on different screens) without any regular problem (the only one I remember is the USB one described above).

Now, I DO have some WINDOWS 10 problems... who doesn't?

By example, the only crashes I had in WX were when my laptop is (infrequently) loosing it's marbles with the USB system (that, as you can see, I'm loading and overloading) and the WX looses contact with the dungles (vtable error)

Hope this helps some of you

von Fabrice Harari - am 19.01.2018 11:11
Hi John,

Quote
John Fligg
I wasn't going to comment but feel I must.

It is a struggle to get any single developer to use the SCM but it is a wonderful tool and a real "get out of jail free" tool.

I feel this conversation, whilst probably correct for complex scenarios as Peter has explained will put anyone off using the SCM at all. Frankly I find it very stable indeed.

However I am a single developer using the SCM to manage 2 machines on a local network. I am astounded Fabrice of all people does not use it but it's obviously his choice.

If dealing with WebDev however I find this causes issues more than anything and am convinced there is a memory leak. The more you do it crashes but has nothing to do with the SCM.

Anyway if you are a single developer please don't be put off. The SCM is an invaluable tool IMHO.


My reasons why I'm trying REAL HARD not to use the SCM:
1. my experience says that it will add crashes... I don't like crashes
2. I have my own internal system for when I work alone that was in place WAY BEFORE the scm was offered. And mine works.
3. From what I could gathered, SCM works most of the time -IF- you are using it locally, with a FAAAAST network... However, when I NEED to use it, it's remotely, via the web, for a customer, and in that case, even though I have a 15MB adsl line, it's a nightmare (always waiting for it, crashes, etc)... It is coming of course from the A in adsl.

Finally, as for why, after so much time, the scm is STILL not working correctly, I do have an hypothesis: PCSOFT has a good and fast internal network, and that is the ONLY case in which they are testing it.

So for anybody working alone out there, I would say this: try the SCM. If it works for you and you don't have any problem in your configuration, good for you... But if like me you see a lot of little things that are just not right, you can EASILY do all the things that the scm does without it:
- Storing a branch = copying in a separate directory
- Merging changes from different versions : the compare tool is available in the file menu
- Maintaining a history of change: personally I just write it down in a method of my clproject class (the HISTORY method, if you can believe it)...

And for those working as a team, YES it is possible to work without a scm. I did that for 6 years when I was working in Louisiana. It's a pain in the butt, true, but assigning ownership of windows/classes/reports to each developer and integrating their changes in a master version every week is something I have done for about 300 weeks.

You could even develop and external tool to manage that and block master version of object in a master directory if needed, so that you don't have to keep track of it manually. Yes, I know, it wouldn't be INTEGRATED in the UI, but it would be a step in the right direction. With semi-automatic reintegration in the main project and automatic bightly build, it could be a very simple and useful tool.

And to answer Peter about using ALL the tools offered and ALL of them having to work. In a perfect world, I would agree with you. However, I have been developing under WINDOWS for the last 25 years or so, so I know for a fact that we are very far away from a perfect world. Therefore I find solutions that work FOR ME... And I share them when asked bout them... They are not the only solution, nor perfect ones, just ones working for me.

Best regards

von Fabrice Harari - am 19.01.2018 11:23
Quote
Fabrice
(that, as you can see, I'm loading and overloading) and the WX looses contact with the dungles (vtable error)


Hi Fabrice, my son and myself we're fighting the damned vtable error for a long time now. It's not a daily "guest" but it visits at least twice or three times a week. Sometimes with desastrous loss of work time. Oh yes, we have Windows 10 prof. on all of our machines and vtable hits where it finds us, even on computers on customer sites, on computers with different processors, different RAM size, different speed classes. It hits us on my XEON with 12 Gb RAM as well as on Pentium type machines with barely 4 gb RAM. I'm not convinced that it has anything to do with the dongle. It mostly comes up during repetetive operations, but sometimes hits out of nowhere when changing the analysis.

The problem with the vtable error prevented my son to employ the SCM. He has a big project (1000+ windows and nearly a million LOC) and he'd like to see it there. No way. The problem is that this vtable error very often hits when starting & opening the project from SCM. WD asks for a recompile after the vtable error. A single recompile through SCM takes about one hour for that project!

von GuenterP - am 19.01.2018 16:55
Thanks for your replies, glad to see that we're not the only ones having troubles when using the SCM, so maybe our crashes may be related to that. And I also think some of our crashes may be due to windows 10 updates and stuff like that, I also sometimes work with several projects open in the 3 products of PC Soft and we haven't had much crashes that aren't related to usb dongles and SCM, so I think that solved my questions. Thanks!

von Luis Antonio Gutiérrez Flores - am 19.01.2018 21:33
Hi Guenter,

Quote
GuenterP
The problem with the vtable error prevented my son to employ the SCM. He has a big project (1000+ windows and nearly a million LOC) and he'd like to see it there. No way. The problem is that this vtable error very often hits when starting & opening the project from SCM. WD asks for a recompile after the vtable error. A single recompile through SCM takes about one hour for that project!


Well, as I said, I'm trying real hard NOT to use the SCM, however, I'm pretty sure that in my case, the vtable errors are coming each time windows usb system crashes and restart... It's easy for me to see it because at the same time my USBtohdmi screen are becoming black then coming back on.

Also, I have seen that often (not always), it is happening when there is a big process running (100% on the hard drive, or very big network transfer), as if the system didn't have enough resources for the USB system during that time. Of course, considering my hardware configuration, that is not a common occurrence, which MAY explain why I have way less crashes than others. I had the problem by example when I was using a fast external hard drive on the USB 3 and transferring data like crazy... The USB system managed several times to shoot itself in the foot, and each time I got a vtable error in ALL the open WX editors.

Now, because I see the problem happening with OTHER stuff than WX (my screens, in that case), I'm pretty user it's coming from the crappy windows multitasking and USB management.

What you are describing seems to match my observations, what with the huge SCM network transfers/hard disk writing...

I'm not sure if that will help your son circumvent his problem, but he may want to try observing the % of use of each subsystem while trying the SCM opening yo are describing. I think there is a good chance he will see a subsystem running at 100% for a few seconds, THEN the vtable error happening... If that is the case, improving on that aspect of his configuration MAY solve the problem, or at least make it less frequent.

Best regards

von Fabrice Harari - am 22.01.2018 11:01
Hi all,

We've been running around 4+ developers now for many, many years with SCM and I'm always amazed when I hear of people having issues with it and have assisted a few of these folks in the past.

While we have had the occasional hiccup it is fairly rare. I've got SCM's running on both Dell and IBM servers on Server 2008 / 2012.

A few years ago, they (PCSoft) didn't do a good job of gracefully detecting terminated sockets and reconnecting which would cause issues. But for us that has been about it.

I have to say that I'm a big fan of the SCM and since I use several different source code management products for different projects, I seen the same exact problems in the other products.

I wish I could say that "problems are typically caused by xxx and xxx", but I work with both onsite and remote based SCM's, although in all this time the routers have always been Mikrotik based... and those devices have been extremely reliable for me. I've got them littered all over the place.

If I can be of any assistance just let me know.

Best regards,
Ken

von KenKnight - am 22.01.2018 23:40
Hi Fabrice,
thank you for your impressive reasoning in the mysterious vtable case! Could it be that switching over to a parallel dongle is one of the solutions? No USB - no vtable error. I still have two old WD parallel dongles, maybe we should upgrade one of them to v23 and observe the resulting behaviour?

von GuenterP - am 23.01.2018 06:12
Hi

Been following this interesting discussion.

>NEVER using the SCM

Thanks for the heads up. Never seen the need to use that where projects are in a single developer environment.

Cheers
Andre

von André Labuschagné - am 23.01.2018 17:44
@Guenter,

I suppose you could try -IF- :

1. You still have parallel ports on your PC (in my case, it's a laptop, and that would mean a //toUSB adapter, which clearly is NOT an improvement)
2. it's possible to upgrade a // dongle to 23 (I have no idea, as I haven't seen a // dongle in at least 15 years).

If 1 and 2 are possible, then it could be a good way to validate my USB hypothesis, but it clearly wouldn't be a solution for all the people owning only usb dongles and having the problem...

Another way would be to use the dongle software emulation system available somewhere on the web... Let's be clear, I am NOT advocating any kind of hacking, as this solution requires a dump of the content of your hardware drive to work... so it"s merely replacing the physical dongle by a piece of software in memory, and that means that it potentially -COULD- solve the vtable error problem, as it would NOT (at least physically) rely on the USB system...

Don't ask me where to find it, as I'm not using it... I know it's there and functioning as I know some developers using it when they are traveling, to avoid the stress of loosing their physical dongle. I also know that you have to BUY it, it's not a free hack system, it's an extra cost.

Best regards

von Fabrice Harari - am 24.01.2018 12:13
I did try that Emulation system for a brief period. Not to hack PCSoft but to see if I could resolve a temporary problem.

However it failed when I updated to the latest Wx21 version. Worked fine for the first 2 Wx21 releases but then stopped working.

Embarassingly however I sent a bug report to PCSoft and they detected it on my system (I had to send them a full dump for an issue I had) and understandably I got a very nasty response from them. It took an awful lot to convince them I was genuine.

So there is emulation software out there, it's not cheap (I had a trial) and I believe PCSoft have put something in the latest releases to prevent use.

And of course I must make it clear I do NOT advocate use of such software.

von John Fligg - am 24.01.2018 13:10
Zur Information:
MySnip.de hat keinen Einfluss auf die Inhalte der Beiträge. Bitte kontaktieren Sie den Administrator des Forums bei Problemen oder Löschforderungen über die Kontaktseite.
Falls die Kontaktaufnahme mit dem Administrator des Forums fehlschlägt, kontaktieren Sie uns bitte über die in unserem Impressum angegebenen Daten.