<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Oracle and other</title>
	<atom:link href="http://cristiancudizio.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://cristiancudizio.wordpress.com</link>
	<description>Appunti di lavoro di un DBA Oracle</description>
	<lastBuildDate>Wed, 14 Dec 2011 11:55:47 +0000</lastBuildDate>
	<language>it</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='cristiancudizio.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Oracle and other</title>
		<link>http://cristiancudizio.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://cristiancudizio.wordpress.com/osd.xml" title="Oracle and other" />
	<atom:link rel='hub' href='http://cristiancudizio.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Recovery Area Usage</title>
		<link>http://cristiancudizio.wordpress.com/2011/12/14/recovery-area-usage/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/12/14/recovery-area-usage/#comments</comments>
		<pubDate>Wed, 14 Dec 2011 11:55:40 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[11g]]></category>
		<category><![CDATA[Backup and Recovery]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=681</guid>
		<description><![CDATA[Da anni ormai sto rifinendo e testando degli script di backup di Oracle fatti da me pescando idee qua e la. In realtà la base di partenza fu uno script di shell passatomi da un consulente Oracle, script funzionante su Oracle 9iR2 ma probabilmente elaborato a sua volta per Oracle 8. Nel corso degli anni [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=681&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Da anni ormai sto rifinendo e testando degli script di backup di Oracle fatti da me pescando idee qua e la. In realtà la base di partenza fu uno script di shell passatomi da un consulente Oracle, script funzionante su Oracle 9iR2 ma probabilmente elaborato a sua volta per Oracle 8. Nel corso degli anni come dicevo ho apportato e continuo a fare modifiche e migliorie; avendo cominciato l&#8217;anno scorso a installare database versione 11gR2 ho apportato ulteriori modifiche, a parte le migliorie una in particolare è stata una modifica obbligata da una modifica portata dalla nuova release del database.</p>
<p>Con la versione 10g Oracle ha introdotto la cosiddetta &#8220;Recovery Area&#8221;, che io solitamente uso per gli Archive Log.  Essendo la gestione degli Archive Log una cosa importante, nel mio script di backup è inclusa una parte che controlla l&#8217;occupazione di spazio degli archive log ed eventualmente ne fa il backup o la cancellazione onde prevenire blocchi del database. Per fare tale controllo il mio script utilizza una query sulla vista<a href="http://docs.oracle.com/cd/B19306_01/server.102/b14237/dynviews_1110.htm#I1030377"> V$FLASH_RECOVERY_AREA_USAGE</a>, in particolare la query è:</p>
<p><pre class="brush: plain;">

select round(percent_space_used) from v$flash_recovery_area_usage where file_type='ARCHIVELOG';

</pre></p>
<p>Oggi scopro che tale vista non è più documentata in 11gR2, è sostituita da <a href="http://docs.oracle.com/cd/E11882_01/server.112/e25513/dynviews_2124.htm#sthref3432">V$RECOVERY_AREA_USAGE</a>, la vista con il vecchio nome però esiste ancora e infatti il mio script scritto per 10gR2 apparentemente funzionava anche su 11gR2. Dico apparentemente perché qualcuno in Oracle ha avuto la bella idea di fare un cambiamento ben più importante, cambiando la descrizione riportata nel campo FILE_TYPE per gli archive log da &#8220;ARCHIVELOG&#8221; a &#8220;ARCHIVED LOG&#8221;.  Nulla di che se non il fatto che la query utilizzata nella mia vecchia versione dello script on funzionava più, ragion per cui ho inaugurato la versione 11.2 del mio script di gestione dei backup su piattaforma linux.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/681/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/681/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/681/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=681&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/12/14/recovery-area-usage/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>ORA-01461 e VARCHAR2</title>
		<link>http://cristiancudizio.wordpress.com/2011/10/28/ora-01461-e-varchar2/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/10/28/ora-01461-e-varchar2/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 13:03:15 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Diario]]></category>
		<category><![CDATA[PL/SQL]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[long]]></category>
		<category><![CDATA[ora-01461]]></category>
		<category><![CDATA[utf8]]></category>
		<category><![CDATA[varchar2]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=672</guid>
		<description><![CDATA[Più volte mi è stato segnalato sulla nostra applicazione l&#8217;errore ORA-01461, il cui testo è &#8220;can bind a LONG value only for insert into a LONG column&#8220;. Prima di tutto è curioso che abbia dovuto risalire fino alla documentazione della versione 9.2 del database per rintracciare la documentazione dell&#8217;errore, quando tale errore l&#8217;ho riprodotto fino [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=672&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Più volte mi è stato segnalato sulla nostra applicazione l&#8217;errore <a href="http://download.oracle.com/docs/cd/B10501_01/server.920/a96525/e900.htm#ERRMG102">ORA-01461</a>, il cui testo è &#8220;<em>can bind a LONG value only for insert into a LONG column</em>&#8220;. Prima di tutto è curioso che abbia dovuto risalire fino alla documentazione della versione 9.2 del database per rintracciare la documentazione dell&#8217;errore, quando tale errore l&#8217;ho riprodotto fino alla versione 11.2.0.2.</p>
<p>Altra cosa bizzarra e che forse spiega la rimozione dalla documentazione ufficiale di tale errore è che nei nostri database il tipo LONG cui si riferisce il testo del messaggio di errore non è mai esistito.</p>
<p>Un indizio che mi aiutò all&#8217;inizio a capire da cosa potesse derivare questo errore è il fatto che l&#8217;errore abbia fatto le prime comparse dopo che siamo passati sui nostri database al character set UTF-8 (mentre prima si usava ISO-8859 o equivalente). Potrei dedicare un intero post solo a descrivere le mie peripezie a cercare di fare test con la gestione di caratteri non ASCII con il character set UTF-8 ma per ora soprassiedo.</p>
<p>Oltre alle difficoltà a fare dei test con l&#8217;UTF-8, per la cui gestione da windows ho ancora delle difficoltà che ho aggirato usando putty e collegandomi su macchine linux, sono stato ingannato dal comportamento di funzioni come <a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e26088/functions159.htm#i78723">RPAD </a>che fa cose come questa:</p>
<p><pre class="brush: plain;">

SVILUPPO42@perseo10 &gt; select length(rpad('a',4500,'b')) from dual;

LENGTH(RPAD('A',4500,'B'))
--------------------------
4000

</pre></p>
<p>Comportamento del tutto lecito e anche logico, ritornando tale funzione un tipo dato VARCHAR2 che ha come limite appunto 4000 (byte), ma non essendo espressamente specificato nella documentazione non davo per scontato. Poi sulle funzioni SQL in Oracle occorre sempre fare attenzione, se sono usate in SQL valgono delle regole, in PL/SQL le cose sono leggermente diverse (e un varchar2 in <a href="http://download.oracle.com/docs/cd/E11882_01/appdev.112/e25519/datatypes.htm#CHDHAEGF">PL/SQL </a>può arrivare a 32767 (byte)</p>
<p>Riassumendo riporto le prove che ho fatto:</p>
<p><pre class="brush: plain;">

SQL&gt; create table test_char (a varchar2(1300 char));

Table created.

</pre></p>
<p>Primo tentativo di aggirare il limite di RPAD</p>
<p><pre class="brush: plain;">

SQL&gt; insert into test_char values (rpad('a',4000,'b')||'test');
insert into test_char values (rpad('a',4000,'b')||'test')
*
ERROR at line 1:
ORA-01489: result of string concatenation is too long

</pre></p>
<p>Al che ho deciso di provare con bind variables ma ho incontrato un&#8217;altra anomalia:</p>
<p><pre class="brush: plain;">

SQL*Plus: Release 11.2.0.2.0 Production on Fri Oct 28 14:44:27 2011

Copyright (c) 1982, 2010, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL&gt; var v_test varchar2(4000 char);
SP2-0676: Bind variable length cannot exceed 1000 characters
</pre></p>
<p>Il che è dovuto, come ho scoperto in seguito, semplicemente al fatto che avevo settato (erroneamente) la variabile d&#8217;ambiente</p>
<blockquote><p>NLS_LANG=AMERICAN_AMERICA.AL32UTF8</p></blockquote>
<p>Quindi ho deciso di passare a un test con PL/SQL:</p>
<p><pre class="brush: plain;">

SQL&gt; declare
a varchar2(5000 char);
begin
a :=rpad('a',2000,'a');
insert into test_char values (a);
end;
/  2    3    4    5    6    7
declare
*
ERROR at line 1:
ORA-12899: value too large for column &quot;TEST&quot;.&quot;TEST_CHAR&quot;.&quot;A&quot; (actual: 2000,
maximum: 1300)
ORA-06512: at line 5
</pre></p>
<p>Dove si ottiene l&#8217;errore che mi aspetto. In realtà questo test funziona anche con una insert diretta con RPAD direttamente via SQL, ma il caso interessante è questo:</p>
<p><pre class="brush: plain;">

SQL&gt; declare
a varchar2(5000 char);
begin
a :=rpad('a',4000,'a')||'test';
insert into test_char values (a);
end;
/  2    3    4    5    6    7
declare
*
ERROR at line 1:
ORA-01461: can bind a LONG value only for insert into a LONG column
ORA-06512: at line 5
</pre></p>
<p>Che è l&#8217;errore che cercavo. Ho cercato di analizzare il trace generato attivando l&#8217;evento 10046 ma non ci ho trovato nulla di interessante.  L&#8217;errore si verifica anche da Java con driver JDBC, parrebbe che essendo una  stringa con lunghezz superiore ai 4000 caratteri la variabile venga convertita in tipo long e da ciò deriva l&#8217;errore, è una supposizione che faccio.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/672/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/672/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/672/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=672&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/10/28/ora-01461-e-varchar2/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>Gestione della memoria in Windows</title>
		<link>http://cristiancudizio.wordpress.com/2011/08/03/gestione-della-memoria-in-windows/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/08/03/gestione-della-memoria-in-windows/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 09:51:32 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Varie]]></category>
		<category><![CDATA[virtual memory]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=667</guid>
		<description><![CDATA[Se c&#8217;è una cosa che per me (e sono certo anche per la stragrande maggioranza degli utenti) rimane un mistero è come gestisce la memoria Windows. Ora, non sono in grado di fare grandi confronti con sistemi linux, perché mentre ormai da anni sono consolidati sistemi Linux a 64 bis, MS ha scoperto l&#8217;abbondanza dei [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=667&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Se c&#8217;è una cosa che per me (e sono certo anche per la stragrande maggioranza degli utenti) rimane un mistero è come gestisce la memoria Windows. Ora, non sono in grado di fare grandi confronti con sistemi linux, perché mentre ormai da anni sono consolidati sistemi Linux a 64 bis, MS ha scoperto l&#8217;abbondanza dei bit in tempi più recenti. Avendo avuto recentemente problemi con applicazioni Java che su windows 2003 standard edition non riuscivano ad allocare 1024MB di memoria ho deciso di approfondire un po&#8217; il tema e raccogliere un po&#8217; di informazioni in un post che rimarrà più come storia che di effettiva utilità.</p>
<p>Il caso concreto che mi sono trovato ad affrontare è stato fare funzionare Oracle BI versione 10g per dei test. Questa versione di Oracle BI è certificata al massimo su Windows 2003, peccato al primo tentativo di accesso alla console di amministrazione, gestita dall&#8217;application server OC4J installato su una macchina win2003 io abbia avuto un errore per l&#8217;impossibilità da parte di Java di allocare memoria. Gli script di avvio di OC4J per default contengono le opzioni</p>
<p><pre class="brush: plain;">

-XX:MaxPermSize=128m -Xmx512m

</pre></p>
<p>Ho provato allora a modificare tali impostazioni impostando</p>
<p><pre class="brush: plain;">

-XX:MaxPermSize=128m -Xmx1024m

</pre></p>
<p>Ma questo è risultato provocare un errore gia in avvio di OC4J.</p>
<p>Una veloce ricerca sul Web mi ha portato a questo interessante <a href="http://oraclepitstop.wordpress.com/2008/09/11/how-to-identifydetermine-the-maximum-jvm-heap-size-for-oc4j-components-in-r12-10gas/">post </a>che da un metodo per verificare quanta memoria al massimo è in grado di allocare Java. Ho potuto fare così test interessanti su varie macchine, verificando che effettivamente su altre macchine win2003 il comando di test fallisce:</p>
<pre>C:\Documents and Settings\utente&gt;java -mx768m -XX:MaxPermSize=128m -version
Error occurred during initialization of VM
Could not reserve enough space for object heap
C:\Documents and Settings\utente&gt;java -mx768m -XX:MaxPermSize=64m -version
java version "1.4.2_04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
Java HotSpot(TM) Client VM (build 1.4.2_04-b05, mixed mode)</pre>
<p>In questo caso specifico la macchina ha 2GB di RAM fisica, ma dal task manager risulta usato circa 1,6 GB su 4GB di memoria virtuale.</p>
<p>Nei miei studi giovanili la gestione della memoria virtuale nei sistemi operativi è stata presente, fra l&#8217;altro a quei tempi simili dimensioni per la RAM erano fantascienza, però io non ho trovato la spiegazione del fatto per cui in tali condizioni il sistema operativo non è in grado di allocare meno di 1 GB di memoria.</p>
<p>Vincendo la mia pigrizia e la mia repulsione ho fatto ulteriori ricerche ed ho trovato questi riferimenti nella documentazione di MS, &#8220;<a href="http://msdn.microsoft.com/en-us/library/aa366912%28v=VS.85%29.aspx">virtual address space</a>&#8221; e &#8220;<a href="http://support.microsoft.com/kb/294418">Confronto tra le architetture della memoria a 32 a 64 bit</a>&#8220;.</p>
<p>Pare che con il flag /3GB nel boot.ini di una macchina con 2,5 GB di RAM le cose migliorino, infatti sono arrivato ad allocare quasi 1,5 GB di heap per la JVM.</p>
<p>L&#8217;unica macchina Linux a 32 bit che sono riuscito a trovare è una macchina virtuale su cui ho ottenuto questi risultati:</p>
<pre>[oracle@vboxm1 ~]$ java -mx2650m -version
java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode)
[oracle@vboxm1 ~]$ java -mx2750m -version
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.
[oracle@vboxm1 ~]$ uname -a
Linux vboxm1 2.6.18-194.0.0.0.4.el5 #1 SMP Thu Apr 8 18:20:19 EDT 2010 i686 i686 i386 GNU/Linux
[oracle@vboxm1 ~]$ free
             total       used       free     shared    buffers     cached
Mem:        909120     820564      88556          0      27572     656228
-/+ buffers/cache:     136764     772356
Swap:      1735012          0    1735012
</pre>
<p>Chiaramente le macchine a 64 bit (anche se non reali come  gli Xeon) simili problemi non si presentano, neanche su win2008 a 64 bit.</p>
<p>A completamento del discorso devo dire che in passato ho avuto anche problemi con oracle database server 10gR2 su windows che in sistemi particolarmente carichi avevo frequenti errori ORA-04030</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/667/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/667/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/667/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=667&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/08/03/gestione-della-memoria-in-windows/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>Distratto da molto tempo</title>
		<link>http://cristiancudizio.wordpress.com/2011/07/20/distratto-da-molto-tempo/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/07/20/distratto-da-molto-tempo/#comments</comments>
		<pubDate>Wed, 20 Jul 2011 10:02:50 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Diario]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=665</guid>
		<description><![CDATA[Purtroppo da alcuni mesi non seguo attentamente come facevo prima tutte le notizie attorno al mondo Oracle, stamattina ne ho avuto una ulteriore conferma cercando di comprendere il significato del penultimo post di Kevin Closson,il cui feed è dato in pasto al mio &#8220;rss reader&#8221; da anni quanto sul suo blog ho in passato trovato [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=665&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Purtroppo da alcuni mesi non seguo attentamente come facevo prima tutte le notizie attorno al mondo <a href="http://www.oracle.com">Oracle</a>, stamattina ne ho avuto una ulteriore conferma cercando di comprendere il significato del <a href="http://kevinclosson.wordpress.com/2011/07/14/i-can-see-clearly-now-exadata-is-better-than-emc-storage-i-have-seen-the-slides-part-i/">penultimo post di Kevin Closson</a>,il cui feed è dato in pasto al mio &#8220;rss reader&#8221; da anni quanto sul suo blog ho in passato trovato interessanti post riguardo la parte storage di Oracle. In particolare non riuscivo a comprendere il significato del post che sembrava criticare una comparazione fra le prestazione di Oracle Exadata ed EMC Symmetrix fatta in una presentazione di Oracle stessa. In effetti il post critica tale comparazione ma io pensavo che Kevin Closson lavorasse ancora per Oracle, quindi non mi spiegavo come potesse criticare l&#8217;azienda per cui lavorava. Dopo qualche giorno di meditazione e un nuovo post in cui l&#8217;autore prosegue l&#8217;analisi critica della presentazione di Oracle sulle proprie strategie sullo storage, ho deciso di approfondire e sono arrivato a <a href="http://kevinclosson.wordpress.com/2011/03/29/kevin-closson-joins-emc-data-computing-division-to-focus-on-greenplum-performance-engineering/">questo post </a>del 29 Marzo scorso che evidentemente ho smarcato velocemente del reader senza comprenderne il contenuto. Kevin Closson non lavora più per Oracle ma per EMC e per fortuna continua a scrivere interessanti post sul suo blog.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/665/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/665/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/665/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=665&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/07/20/distratto-da-molto-tempo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>Data Pump e la compressione al volo</title>
		<link>http://cristiancudizio.wordpress.com/2011/07/18/data-pump-e-la-compressione-al-volo/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/07/18/data-pump-e-la-compressione-al-volo/#comments</comments>
		<pubDate>Mon, 18 Jul 2011 11:03:58 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Installation and Configuration]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[exp]]></category>
		<category><![CDATA[expdp]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[pipes]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=662</guid>
		<description><![CDATA[Solo oggi mi sono scontrato con un piccolo inconveniente di Oracle Data Pump. Siccome ho l&#8217;impressione di esserci gia passato e non voglio dimenticarmente ne approfitto per un nuovo post. Con la versione vecchia del programma di utilità di Oracle per esportare su file binari schemi di database, chiamata Export, era possibile usare unità sequenziali [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=662&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Solo oggi mi sono scontrato con un piccolo inconveniente di<a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14215/part_dp.htm#i436481"> Oracle Data Pump</a>. Siccome ho l&#8217;impressione di esserci gia passato e non voglio dimenticarmente ne approfitto per un nuovo post.</p>
<p>Con la versione vecchia del programma di utilità di Oracle per esportare su file binari schemi di database, chiamata <a href="http://download.oracle.com/docs/cd/B10501_01/server.920/a96652/part1.htm#435787">Export</a>, era possibile usare unità sequenziali (come i nastri) o le &#8220;named pipes&#8221; dei sistemi operativi *NIX. In particolare mi è capitato per motivi di spazio di sfruttare queste ultime per fare la compressione al volo del dump, con questa tecnica:</p>
<p><pre class="brush: plain;">

mknod /u01/backup/exp/export_pipe p
nohup /usr/bin/gzip &lt; /u01/backup/exp/export_pipe &gt; /u01/backup/exp/dbaceh.dmp.gz 2&gt;
/u01/backup/logs/gzip.log &amp;
$ORACLE_HOME/bin/exp user/senha@dbaceh file=/u01/backup/exp/export_pipe buffer=40000000
log=/u01/backup/logs/dbaceh.log full=y &gt;&gt;$ARQLOG 2&gt;&gt;$ARQLOG

</pre></p>
<p>(fonte: <a href="https://supporthtml.oracle.com/ep/faces/secure/km/DocumentDisplay.jspx?id=463336.1">nota MOS 463336.1</a>)</p>
<p>Con Oracle Data Pump come certificato dalla <a href="https://supporthtml.oracle.com/ep/faces/secure/km/DocumentDisplay.jspx?id=276521.1">nota MOS 276521.1</a> non è più possibile perché le ottimizzazioni che lo rendono effettivamente più veloce dei vecchi exp/imp comprendono il fatto di non accedere in modo sequenziale al file.</p>
<p>In 11.2.0.2 le vecchie utility exp/imp sono ancora presenti e <a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e16536/original_export.htm#BABBHCIE">documentate</a>, quindi un&#8217;alternativa (che però non mi piace) è continuare a utilizzare quelle, seppur pare non sia supportata se non per casi limitati e descritti nella documentazione.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/662/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=662&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/07/18/data-pump-e-la-compressione-al-volo/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>Ancora sulla V$OPEN_CURSOR</title>
		<link>http://cristiancudizio.wordpress.com/2011/05/11/ancora-sulla-vopen_cursor/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/05/11/ancora-sulla-vopen_cursor/#comments</comments>
		<pubDate>Wed, 11 May 2011 14:58:15 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Diario]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=658</guid>
		<description><![CDATA[Visto che la mia risposta ai commenti del post precedente diventava pericolosamente lunga ho deciso di dedicare un post  apposito. Tracciando il piano di esecuzione di una query sulla V$OPEN_CURSOR si verifica parte di quanto dice Alessandro: la vista alla base della V$OPEN_CURSOR è la X$KGLLK dove in effetti si possono trovare ancora più informazioni, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=658&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Visto che la mia risposta ai commenti del<a href="http://cristiancudizio.wordpress.com/2011/05/10/vopen_cursor/"> post precedente</a> diventava pericolosamente lunga ho deciso di dedicare un post  apposito.</p>
<p>Tracciando il piano di esecuzione di una query sulla V$OPEN_CURSOR si verifica parte di quanto dice Alessandro:</p>
<p><pre class="brush: plain;">

--------------------
SQL_ID  3xyw5tppy1w8t, child number 0
-------------------------------------
select * from v$open_cursor where sid=1

Plan hash value: 2659856713

-----------------------------------------------------------------
| Id  | Operation        | Name    | Rows  | Bytes | Cost (%CPU)|
-----------------------------------------------------------------
|   0 | SELECT STATEMENT |         |       |       |     1 (100)|
|*  1 |  FIXED TABLE FULL| X$KGLLK |     1 |   121 |     0   (0)|
-----------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

1 - filter((&quot;KGLLKSNM&quot;=1 AND &quot;KGLHDNSP&quot;=0 AND
&quot;INST_ID&quot;=USERENV('INSTANCE') AND &quot;KGLHDPAR&quot;&lt;&gt;&quot;KGLLKHDL&quot;))


</pre></p>
<p>la vista alla base della V$OPEN_CURSOR è la X$KGLLK dove in effetti si possono trovare ancora più informazioni, il problema è decifrarle.</p>
<p>Ricordo che io sono partito dalla necessità di individuare il testo di un statement il cui cursore in qualche ciclo non veniva chiuso provocando l&#8217;errore ORA-1000. Il numero di cursori aperti dato dal conteggio sulle statistiche è quello da prendere a riferimento e che se raggiunge il limite imposto dal parametro OPEN_CURSORS provoca l&#8217;errore ORA-1000. Il numero di record in  V$OPEN_CURSOR per una data sessione è sempre maggiore al numero di cursori realmente aperti che possono portare all&#8217;errore  ORA-1000. Dal punto di vista dell&#8217;occupazione di memoria e delle prestazioni presumo sia effettivamente vero che si possono considerare i cursori riportati nella V$OPEN_CURSOR come aperti.</p>
<p>Ho fatto il seguente test, ho aperto una sessione con un utente, da un&#8217;altra ho interrogato la V$OPEN_CURSOR con la seguente query:</p>
<p><pre class="brush: plain;">

select saddr,sid,count(*) from v$open_cursor where sid=151 group by saddr,sid;

</pre></p>
<p>il cui risultato era:</p>
<p><pre class="brush: plain;">

SADDR    SID                    COUNT(*)
-------- ---------------------- ----------------------
2DF4C87C 151                    2
2DF6569C 151                    3
2DF4A0AC 151                    1
2DF53FEC 151                    5
2DF389FC 151                    2
2DF4016C 151                    18
2DF6BA24 151                    9
2DF3C5B4 151                    2
2DF3128C 151                    5
2DF2D6D4 151                    6



</pre></p>
<p>Il database è poco usato, suppongo che quelli siano cursori di sessioni aperte e chiuse in precedenza, che hanno avuto lo stesso SID ma SADDR diverso. Ho provato a chiudere la connessione e riaprirla subito dopo (da sql*plus) e questa a ripreso lo stesso SADDR (ma diverso SERIAL#). Essendo tutti statement su viste di sistema, ad esempio:</p>
<p><pre class="brush: plain;">

select privilege# from sysauth$ where (grantee#=:1 or grante



</pre></p>
<p>ho ipotizzato che siano legati a chiamate ricorsive però qui siamo un po&#8217; sull&#8217;esoterico</p>
<p>Settando per la sessione di test il parametro SESSION_CACHED_CURSORS a 0 in effetti non si trovano poi nella V$OPEN_CURSOR record per la coppia SID,SADDR</p>
<p>Il thread di AskTom segnalato da Alessandro mi pare quello che ho visto anche io ieri ma come quasi tutti questi thread faccio fatica a leggere fino in fondo.</p>
<p>Ieri ho trovato anche <a href="http://dioncho.wordpress.com/2009/03/13/the-secret-of-session_cached_cursors/">questo post</a> di Dion Cho che confesso di non aver compreso a fondo, che però da anche un suggerimento per approfindire l&#8217;analisi: fare un dump dello stato del processo con l&#8217;istruzione:</p>
<pre>alter session set events 'immediate trace name processstate level 10';</pre>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/658/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=658&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/05/11/ancora-sulla-vopen_cursor/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>V$OPEN_CURSOR</title>
		<link>http://cristiancudizio.wordpress.com/2011/05/10/vopen_cursor/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/05/10/vopen_cursor/#comments</comments>
		<pubDate>Tue, 10 May 2011 15:41:20 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Performance Tuning]]></category>
		<category><![CDATA[Varie]]></category>
		<category><![CDATA[cursor open cursors V$open_cursor]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=656</guid>
		<description><![CDATA[Alcuni giorni abbiamo avuto un problema con l&#8217;errore oracle &#8220;ORA-01000: maximum open cursors exceeded&#8221; e quindi mi è stato chiesto di fare una prova e verificare lo statement legato al cursore che si ipotizzava una procedura non chiudesse.  Raramente ho avuto problemi con questo errore, quando mi è capitato si è riscontrato che effettivamente mancaca [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=656&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Alcuni giorni abbiamo avuto un problema con l&#8217;errore oracle &#8220;ORA-01000: maximum open cursors exceeded&#8221; e quindi mi è stato chiesto di fare una prova e verificare lo statement legato al cursore che si ipotizzava una procedura non chiudesse.  Raramente ho avuto problemi con questo errore, quando mi è capitato si è riscontrato che effettivamente mancaca una chiamata al metodo java di chiusura dello statement, che corrisponde alla chiusura del cursore Oracle.</p>
<p>Mi è venuta in mente all&#8217;uopo la vista di sistema V$OPEN_CURSOR che secondo la <a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/dynviews_2008.htm#i1410256">documentazione della versione 10gR2</a> mostra i cursori che ogni sessione ha &#8220;correntemente&#8221; (currently) analizzato e aperto (opened and parsed). Per evitare che alcune mie traduzioni possano fuorviare dove ho dubbi riporto anche la dicitura originale del manuale. In realtà credo che tale definizione sia fuorviante, perché tale vista mostra i cursori attualmente in cache, senza dare informazione alcuna sul fatto che siano aperti o meno.</p>
<p>Faccio un piccolo passo indietro, cos&#8217;è un cursore? Anni fa mi sono scritto una sorta di guida oracle personalizzata e in questa guida mi ricordavo di aver annotato anche queste informazioni, prelevate dal manuale &#8220;Concepts&#8221; secondo il <a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/memory.htm#sthref1324">quale </a><a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/sqlplsql.htm#i1209">sono </a>collegamenti (handle) a aree di memoria private della sessione, le &#8220;private SQL Area&#8221; che a seconda della configurazione si trovano nella Shared Pool (server condivisi o shared server) o nella PGA (server dedicati o dedicated server). Il numero massimo di cursori che una sessione può aprire è limitato dall&#8217;impostazione del parametro <a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams138.htm#CHDFEAFG">OPEN_CURSORS</a> che ha come valore di default 50 secondo la documentazione ma che io sui miei database (10.2.0.3 e 10.2.0.4) trovo impostati a 300 in quanto pare sia uno dei valore così impostati dal Database Configuration Assistant che solitamente uso per creare i database.</p>
<p>Interrogando la vista V$OPEN_CURSOR per un determinato SID si ottengono normalmente diversi record e ciò mi ha lasciato decisamente spiazzato. Uno dei motivi pare essere l&#8217;impostazione del parametro SESSION_CACHED_CURSORS che secondo la <a href="http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams189.htm#CHDGECHD">documentazione </a> come default il valore &#8217;0&#8242; ma che sui miei database ha come default il valore 20. Ciò significa che sulla V$OPEN_CURSOR non vengono visualizzati solo i cursori aperti per ogni sessione, ma anche quelli in cache. L&#8217;unica informazione certa che si può avere sui cursori aperti per una sessione, anche secondo la nota del supporto  oracle <a href="https://supporthtml.oracle.com/ep/faces/secure/km/DocumentDisplay.jspx?id=743605.1&amp;h=Y">743605.1</a> (occorre un accesso al supporto oracle per visualizzare il link) che conferma quanto ho scritto sopra, è il numero di cursori aperti (salvo bachi), ottenibile con la query:</p>
<p><pre class="brush: plain;">

select a.value, s.username, s.sid, s.serial#
from v$sesstat a, v$statname b, v$session s
where a.statistic# = b.statistic#  and s.sid=a.sid
and b.name = 'opened cursors current'
and a.sid=&lt;SID&gt;;

</pre></p>
<p>Anche in una discussione su Asktom mi sembra si affermasse ciò riportanto la stessa query.</p>
<p>Mi rimangono alcune perplessità, interrogando la V$OPEN_CURSOR per una singola sessione posso trovare un numero di record superiore al valore del parametro SESSION_CACHED_CURSOR, alcuni legati allo stesso SID ma a diverso SADDR, colonna i cui significato non è ben chiaro, anche se sospetto sia legata a chiamate ricorsive.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/656/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/656/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/656/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/656/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/656/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/656/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/656/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/656/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/656/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/656/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/656/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/656/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/656/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/656/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=656&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/05/10/vopen_cursor/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>Statspack</title>
		<link>http://cristiancudizio.wordpress.com/2011/05/03/statspack/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/05/03/statspack/#comments</comments>
		<pubDate>Tue, 03 May 2011 10:10:11 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Performance Tuning]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[statspack]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=653</guid>
		<description><![CDATA[Da una veloce ricerca nel blog mi sembra di non aver mai dedicato un intero post a Statspack, uno degli strumenti di monitoraggio e diagnosi delle prestazioni di Oracle più utile e potente. Siccome io lo utilizzo ancora, se non altro perché non è soggetto a licenze particolari come lo sono i nuovi strumenti introdotti [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=653&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Da una veloce ricerca nel blog mi sembra di non aver mai dedicato un intero post a Statspack, uno degli strumenti di monitoraggio e diagnosi delle prestazioni di Oracle più utile e potente. Siccome io lo utilizzo ancora, se non altro perché non è soggetto a licenze particolari come lo sono i nuovi strumenti introdotti dalla versione 10g di Oracle, è il caso di parlarne un po&#8217;. Probabilmente non l&#8217;ho mai fatto perché ritenevo che su internet ci fossero gia sufficenti informazioni, compresi i manuali Oracle; siccome però Oracle spinge sui nuovi strumenti a pagamento nascondendo di fatto le informazioni e siccome oggi ho incontrato un problema di cui voglio tener traccia qui, oggi finalmente dedico un breve post a questo potente strumento.</p>
<p>Statspack è un package PL/SQL e un insieme di tabelle che servono per raccogliere statistiche sul sistem Oracle. Statspac richiede una tablespace con almeno 100 MB libero, deve essere installato sul database da monitorare da un utente con privilegi SYSDABA. Lo script per l&#8217;installazione è $ORACLE_HOME/rdbms/admin/spcreate.sql.  Lo script creerà un utente PERFSTAT.</p>
<p>Statspack permette di fare delle fotografie del sistema (SNAPSHOT) ovvero sia di raccogliere  le statistiche che Oracle normalmente mantiene in in dato istante temporale. Per generare uno snapshot delle statistiche bisogna eseguire come utente PERFSTAT la procedura STATSPACK.SNAP(). Ci possono essere vari livelli di statistiche da 1 a 10, da meno dettagliate a più dettagliate (il default è 5). I parametri di default si cambiano in modo permanente con la procedura STATSPACK.MODIFY_STATSPACK_PARAMETER().</p>
<p>Per generare un report che consiste nel riassunto delle statistiche raccolte tra due snapshot si può usare lo script $ORACLE_HOME/rdbms/admin/spreport.sql. Lo script $ORACLE_HOME/rdbms/admin/sppurge.sql si può usare per eliminare vecchi snapshot.</p>
<p>Per disintallare statspack si usa lo script $ORACLE_HOME/rdbms/admin/spdrop.sql, da lanciare sempre con un utenza con privilegi SYSDBA.</p>
<p>Oggi per la prima volta da quando lo uso ho trovato un problema su statspack, su una installazione 10.2.0.3. Il problema si manifestava con l&#8217;errore</p>
<p><em>ORA-00001: unique constraint (PERFSTAT.STATS$MUTEX_SLEEP_PK) violated</em></p>
<p>al tentativo di creare uno snapshot.</p>
<p>Per fortuna <a href="http://www.memosoup.com/20090922/oracle-perfstat-statsmutex_sleep_pk-violated.html">qui </a>ho subito trovato la descrizione e la soluzione al problema con il riferimento alla nota <strong>382993.1 </strong>del supporto Oracle.</p>
<p>Approfitto anche per ricordare che Kerry Osborne tempo fa aveva parlato di<a href="http://kerryosborne.oracle-guy.com/2008/11/statspack-still-works-in-10g-and-11g/"> statspack su 11g </a>e di un paio di problemini che su questa versione sono sti introdotti.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/653/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/653/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/653/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/653/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/653/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/653/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/653/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/653/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=653&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/05/03/statspack/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>La virtualizzazione per MS nel 2011</title>
		<link>http://cristiancudizio.wordpress.com/2011/04/13/la-virtualizzazione-per-ms-nel-2011/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/04/13/la-virtualizzazione-per-ms-nel-2011/#comments</comments>
		<pubDate>Wed, 13 Apr 2011 13:53:54 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[cloud]]></category>
		<category><![CDATA[virtualizzazione]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[ms]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=650</guid>
		<description><![CDATA[A oltre un anno dal mio ultimo post sul Cloud computing e sulla virtualizzazione, due cose che sono molto legate fra loro, oggi mi è toccato di vedere sulla mia home page di iGoogle un titolo di un articolo di punto informatico che ho voluto andare a vedere. Come faccio spesso nei miei post devo [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=650&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A oltre un anno dal mio ultimo <a href="http://cristiancudizio.wordpress.com/2010/03/24/il-cloud-computing-spiegato-da-oracle/">post </a>sul Cloud computing e sulla virtualizzazione, due cose che sono molto legate fra loro, oggi mi è toccato di vedere sulla mia home page di iGoogle un titolo di un <a href="http://punto-informatico.it/3132731/PI/ApprofondPartner/virtualizzazione-microsoft-perche-un-opportunita.aspx">articolo </a>di <a href="http://punto-informatico.it">punto informatico</a> che ho voluto andare a vedere. Come faccio spesso nei miei post devo fare una piccola parentesi: ho smesso da tempo di leggere punto informatico, una delle cose che mi faceva imbestialire era il fatto che in ogni articolo si trovavano solo link autoreferenziali e mai a fonti esterne, oggi pare abbiano cambiato e imparato cos&#8217;è internet. Dopo aver letto le prime tre righe di questo articolo sulla Virtualizzazione secondo MS ho però cercato di capire cos&#8217;è PI, <a href="http://punto-informatico.it/info.asp">qui </a>si dice che è &#8220;<em>il più autorevole quotidiano di informazione su Internet e Tecnologia in Italia dal febbraio del 1996</em>&#8220;, io mi chiedo, dopo aver vinto la mia repulsione ed aver letto le tre pagine di quello pseudo articolo, che poteva essere attuale forse tre anni fa, da cosa derivi questa autorevolezza.  L&#8217;articolo sta sotto la sezione &#8220;Approfondimenti Partner&#8221; e  visto anche la sviolinata per  MS che nel 2011 ha scoperto la virtualizzazione ne deduco che PI sia partner di MS, ma come fa un autorevole quotidiano di tecnologia ad essere partner di una azienda software?</p>
<p>Sono molto acido perché confesso di avere sempre  più in antipatia MS, i suoi prodotti e l&#8217;ostinazione e pervicacia di quanti responsabili di sistemi informatici si buttano sui prodotti di questa grande azienda che fa buoni prodotti, quando altre aziende li hanno fatti 10 anni prima.</p>
<p>Leggendo quell&#8217;articolo mi sembrava di avere un déjà vu<em> ,</em> di leggere un articolo su <a href="http://www.xen.org/">XEN </a>o <a href="http://www.vmware.com/">VMWare </a>o <a href="http://www.oracle.com/technetwork/server-storage/vm/overview/index.html">Oracle VM</a> o si <a href="http://aws.amazon.com">Amazon AWS</a> di tre anni fa, quando sappiamo che nell&#8217;informatica tre anni sono molti.  Solo pochi giorni fa <a href="http://www.pythian.com/about/management_team/alex_gorbachev/">Alex Gorbachev</a> ha pubblicato su pythian <a href="http://www.pythian.com/news/22025/oracle-database-11g-xe-beta-amazon-ec2-image/">questo pos</a>t  in cui spiega come accendere in pochi minuti una macchina virtuale sui servizi di amazon (per i nuovi iscritti per un anno <a href="http://aws.amazon.com/free/">gratis</a>), ho provato io stesso, investendo ben 6 centesimi di dollaro che mi verranno addebitati sulla mia Postepay a fine mese per provare un paio d&#8217;ore una macchina con Oracle Enterprise Linux e il nuovo<a href="http://www.oracle.com/technetwork/database/express-edition/11gxe-beta-download-302519.html"> Oracle database Express edition 11gR2 beta</a>.<em></em></p>
<p>C&#8217;è l&#8217;ho con MS perché l&#8217;utente medio è affascinato dalle finestrelle e dagli effetti grafici, più che non dalla sostanza, pochi giorni fa <a href="https://profiles.google.com/u/0/eddie.awad/about">Eddie Awad</a> ha condiviso su <a href="http://www.google.com/buzz">google buzz</a> un <a href="http://www.infoworld.com/d/data-center/why-guis-suck-revisited-515">interessante articolo</a> in cui si cerca di spiegare con un esempio concreto perché l&#8217;interfaccia a linea di comando (CLI) è superiore alle interfaccie grafiche (GUI).<em></em></p>
<p>Ho foderato questo post di link (a mio modesto parere tutti interessanti) perché non ho la pretesa di essere autorevole, ma penso che la miglior informazione sia dare riferimenti a fonti ed esempi concreti e magari attuali.<em><br />
</em></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/650/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/650/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/650/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/650/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/650/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/650/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/650/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/650/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/650/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/650/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/650/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/650/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/650/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/650/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=650&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/04/13/la-virtualizzazione-per-ms-nel-2011/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
		<item>
		<title>Import tradizionale e cambio tablespace</title>
		<link>http://cristiancudizio.wordpress.com/2011/02/15/import-tradizionale-e-cambio-tablespace/</link>
		<comments>http://cristiancudizio.wordpress.com/2011/02/15/import-tradizionale-e-cambio-tablespace/#comments</comments>
		<pubDate>Tue, 15 Feb 2011 09:30:14 +0000</pubDate>
		<dc:creator>Cristian Cudizio</dc:creator>
				<category><![CDATA[Installation and Configuration]]></category>
		<category><![CDATA[Varie]]></category>

		<guid isPermaLink="false">http://cristiancudizio.wordpress.com/?p=647</guid>
		<description><![CDATA[Oggi tratto un argomento vecchio, benché Oracle 10g e Data Pump siano stati rilasciati da molti anni e questa utility per esportare su file parti di database sia stabile, comoda e flessibile, mi capita ancora di dover maneggiare file di dump creati con le vecchie versioni del programma di export di Oracle, se non altro [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=647&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Oggi tratto un argomento vecchio, benché Oracle 10g e Data Pump siano stati rilasciati da molti anni e questa utility per esportare su file parti di database sia stabile, comoda e flessibile, mi capita ancora di dover maneggiare file di dump creati con le vecchie versioni del programma di export di Oracle, se non altro perché ho ancora a che fare con database versione 9.2</p>
<p>Più per tradizione e per adeguarci alla richiesta di molti clienti anche noi applichiamo tutt&#8217;ora la classica suddivisione di tablespace per i dati e per gli indici, pur non vedendo alcun motivo scientifico per fare ciò. Quando però si fanno export/import di tipo tradizionale, e si vuole mantenere tale suddivisione ma con nomi di tablespace diversi la cosa non è immediata. Con datapump è stato introdotto il comodissimo parametro REMAP_TABLESPACES, ma sul vecchio import non c&#8217;è una soluzione diretta, se non ci sono tablespace con lo stesso nome del database di origine, gli oggetti vengono creati sul tablespace di default dello schema su cui si importano gli oggetti. Le tecniche per ovviare a ciò sono diverse, ma ieri ne ho collaudata una che non avevo mai provato e che però mi è sembrata molto comoda, la riassumo brevemente:</p>
<p>1) impostazione per l&#8217;utente/schema della tablespace di default quella dei dati (tabelle)</p>
<p>2) importazione del dump senza indici, ovvero con parametro INDEXES=no</p>
<p>3) impostazione per l&#8217;utente/schema della tablespace di default quella degli indici</p>
<p>4) importazione del dump senza dati, quindi con parametro ROWS=no IGNORE=yes INDEXES=yes</p>
<p>il parametro IGNORE=yes fa si che l&#8217;import non termini con errore perché trova gia le tabelle.</p>
<p>In passato una delle tecniche che ho utilizzato è stata quella di utilizzare il parametro INDEXFILE per generare su file i DDL degli indici, modificare il file opportunamente e lanciare da sqlplus la creazione degli indici, oppure importare tutto e poi spostare gli indici ma quest&#8217;ultimo è sicuramente il metodo più scomodo perché richiede di allocare più spazio nella tablespace dei dati e un po&#8217; di manovre per generare lo script di spostamento per tutti gli indici.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/cristiancudizio.wordpress.com/647/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/cristiancudizio.wordpress.com/647/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/cristiancudizio.wordpress.com/647/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/cristiancudizio.wordpress.com/647/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/cristiancudizio.wordpress.com/647/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/cristiancudizio.wordpress.com/647/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/cristiancudizio.wordpress.com/647/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/cristiancudizio.wordpress.com/647/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/cristiancudizio.wordpress.com/647/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/cristiancudizio.wordpress.com/647/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/cristiancudizio.wordpress.com/647/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/cristiancudizio.wordpress.com/647/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/cristiancudizio.wordpress.com/647/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/cristiancudizio.wordpress.com/647/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=cristiancudizio.wordpress.com&amp;blog=567347&amp;post=647&amp;subd=cristiancudizio&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://cristiancudizio.wordpress.com/2011/02/15/import-tradizionale-e-cambio-tablespace/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/40031feec2e87b8b7eac8cd6eae97bc0?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Cristian Cudizio</media:title>
		</media:content>
	</item>
	</channel>
</rss>
