473,785 Members | 2,443 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Corruption - how to MAKE it happen?

I am in a friendly debate with some co-workers... and my boss.

We use Access 2003 for the frontend (on workstations) as well as for
the backend (on a Dell PowerEdge running Windows 2000 server, SP4).
We have approx. 20 users *logged in* at any one time (over 300
userid's exist), but we have never run metrics to see how many on
average are accessing the database concurrently.

About once every few weeks, the database mysteriously becomes
corrupted.

One thing that seems pretty reliable is if my co-worker or I are in
design mode of a table and manually edit a record while someone else
is editing the same record via the frontend.

In addition, I thought that if I abnormally exited the program (CTRL-
ALT-DEL and kill the process while the program is loading, etc.), that
there would be a very good chance of corrupting the DB. Especially
(only?) if you killed it while it was accessing a record, before it
closed a recordset, etc.

Can anyone shed any light here? I have found several references
throughout this newsgroup, and even a Corruption FAQ:

http://www.granite.ab.ca/access/corruptmdbs.htm

but I would really like to know if abnormal termination would/should
do it. Random testing so far has been unable to reproduce the desired
corruption. I even tried running the code, setting a breakpoint in
the middle of a record operation, then CTRL-ALT-DELing the process.
No corruption.

Help?

Thanks.

Mar 22 '07
42 2126
Per David W. Fenton:
>What might work is running a SQL query updating a few thousand
records and powering off the system abruptly.

Or running a massive append and killing the process in the middle of
the append.
How about opening up the .MDB in a text editor like SPF and overtyping and/or
deleting a few characters?
--
PeteCresswell
Mar 23 '07 #11
Per The Frog:
but have found this an extremely difficult task to pin
anything down except certain environmental factors
The only one that I was able to find/fix was a bad NIC in one of the user's
machines.
My fallback position in a "mystery" situation is a .BAT file that runs every
night and keeps many, many (like a hundred...) copies of the back end.

The main rationale is that a DB can come up corrupted on day 1 and users can
open it on days 2, 3, 4, 5 and so-forth; find it's corrupted; mutter a few harsh
words; and jut get on with other work without telling anybody about it.

On each one of those days, another bad copy goes into the LAN backup scheme and
eventually the last good copy falls off the end of the process.

There are also scenarios where a .MDB becomes partially corrupted. It still
works, but it gets goofey under some circumstances and/or various tables aren't
right anymore but still function - and the DB gives no programmatic indication
of it's state when opened. In that scenario, a DB can go even longer without
being identified as corrupt.

--
PeteCresswell
Mar 23 '07 #12
"(PeteCresswell )" <x@y.Invalidwro te in
news:rb******** *************** *********@4ax.c om:
Per David W. Fenton:
>>What might work is running a SQL query updating a few thousand
records and powering off the system abruptly.

Or running a massive append and killing the process in the middle
of the append.

How about opening up the .MDB in a text editor like SPF and
overtyping and/or deleting a few characters?
Or opening it in Word.

But that's not realistic corruption -- it's going to be random
corruption. The other methods produce corruption that is made in the
process of Access attempting to maintain internal data structures.
And much of that will be recoverable. One byte out of place at the
top of an MDB file could perhaps wreck everything.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Mar 23 '07 #13
"(PeteCresswell )" <x@y.Invalidwro te in
news:ge******** *************** *********@4ax.c om:
My fallback position in a "mystery" situation is a .BAT file that
runs every night and keeps many, many (like a hundred...) copies
of the back end.
The one client of mine that's had corruption in the last year (and
who also has a very large data file with 3 tables each having 100s
of thousands of records) runs the FMS Agent overnight. It archives
into a zip file, and keeps as many back copies as you choose, and
then compacts the MDB. It was very helpful to me in troubleshooting
one of my *owh* errors earlier this week, as I was able to go back
and look at data before I'd made the fatal change and after, and
thus track down the cause (a big finger pointing back at myself!).

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Mar 23 '07 #14
Another part of the problem is that the application is used 24x7x365,
so to compact/repair, I need to kick users out of the system.

