<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: ORA-01466: unable to read data - table definition has changed</title>
	<atom:link href="http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html/feed/" rel="self" type="application/rss+xml" />
	<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html</link>
	<description>Oracle Certified Master</description>
	<pubDate>Mon, 01 Dec 2008 17:50:13 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.5</generator>
		<item>
		<title>By: roger foley</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-8124</link>
		<dc:creator>roger foley</dc:creator>
		<pubDate>Mon, 22 Sep 2008 23:03:07 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-8124</guid>
		<description>i had this set transaction read only within a package.

When its sys, its ok, when its not sys, its a problem.</description>
		<content:encoded><![CDATA[<p>i had this set transaction read only within a package.</p>
<p>When its sys, its ok, when its not sys, its a problem.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Asif Momen</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4491</link>
		<dc:creator>Asif Momen</dc:creator>
		<pubDate>Sun, 12 Aug 2007 10:30:02 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4491</guid>
		<description>Hi Laurent,

Rightly said. I was testing with user SYS. Below is a test as both SYS and non-SYS user.


SQL&#62; conn test/test@mytestdb
Connected.
SQL&#62; 
SQL&#62; 
SQL&#62; create table t(x number);

Table created.

SQL&#62; 
SQL&#62; set transaction read only ;

Transaction set.

SQL&#62; 
SQL&#62; select * from t;
select * from t
              *
ERROR at line 1:
ORA-01466: unable to read data - table definition has changed


SQL&#62; drop table t;

Table dropped.

SQL&#62; conn sys/password@mytestdb as sysdba
Connected.
SQL&#62; create table t(x number);

Table created.

SQL&#62; set transaction read only ;

Transaction set.

SQL&#62; select * from t;

no rows selected</description>
		<content:encoded><![CDATA[<p>Hi Laurent,</p>
<p>Rightly said. I was testing with user SYS. Below is a test as both SYS and non-SYS user.</p>
<p>SQL&gt; conn test/test@mytestdb<br />
Connected.<br />
SQL&gt;<br />
SQL&gt;<br />
SQL&gt; create table t(x number);</p>
<p>Table created.</p>
<p>SQL&gt;<br />
SQL&gt; set transaction read only ;</p>
<p>Transaction set.</p>
<p>SQL&gt;<br />
SQL&gt; select * from t;<br />
select * from t<br />
              *<br />
ERROR at line 1:<br />
ORA-01466: unable to read data - table definition has changed</p>
<p>SQL&gt; drop table t;</p>
<p>Table dropped.</p>
<p>SQL&gt; conn sys/password@mytestdb as sysdba<br />
Connected.<br />
SQL&gt; create table t(x number);</p>
<p>Table created.</p>
<p>SQL&gt; set transaction read only ;</p>
<p>Transaction set.</p>
<p>SQL&gt; select * from t;</p>
<p>no rows selected</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laurent Schneider</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4373</link>
		<dc:creator>Laurent Schneider</dc:creator>
		<pubDate>Thu, 26 Jul 2007 17:14:20 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4373</guid>
		<description>I made a test on my notebook by running the script 1000 times on various versions

10.2.0.3 : reproduced 97.2%
9.2.0.8 : reproduced 96.9%
10.1.0.5 : reproduced 98.7%
11.1.0.5 beta : reproduced 94.8%

all versions affected, none consistently</description>
		<content:encoded><![CDATA[<p>I made a test on my notebook by running the script 1000 times on various versions</p>
<p>10.2.0.3 : reproduced 97.2%<br />
9.2.0.8 : reproduced 96.9%<br />
10.1.0.5 : reproduced 98.7%<br />
11.1.0.5 beta : reproduced 94.8%</p>
<p>all versions affected, none consistently</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laurent Schneider</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4372</link>
		<dc:creator>Laurent Schneider</dc:creator>
		<pubDate>Thu, 26 Jul 2007 16:53:25 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4372</guid>
		<description>what is your user? If you use SYS, it is not reproducible, because set transaction read only does not work for SYS</description>
		<content:encoded><![CDATA[<p>what is your user? If you use SYS, it is not reproducible, because set transaction read only does not work for SYS</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laurent Schneider</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4343</link>
		<dc:creator>Laurent Schneider</dc:creator>
		<pubDate>Wed, 25 Jul 2007 09:29:08 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4343</guid>
		<description>interesting! thanks for the test case</description>
		<content:encoded><![CDATA[<p>interesting! thanks for the test case</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Asif Momen</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4342</link>
		<dc:creator>Asif Momen</dc:creator>
		<pubDate>Wed, 25 Jul 2007 08:02:52 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4342</guid>
		<description>Hi Laurent,

My database server is Oracle 10g Release 2 on AIX box, and my client is on Windows. I reset the time of my client to be +2 hours and -2 hours of the server time and ran the test, but I did not face ORA-01466 error. I placed the create table, set transtaction, and the select in a script and ran it. 

Following is the ouput of my run (in both cases where my client time is +2 and -2 hours from the database servers time).

SQL&#62; @c

Table created.


Transaction set.


no rows selected


Following are the contents of my script "c.sql"

create table t(x number);

set transaction read only ;

select * from t;


I couldn't reproduce the ORA-01466 error.</description>
		<content:encoded><![CDATA[<p>Hi Laurent,</p>
<p>My database server is Oracle 10g Release 2 on AIX box, and my client is on Windows. I reset the time of my client to be +2 hours and -2 hours of the server time and ran the test, but I did not face ORA-01466 error. I placed the create table, set transtaction, and the select in a script and ran it. </p>
<p>Following is the ouput of my run (in both cases where my client time is +2 and -2 hours from the database servers time).</p>
<p>SQL&gt; @c</p>
<p>Table created.</p>
<p>Transaction set.</p>
<p>no rows selected</p>
<p>Following are the contents of my script &#8220;c.sql&#8221;</p>
<p>create table t(x number);</p>
<p>set transaction read only ;</p>
<p>select * from t;</p>
<p>I couldn&#8217;t reproduce the ORA-01466 error.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Carlton</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4275</link>
		<dc:creator>Bob Carlton</dc:creator>
		<pubDate>Tue, 17 Jul 2007 06:11:43 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4275</guid>
		<description>Yes, copy/paste also generates the error.  I tried it with host sleep 15, 5 and even 1 second and they were all ok. ( see commented sections below).  


-- copy/pasted and got an error --
SQL&#62; drop table t
  2  /

Table dropped.

SQL&#62;
SQL&#62; create table t( x number ) 
  2  /

Table created.

SQL&#62;
SQL&#62; set transaction read only;

Transaction set.

SQL&#62;
SQL&#62; select * from t;
select * from t
              *
ERROR at line 1:
ORA-01466: unable to read data - table definition has changed


SQL&#62;


------copy/pasted w  sleep 15 seconds, ok ----
SQL&#62; drop table t
  2  /

Table dropped.

SQL&#62;
SQL&#62; create table t( x number ) 
  2  /

Table created.

SQL&#62;
SQL&#62; host sleep 15

SQL&#62;
SQL&#62; set transaction read only;

Transaction set.

SQL&#62;
SQL&#62; select * from t;

no rows selected



------copy/pasted w  sleep 5 seconds, ok ----
SQL&#62; drop table t
  2  /

Table dropped.

SQL&#62;
SQL&#62; create table t( x number ) 
  2  /

Table created.

SQL&#62;
SQL&#62; host sleep 5

SQL&#62;
SQL&#62; set transaction read only;

Transaction set.

SQL&#62;
SQL&#62; select * from t;

no rows selected



------copy/pasted w  sleep 1 seconds! ok ----

SQL&#62; drop table t
  2  /

Table dropped.

SQL&#62;
SQL&#62; create table t( x number ) 
  2  /

Table created.

SQL&#62;
SQL&#62; host sleep 1;

SQL&#62;
SQL&#62; set transaction read only;

Transaction set.

SQL&#62;
SQL&#62; select * from t;

no rows selected

SQL&#62;</description>
		<content:encoded><![CDATA[<p>Yes, copy/paste also generates the error.  I tried it with host sleep 15, 5 and even 1 second and they were all ok. ( see commented sections below).  </p>
<p>&#8211; copy/pasted and got an error &#8211;<br />
SQL&gt; drop table t<br />
  2  /</p>
<p>Table dropped.</p>
<p>SQL&gt;<br />
SQL&gt; create table t( x number )<br />
  2  /</p>
<p>Table created.</p>
<p>SQL&gt;<br />
SQL&gt; set transaction read only;</p>
<p>Transaction set.</p>
<p>SQL&gt;<br />
SQL&gt; select * from t;<br />
select * from t<br />
              *<br />
ERROR at line 1:<br />
ORA-01466: unable to read data - table definition has changed</p>
<p>SQL&gt;</p>
<p>&#8212;&#8212;copy/pasted w  sleep 15 seconds, ok &#8212;-<br />
SQL&gt; drop table t<br />
  2  /</p>
<p>Table dropped.</p>
<p>SQL&gt;<br />
SQL&gt; create table t( x number )<br />
  2  /</p>
<p>Table created.</p>
<p>SQL&gt;<br />
SQL&gt; host sleep 15</p>
<p>SQL&gt;<br />
SQL&gt; set transaction read only;</p>
<p>Transaction set.</p>
<p>SQL&gt;<br />
SQL&gt; select * from t;</p>
<p>no rows selected</p>
<p>&#8212;&#8212;copy/pasted w  sleep 5 seconds, ok &#8212;-<br />
SQL&gt; drop table t<br />
  2  /</p>
<p>Table dropped.</p>
<p>SQL&gt;<br />
SQL&gt; create table t( x number )<br />
  2  /</p>
<p>Table created.</p>
<p>SQL&gt;<br />
SQL&gt; host sleep 5</p>
<p>SQL&gt;<br />
SQL&gt; set transaction read only;</p>
<p>Transaction set.</p>
<p>SQL&gt;<br />
SQL&gt; select * from t;</p>
<p>no rows selected</p>
<p>&#8212;&#8212;copy/pasted w  sleep 1 seconds! ok &#8212;-</p>
<p>SQL&gt; drop table t<br />
  2  /</p>
<p>Table dropped.</p>
<p>SQL&gt;<br />
SQL&gt; create table t( x number )<br />
  2  /</p>
<p>Table created.</p>
<p>SQL&gt;<br />
SQL&gt; host sleep 1;</p>
<p>SQL&gt;<br />
SQL&gt; set transaction read only;</p>
<p>Transaction set.</p>
<p>SQL&gt;<br />
SQL&gt; select * from t;</p>
<p>no rows selected</p>
<p>SQL&gt;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laurent Schneider</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4269</link>
		<dc:creator>Laurent Schneider</dc:creator>
		<pubDate>Fri, 13 Jul 2007 18:50:19 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4269</guid>
		<description>what about copy pasting all command in one step? I think it is due to the time you need to type "set transaction readonly [enter]"</description>
		<content:encoded><![CDATA[<p>what about copy pasting all command in one step? I think it is due to the time you need to type &#8220;set transaction readonly [enter]&#8220;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bob Carlton</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4267</link>
		<dc:creator>Bob Carlton</dc:creator>
		<pubDate>Fri, 13 Jul 2007 17:39:57 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4267</guid>
		<description>Are you running this from a script? i.e @myfile.sql

I get the same error when run via a sqlplus script.

When I key each command in one by one at the prompt no error.

I believe it's the SQL cache. 

When keying (in my normal slow manner. ha ha.) it doesn't seem to matter if my client time is different then the server time.


using sqlplus script ----------

SQL&#62; @test

Table dropped.


Table created.


Transaction set.

select * from t
              *
ERROR at line 1:
ORA-01466: unable to read data - table definition has changed


hand keyed------

SQL&#62; drop table t;

Table dropped.

SQL&#62; create table t( x number);

Table created.

SQL&#62; set transaction read only;

Transaction set.

SQL&#62; select * from t;

no rows selected

SQL&#62;</description>
		<content:encoded><![CDATA[<p>Are you running this from a script? i.e @myfile.sql</p>
<p>I get the same error when run via a sqlplus script.</p>
<p>When I key each command in one by one at the prompt no error.</p>
<p>I believe it&#8217;s the SQL cache. </p>
<p>When keying (in my normal slow manner. ha ha.) it doesn&#8217;t seem to matter if my client time is different then the server time.</p>
<p>using sqlplus script &#8212;&#8212;&#8212;-</p>
<p>SQL&gt; @test</p>
<p>Table dropped.</p>
<p>Table created.</p>
<p>Transaction set.</p>
<p>select * from t<br />
              *<br />
ERROR at line 1:<br />
ORA-01466: unable to read data - table definition has changed</p>
<p>hand keyed&#8212;&#8212;</p>
<p>SQL&gt; drop table t;</p>
<p>Table dropped.</p>
<p>SQL&gt; create table t( x number);</p>
<p>Table created.</p>
<p>SQL&gt; set transaction read only;</p>
<p>Transaction set.</p>
<p>SQL&gt; select * from t;</p>
<p>no rows selected</p>
<p>SQL&gt;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Laurent Schneider</title>
		<link>http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4250</link>
		<dc:creator>Laurent Schneider</dc:creator>
		<pubDate>Wed, 11 Jul 2007 15:40:40 +0000</pubDate>
		<guid isPermaLink="false">http://laurentschneider.com/wordpress/2007/07/keep-your-client-system-time-accurate.html#comment-4250</guid>
		<description>it is perhaps due to the non-accuracy of translation of the last ddl time to a scn ;)</description>
		<content:encoded><![CDATA[<p>it is perhaps due to the non-accuracy of translation of the last ddl time to a scn <img src='http://laurentschneider.com/wordpress/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p>
]]></content:encoded>
	</item>
</channel>
</rss>
