Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 7 of 7 total
Thread Query returns 9218 curiously, why?
Tue, Dec 17 2013 3:51 PMPermanent Link

John Taylor

I have an Insert query on a local data table using dbisam v4.35, this query
has been running fine for years now and suddenly today, the query throws
exception with error number 9218.  I traced in and found the real culprit is
the function OSFileWrite in unit dbisamlb.  I added a GetLastError call and
found the windows.writefile function is failing with 'Access is Denied'.

Now, the strange part...  I can create a new test app, run the same query on
the same table with no error at all, same from dbsys - no error at all.

I look at the files in windows explorer and all the files (.dat,.blb,.idx)
show 'Everyone' security principal with full control, so seemingly no
restrictions.

I have done everything I can think of, power-cycling the system, you name it
but still cannot run my insert query.

Anyone have any ideas ?  I know this is not a DBIsam problem but hopefully
someone here can steer me in the right direction

JT
Wed, Dec 18 2013 3:30 AMPermanent Link

Walter Matte

Tactical Business Corporation

Does the query generate  a temporary and  is it the temporary file that has the error.  Is Antivirus software scanning the folder where temporary files are being created?

Walter
Wed, Dec 18 2013 6:14 AMPermanent Link

John Taylor

Actually, just to be sure I disabled anti-virus temporarily and the problem
still occurs.  I have even deleted the tables and recreated them which did
not resolve the problem.  The tables are created by one application and are
accessed by another application (the one with the problem) to insert
records.

The scorcher is that I can create a new test application which can
successfully run the insert sql  Frown

JT

"Walter Matte" wrote in message
news:D005F751-F19F-422F-A2B0-EDC6B5357729@news.elevatesoft.com...
> Does the query generate  a temporary and  is it the temporary file that
> has the error.  Is Antivirus software scanning the folder where temporary
> files are being created?
>
> Walter
>
Wed, Dec 18 2013 7:46 AMPermanent Link

Walter Matte

Tactical Business Corporation

Both programs compiled with same version of DBISAM?

Is access to the table over a network or on same machine?  Is it being accessed by more than one program at the same time when this happens (ie multi user).  I've had issues where SMB protocol had to be set to version 1 for network access.

What version of DBISAM.

Walter
Wed, Dec 18 2013 7:49 AMPermanent Link

Malcolm Taylor

John, I am with Walter on this one, are you sure the problem is not
with a temporary file.

As two apps are involved, do they share the same temp folder, and does
that/the foder(s) assign suitable permisions no matter who is the file
owner?

Malcolm
Wed, Dec 18 2013 8:56 AMPermanent Link

John Taylor

Just stumbled onto something...

The data folder is c:\faxserver3\data  the UNC notation is
\\JOHNTAYLOR-LAP\SFSERVER3

A share has been placed on the c:\faxserver3\data folder with name SFSERVER3
(computer name is JOHNTAYLOR-LAP)

If before executing the Query I set Query1.Databasename to the UNC notation,
I get the failure 'Access is denied', if instead, I set Query1.Databasename
:= 'c:\faxserver3\data' then the query executes without a problem.

I supposed something is mucked up with the share, have to check that out.

JT

"Walter Matte" wrote in message
news:645D2785-D285-4007-B818-32B552687756@news.elevatesoft.com...
> Both programs compiled with same version of DBISAM?
>
> Is access to the table over a network or on same machine?  Is it being
> accessed by more than one program at the same time when this happens (ie
> multi user).  I've had issues where SMB protocol had to be set to version
> 1 for network access.
>
> What version of DBISAM.
>
> Walter
>
Wed, Dec 18 2013 9:05 AMPermanent Link

John Taylor

As it turns out the permissions on the share were not set correctly, I added
the 'Everyone' security principal with full control and that allowed me to
execute the query with the Query1.databasename set to the UNC path name.  I
now recall having reset the share from another folder but I did not reset
the permissions.  I would have thought windows by default would give the
share creator full control, not so I suppose and I don't ever recall having
to manually set the permissions on a share, but my memory is not what it
used to be Frown

Thanks Walter and Malcolm for answering, I guess if I had not stumbled on
this it would be one of those lingering mysteries Frown

JT

"John Taylor" <jcta@snappysoftware.com> wrote in message
news:50FCF550-2EA9-47C7-9CDF-E1ED19764CB7@news.elevatesoft.com...
> Actually, just to be sure I disabled anti-virus temporarily and the
> problem still occurs.  I have even deleted the tables and recreated them
> which did not resolve the problem.  The tables are created by one
> application and are accessed by another application (the one with the
> problem) to insert records.
>
> The scorcher is that I can create a new test application which can
> successfully run the insert sql  Frown
>
> JT
>
> "Walter Matte" wrote in message
> news:D005F751-F19F-422F-A2B0-EDC6B5357729@news.elevatesoft.com...
>> Does the query generate  a temporary and  is it the temporary file that
>> has the error.  Is Antivirus software scanning the folder where temporary
>> files are being created?
>>
>> Walter
>>
Image