It's just that I *really* have this feeling that the corruption is
caused by people starting up the program (which takes a LONG time),
then deciding "You know what? I don't have time for this..." and they
give it the "3-Fingered Salute".

Mar 26 '07 #15
Doug, to test that theory, and possibly track down the culprit
hardware/user(s), consider logging users into and out of the database.

Those that log in but don't log out are suspect.

(The other factor might be to identify why it takes so long to start up, and
fix that problem.)

--
Allen Browne - Microsoft MVP. Perth, Western Australia
Tips for Access users - http://allenbrowne.com/tips.html
Reply to group, rather than allenbrowne at mvps dot org.

"Doug" <sp*******@gmai l.comwrote in message
news:11******** **************@ l75g2000hse.goo glegroups.com.. .
Another part of the problem is that the application is used 24x7x365,
so to compact/repair, I need to kick users out of the system.

It's just that I *really* have this feeling that the corruption is
caused by people starting up the program (which takes a LONG time),
then deciding "You know what? I don't have time for this..." and they
give it the "3-Fingered Salute".
Mar 26 '07 #16
Per Doug:
>Another part of the problem is that the application is used 24x7x365,
so to compact/repair, I need to kick users out of the system.

It's just that I *really* have this feeling that the corruption is
caused by people starting up the program (which takes a LONG time),
then deciding "You know what? I don't have time for this..." and they
give it the "3-Fingered Salute".
Sounds like a textbook case for moving the back end over to SQL Server.

Anybody else agree?
Any idea why it takes so long to start up? Might be some other issues there...
--
PeteCresswell
Mar 26 '07 #17
In light of what has been discussed in this topic I would have to
agree with the move to SQL server. A 24/7/365 needs a bit more
reliability than a JET back end can supply it seems. It simply may not
be worth the effort of running down the culprits when you can get a
free version of SQL Server Express and eliminate the problem as well
as a number of other benefits that SQL Server comes with.

I too am interested in the corruption issues, but it seems that
despite the best efforts of some of the most experienced people here
that it isnt actually possible to eliminate the problems, or even
necessarily detect and correct them! Lets face it, MDB files are a
good desktop database to work with, but for mission critical you
really need to move to something that gives you the stability you
need.

I would have to agree with Pete. Though I am not as experienced as
some here, and they may be able to come up with alternatives to
solving your problem, I would tend to think that 24/7/365 means shift
it to something that can operate 24/7/365 and be done with the
headaches.

The Frog

Mar 26 '07 #18
"(PeteCresswell )" <x@y.Invalidwro te in
news:86******** *************** *********@4ax.c om:
Per Doug:
>>Another part of the problem is that the application is used
24x7x365, so to compact/repair, I need to kick users out of the
system.

It's just that I *really* have this feeling that the corruption is
caused by people starting up the program (which takes a LONG
time), then deciding "You know what? I don't have time for
this..." and they give it the "3-Fingered Salute".

Sounds like a textbook case for moving the back end over to SQL
Server.

Anybody else agree?
Well, the startup issues aren't, but the 24/7 requirement certainly
is.
Any idea why it takes so long to start up? Might be some other
issues there...
Obviously if you've designed your app so that it takes so long to
load that users give up, it's *your* fault if they are corrupting
the database by killing the process. The easiest way to fix it is
judicious use of DoEvents so that something happens onscreen
periodically to tell them that the app is loading. I recently added
an unnecessary splash screen with 'Please wait while program loads"
before the switchboard comes up (when previously the the blank
Access window was all that was visible), and the users said "Oh!
You've done something to speed up the load time!" Nothing actually
changed behind the scenes -- all that changed was what users were
seeing, and it made them feel like the app was loading more quickly.

