Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 3 of 3 total
Thread Access denied error to table #####
Thu, Nov 1 2007 10:31 AMPermanent Link

"Brian Kennedy"
Hello.  Using DBISAM 4.24 Build #1

We have customers receiving "Access denied error to table #####" from time
to time which from what I understand are temporary tables. The temporary
##### files are most likely being generated by the dynamic queries we have
executing in our application.  However, I do not fully understand where
these numeric temporary files are being generated or if I have control over
where they are being generated.  This is what I have done:

- The file extensions for Engine.TableDataTempExtension, etc are assigned to
create as .TAT, .TDX, and .TLB to avoid anti-virus software restricting the
creation of these files.
- Don't know if this matters but I have set the Session's "PrivateDir" to be
the user's temporary directory on their local computer.

Questions:

1) Where exactly are these numeric temporary files created when running in
"stLocal" session mode?
2) Where exactly are these numeric temporary files created when running in
"stRemote" session mode?
3) They must be creating in an area where the user does not have
permissions.  Can I control their creation location to avoid the "Access
Denied" errors such assigning them to create in their local "Temp" folder?

Thank you.

Brian Kennedy
DBISAM 4.24 Build #1

Thu, Nov 1 2007 12:38 PMPermanent Link

Eryk Bottomley
Brian,

> - Don't know if this matters but I have set the Session's "PrivateDir" to be
> the user's temporary directory on their local computer.

In stLocal mode, that is where the temporary files will be created/stored.

> 1) Where exactly are these numeric temporary files created when running in
> "stLocal" session mode?

Session.PrivateDir;

> 2) Where exactly are these numeric temporary files created when running in
> "stRemote" session mode?

In the server's temporary directory which is a server configuration
setting. See:- Engine.GetServerConfig, Engine.ModifyServerConfig and the
SrvAdmin utility. You might want to look at
Engine.CreateTempTablesInDatabase as well (though it doesn't apply to
query result sets, on 'restructure' type operations).

> 3) They must be creating in an area where the user does not have
> permissions.  Can I control their creation location to avoid the "Access
> Denied" errors such assigning them to create in their local "Temp" folder?

In the case of an stRemote session what matters is the permissions
assigned to the account under which the server is running.

Eryk
Thu, Nov 1 2007 4:39 PMPermanent Link

Tim Young [Elevate Software]

Elevate Software, Inc.

Avatar

Email timyoung@elevatesoft.com

Brian,

<< 1) Where exactly are these numeric temporary files created when running
in "stLocal" session mode?
2) Where exactly are these numeric temporary files created when running in
"stRemote" session mode?
3) They must be creating in an area where the user does not have
permissions.  Can I control their creation location to avoid the "Access
Denied" errors such assigning them to create in their local "Temp" folder?
>>

Everything Eryk said is 100% correct.  In addition, if you know that you're
always using the proper temporary files directory under Windows, you may
want to double-check and make sure that the AV software isn't interfering
again, even though the file extensions have changed.  Unfortunately, the
only way to do this is to remove the AV software and see if that corrects
the issue.

--
Tim Young
Elevate Software
www.elevatesoft.com

Image