Can anyone please test if he can reproduce this bugs. You need 2 Databases to test with ab db link between.
[STAThread] static void Main(string[] args) { const string connectionstring = "user id=master;data source=<dbname here>;password=<password here>"; const string sql = "select :1 from dual@<name of a db-link here>"; //crashes also with every other select statement that uses strings via bind parameters over db-links Random rng = new Random(); // exception occures only with this values int len1 = rng.Next(43,166); int len2 = rng.Next(len1*4+1,666); //also crashes with combinations // len1=1 len2=5 // len1=1 len2=6 // len1=1 len2=7 // len1=1 len2=8 // len1=1 len2=9 // len1=1 len2=10 // len1=2 len2=7 // len1=2 len2=8 // len1=2 len2=9 // len1=2 len2=10 // with all other values of len1 and len2 it works fineOracleConnection conn = new OracleConnection(connectionstring); conn.Open(); using(OracleCommand cmd = conn.CreateCommand()) { cmd.CommandText = "alter system flush shared_pool"; cmd.ExecuteNonQuery(); } using(OracleCommand cmd = conn.CreateCommand()) { cmd.CommandText = sql; string val = CreateRandomStringWithLength(len1); cmd.Parameters.Add("anything",val); try { string result = (string)cmd.ExecuteScalar(); Console.WriteLine("Statement1: "+result); } catch(Exception ex) { Console.WriteLine("\nStatement1: Exception\n"+ex.Message); } } using(OracleCommand cmd = conn.CreateCommand()) { cmd.CommandText = sql; cmd.Parameters.Add("anything",CreateRandomStringWithLength(len2)); try { string result = (string)cmd.ExecuteScalar(); Console.WriteLine("Statement2: "+result); } catch(Exception ex) { Console.WriteLine("\nStatement2: Exception\n"+ex.Message); } } Console.ReadLine(); } private static string CreateRandomStringWithLength(int length) { string s = ""; for (int i = 0; i < length; i++) { s += (char)('C' + rng.Next(20)); } return s; }
I Always got this
Statement1: OUGCKNNUQHDNEJMDGHSLCGTKLJNCUOPCRRKLKLUSCTPLUIEUP (any string)
Statement2: Exception
ORA-01460: unimplemented or unreasonable conversion requested
ORA-02063: preceding line from NAB