--
David W. Fenton http://www.dfenton.com/
usenet at dfenton dot com http://www.dfenton.com/DFA/
Mar 26 '07 #19
Per The Frog:
but it seems that
despite the best efforts of some of the most experienced people here
that it isnt actually possible to eliminate the problems, or even
necessarily detect and correct them!
I had a similar experience when my worst-case corruption scenario was going on:
beeeeeeg mutual fund, extremely sophisticated LAN people, the latest tools....
and nobody could pinpoint the problem.
--
PeteCresswell
Mar 26 '07 #20

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

10
1938
by: Arno R | last post by:
Hi all Yesterday I found a strange corruption-issue that I can't solve yet or actually point my finger at. I converted an A97 app to A2k. I have done this often enough so I didn't expect trouble here. Conversion seems OK and I start the app. BUT . . . Mainform doesn't work. Form comes up but none of the buttons react. Why not? I go to design view and see that code is not compiled. (compile-option is active) So I compile and go to normal...
19
2736
by: Mark C. | last post by:
The company I work for has been running Access 2000 on a Windows NT server with Opportunistic Locking turned off on the server without issue for almost a year. We have just switched to a Windows 2000 file server with service pack 3 installed and are now experiencing at least 2 corruptions a day. The registry setting for Opportunistic Locking that was on the Windows NT server does not exist on the Windows 2000 server so we can not make the...
5
2117
by: Upendra Agnihotram | last post by:
Hi, I am having Client-Server Access application. The source db resides on WinNT Server and some of the client systems are on Windows 2000 Professional. These days i am experiencing frequent corruption of the source database (nearly 3 to 4 times a day) which is on NT Machine?. Please let me know if there is any solution for this --Upendra Software Support Engineer
7
1919
by: Doug Vogel | last post by:
Hi All - I have a client for whom I developed an Access 2000 database. The database is split into 2 files - front-end (forms, queries, reports), and back-end (tables). An .mde file has been made for the front end file. Recently, they have been noticing some "problems" with the system. Basically this system creates invoices for their customers. They have been noticing that some of the invoices are now "wrong", specifically
47
4545
by: ship | last post by:
Hi We need some advice: We are thinking of upgrading our Access database from Access 2000 to Access 2004. How stable is MS Office 2003? (particularly Access 2003). We are just a small company and this is a big decision for us(!) It's not just the money it's committing to an new version of Access!
2
2637
by: Robert Oschler | last post by:
Need help with HEAP CORRUPTION and my MSVC 6 DLL I have a MSVC 6 DLL that I've written. It is used heavily by a Delphi 6 app I've written. For two months everything has been working fine. Then I changed some things in the code recently, and now I'm getting what looks like severe corruption of the heap. I am wondering if it is some strange interaction between the Delphi app and
8
3414
by: ranjeet.gupta | last post by:
Dear All Is the Root Cause of the Memory corruption is the Memory leak, ?? suppose If in the code there is Memory leak, Do this may lead to the Memory Corruption while executing the program ? In nut shell, what is/are the realtion/s between the Memory Leak and Memory Corruption. Juts Theoritical Assumtion below:
14
3367
by: =?Utf-8?B?UHVjY2E=?= | last post by:
Hi, I'm using VS2005 and .net 2.0. I'm creating an application that has 3 forms. I want allow users to move forward and backward with the forms and retain the data users have entered. I thought I'll make the inactive forms invisible but this is creating a memory corruption problem when user close the form2 or form3 and not the formMain. My main form has a Next button which makes the main form invisible and starts a new form which I'll...
8
1632
by: Slez via AccessMonster.com | last post by:
I have read many resources regarding corruption, and implemented as much as possible to prevent it, but I have one user that encounders corruption of their front end database, when no-one else does. Is there something on this users station that could cause this? I'm just fishing for any ideas on possible causes, so any suggestions / tips are appreciated! -- Message posted via AccessMonster.com...
0
9647
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
9489
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
10162
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
0
9959
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8988
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7509
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5528
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
2
3665
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2893
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.