My Oracle Support Banner

Batch Insert Of Data Sometimes Leaves "~" (Tilde) In A Number Field Using The -d64 Parameter In The Command Line (Doc ID 1134992.1)

Last updated on MARCH 08, 2017

Applies to:

JDBC - Version 11.1.0.7 and later
Information in this document applies to any platform.

Symptoms

On : 11.1.0.7 version, JDBC for Java

JDBC batch loading size of 5000 results in some rows having "~" char displayed in a NUMBER field. DUMP() shows that value is corrupted ("Typ=2 Len=1: 192").
It was found that the usage of a java VM parameter causes the data corruption.
The JVM parameter is –d64.

From the Sun website:

-d32
-d64

Specifies whether the program is to be run in a 32-bit or 64-bit environment. On Solaris these correspond to the ILP32 and LP64 data models, respectively. The -d64 option may only be used on 64-bit Solaris systems.

Currently only the Java HotSpot Server VM supports 64-bit operation, and the "-server" option is implicit with the use of -d64. This is subject to change in a future release.

If neither -d32 nor -d64 is specified, the default is to run in a 32-bit environment. This is subject to change in a future release.

Our server AUSSW91 is a Sun Solaris 64-bit operating system. I suspect that the Oracle JDBC drivers have a problem when running in 64-bit mode.

Note that the Oracle database is on 64-bit Linux (OEL), but the java app server is 64-bit Solaris.

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Cause
Solution


This document is being delivered to you via Oracle Support's Rapid Visibility (RaV) process and therefore has not been subject to an independent technical review.
My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.