May 18th, 2011, 01:02 PM
defaultNChar property causing significant performance degration using Spring...
By requirement, we need to be able to ingest international chars into our Oracle database.
Previously to Spring, when direct interfacing layer was done with direct JDBC calls, all it was needed was to use the "setFormOfUse" (for each of the fields that we wanted to explicitly convert) before creating a Prepared Statement and doing a DB insert/update...
However, now with the Spring framework we found out that this could be done with the adding of this env property: -Doracle.jdbc.defaultNChar=true
However, as the Oracle documentation mentions, this implies a severe performance degradation as all VARCHAR column types are now converted (including the ones which are not needed).
We have tried enabling this property but the performance was to low to be used on our production environment.
Is there another method of circumventing this limitation with the Spring Framework? For instance, tell Spring no to apply the generic conversion to all fields but only to certain ones like the NVARCHAR2 fields?
This limitation has a major impact on our Production systems using Spring, since we have users across the world and we're currently facing data corruption for those users which enter international characters in their user profile.
Any help/suggestions on how to solve this issue, would be greatly appreciated
Thank you all and keep up the good work...
All in all, Spring is a great framework...but this is a serious limitation...
Last edited by thygizmo; May 19th, 2011 at 02:31 AM.
Tags for this Thread