Error from .Net Provider - CLI2: BADMOVEMODE(387)

Connectivity
PGF
Fan

Error from .Net Provider - CLI2: BADMOVEMODE(387)

Hi,

I'm trying to use the new .Net provider but get an error when opening the connection - CLI2: BADMOVEMODE(387).

From the messages manual:

387 BADMOVEMODE loc_mode cannot be set to 'N' in Buffer Mode.
Explanation: The dbcarea parameters loc_mode & parcel_mode are not compatible.
Remedy: Correct the parameter combination.

The connection string (built via TdConnectionStringBuilder) is:

Connection Timeout=30;Database=financial;User Id=DBC;Data Source=DemoTDAT;Connection Pooling=False

(the Password is suppressed)

The target is the demo Teradata V2R5 running on localhost. I can connect to it from my program via ODBC. Also while experimenting I've had various other error messages due to incorrect Data Source, User Id etc. Once I sorted out those parameters the BADMOVEMODE thing happens. So I feel I'm close but something breaks between the .Net provider and CLI2.

Any suggestions ?
8 REPLIES
Enthusiast

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

I also am getting the error message "BadMoveMode(387)" when using the NQuery application that comes with the Teradata .NET Data Provider.

I have fixed the issue with the (Data Source) name being (dbc) and that matching the entry in the Windows Hosts file of

204.22.xx.yy dbcCOP1

xx and yy are used to avoid disclosing entire IP address.

It starts to logon then I get the BadMoveMode error message.

Any suggestions would be appreciated.
Teradata Employee

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

.NET Data Provider for Teradata Release 1 requires CLI Version 4.8.1.2.
Please uninstall CLI and install CLI Version 4.8.1.2.

.NET Data Provider for Teradata Release 1.0 utilizes Teradata Call-Level
Interface (CLI) to communicate with Teradata Database. CLI utilizes Shared
ICU Libraries for Teradata and Teradata Generic Security Services. Therefore
dependencies are:

a) Teradata Call-Level Interface Version 4.8.1.2
b) Shared ICU Libraries for Teradata Version 1.1.1.0
c) Teradata Generic Security Services Version 6.1.0.7

PGF
Fan

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

Thank you for the suggestion. However those are the exact versions that I installed prior to the provider. And I uninstalled the previous CLI version before installing 4.8.1.2.

I've tried on a different machine with the same outcome.

I'm waiting for the next point release before trying again.

Regards.
Teradata Employee

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

Search for wincli32.dll on your hard drive.
I think you will find an older version of wincli32.dll in Windows\System32 directory.

Also, you can download ListDlls from www.sysinternals.com. It will help you pinpoint the version of CLI loaded into the process and the full path to it.

PGF
Fan

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

You are right ! wincli32.dll in \Windows\System is V4.7.0.0.

V4.8.1.2 exists in \Program files\NCR\Teradata Client\cliv2.

There are multiple copies of V4.6.1.0 in the various product directories under \Program files\NCR\TDAT that are all installed from the Demo CD.

What is your advice on how to fix this ? Do I just delete or replace the version in \Windows\System ? Are there any other related files or side effects to deal with.

Thank you very much for the information so far.

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

I don't know exactly what is installed from the Demo CD, but I suggest renaming the older version of CLI in the System32 directory, in case there are dependencies on a software package in the Demo CD. These files should be renamed, so that the newer installed CLIv2 is picked up - wincli32.dll, terasso.dll, tdusr32.dll and localisation.dll.

Once you get it up and running you can download listdlls from sysinternals, under the process and threads utility section. Listdlls lists by either process name or process id. Use it to verify the correct dll versions are loaded for your application.
Teradata Employee

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

Also look for TeraGss.dll in Windows\System32 directory and rename it.
TeraGSS much like CLI is no longer installed into Windows\System32 directory.
Also, TW 8.1 Demo CD is now available from http://www.teradata.com/t/page/156360/

PGF
Fan

Re: Error from .Net Provider - CLI2: BADMOVEMODE(387)

I moved that list of files out of \Windows\System32 as suggested. My application can now connect and execute queries. I also needed to set PersistSecurityInfo to true as suggsted by shaw in another thread.

Query Assistant still connects fine so no adverse side effect there from removing the old WinCli and friends.

Thank you to 'shaw' and 'cc151010' for the help.

I have ordered TW 8.1 Demo CD. Just hope the install/uninstall process is a bit slicker with a few less separate entries ! Gosh what a bother to remove everything.

Regards.