Please be aware that the content in SAP SQL Anywhere Forum will be migrated to the SAP Community in June and this forum will be retired.

At every start of a .net program using the .net driver for SQLA the file dbdata16.dll is written again. This will usually be checked by any anti virus software. On a server system with multiple background programs this behavior generates an unnecessary workload.

Just a sidenote: even when the DLL is already loaded, the programs will search for it afterwards in the GAC.

Feature request: Only write dbdata16.dll when it is necessary (e.g. an update, or file is not existing)

asked 11 May '15, 03:51

Martin's gravatar image

accept rate: 14%

I'd think that this is at least documented behaviour:

The SQL Anywhere .NET Data Provider dbdata DLL

When the SQL Anywhere .NET Data Provider is first loaded by a .NET application (usually when making a database connection using SAConnection), it unpacks a DLL that contains the provider's unmanaged code. The file dbdata16.dll is placed by the provider in a subdirectory of the directory identified using the following strategy. [...]

(11 May '15, 06:10) Volker Barth
Replies hidden

I know, therefore I asked for a feature change

(13 May '15, 05:22) Martin

Re: Just a sidenote: even when the DLL is already loaded, the programs will search for it afterwards in the GAC.

I cannot see this behavior.

(07 Dec '17, 10:10) JBSchueler

A fix is forthcoming that will change this behavior. If the dbdata DLL is present, the provider will load it and do a version check. If that passes, it will use it. If not, then it will try to delete it, and then move on.

Tip: Currently, the provider attempts to delete the DLL first and, if this fails, then it will load it and check the version. So if you make the DLL read-only, you will get the behaviour you are looking for. Strange but true.

permanent link

answered 07 Dec '17, 10:16

JBSchueler's gravatar image

accept rate: 20%

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 11 May '15, 03:51

question was seen: 4,426 times

last updated: 07 Dec '17, 10:16