Notiziario settimanale PostgreSQL – 22 febbraio 2009

(Traduzione in lingua italiana delle PostgreSQL Weekly News a cura di Gianni Ciolli gianni.ciolli@2ndquadrant.it e Gianluca Riccardi gianluca@moonwatcher.it)

Congratulazioni a Joshua Drake per la ricevuta del suo passaporto. A tra poco per il Jet Lag!

== Novità sul prodotto PostgreSQL ==

Rilasciata la versione 1.3 di pgbouncer. http://pgfoundry.org/projects/pgbouncer/

== Il suggerimento della settimana ==

Usa la vista di sistema pg_locks, combinata con pg_stat_activity, per vedere quali query sono attualmente bloccate da dei locks.

== Offerte di lavoro su PostgreSQL per febbraio 2009 ==

http://archives.postgresql.org/pgsql-jobs/2009-02/threads.php

== Notizie locali su PostgreSQL ==

Ed Borasky parlerà di Visualizzazione di Dati presso il PDXPUG, il 19 febbraio 2009, dalle 19 alle 21, in Portland (Oregon, USA). http://calagator.org/events/1250456619

PostgreSQL sarà presente a SCALE, che si terrà a Los Angeles (USA), dal 20 al 22 febbraio prossimi. http://www.socallinuxexpo.org/

Il 25 febbraio Andreas ‘ads’ Scherbaum terrà una comunicazione al Perl Workshop 2009, a Frankfurt am Main, in Germania. http://www.perl-workshop.de/talks/151/view

Il PostgreSQL User Group tedesco avrà uno stand, due talk e un workshop presso il Linuxdays Chemnitz, il 14 e 15 marzo 2009. Maggiori informazioni in lingua tedesca qui: http://andreas.scherbaum.la/blog/archives/525-PostgreSQL-auf-den-Chemnitzer-Linuxtagen.html

La PostgreSQL Conference U. S. organizzerà un PgDay nell’ambito della LinuxFest Northwest (25, 26 aprile). Informazioni su come proporre una comunicazione sono disponibili sul sito http://www.postgresqlconference.org/

Nei giorni 21 e 22 maggio 2009 all’università di Ottawa, in Canada, si terrà PGCon 2009. Nei due giorni precedenti si terranno dei tutorials. http://www.pgcon.org/2009/papers.php

Segnatevi la data: pgDay San Jose. Domenica 19 luglio subito prima di OSCON. Saranno presto annunciate ulteriori informazioni! (incluso il call for papers)

Il 23 e 24 ottobre 2009 si svolgerà PGCon Brazil, presso Unicamp, nella città di Campinas, stato di San Paolo.

== Rassegna stampa su PostgreSQL ==

Planet PostgreSQL: http://planet.postgresql.org/

Questo notiziario settimanale PostgreSQL è stato realizzato da David Fetter e Josh Berkus; traduzione in lingua italiana a cura di Gianni Ciolli e Gianluca Riccardi.

Notizie o annunci destinati a questo notiziario dovranno pervenire entro la mezzanotte di domenica (le 15 nel fuso orario della California). I comunicati in lingua italiana dovranno essere inviati a pwn@itpug.org; per le lingue inglese o tedesca, si scriva rispettivamente a david@fetter.org o a pwd@pgug.de.

== Patch Applicate ==

Bruce Momjian ha effettuato i seguenti commit:

  • In pgsql/src/bin/pg_dump/pg_dump.c, in maiuscolo le parole chiave.

  • In pgsql/src/bin/pg_dump/pg_dump.c, abbreviate alcune query lunghe.

  • Aggiunto il flag –binary-upgrade a pg_dump per essere usato da utilità binarie di upgrade. Il nuovo codice consente il trasferimento delle informazioni di colonne eliminate al server aggiornato.

  • In pgsql/src/bin/pg_dump/pg_dump.c, aggiunta un’andata a capo mancante.

  • –binary-upgrade di pg_dump/pg_dumpall esegue il restore degli IDs congelati per relazioni e databases.

  • Aggiunta l’opzione –freeze a vacuumdb.

Peter Eisentraut ha effettuato i seguenti commit:

  • Rimosso il trigger gettext write_stderr() che non è usato dai PL.

  • In pgsql/src/pl/plpgsql/src/plpgsql.h, ridefinito _() in dgettext() invece di gettext() in modo che usi il dominio di testo di plpgsql, invece di postgres (o qualsiasi cosa possa essere il default).

  • Marcato il terzo argomento di validate_tupdesc_compat() per la traduzione, invece di marcare separatamente ogni istanza.

  • In pgsql/src/pl/plpgsql/src/nls.mk, aggiunto plpgsql_yyerror ai trigger di gettext.

  • In pgsql/src/pl/plpgsql/src/scan.l, aggiunte chiamate _() per l’argomento di plpgsql_yyerror() in modo che esso venga tradotto in qualche maniera.

  • Sistemazione testi nei messaggi.

  • In pgsql/src/pl/plperl/nls.mk, rimossi croak e Perl_croak dai trigger di gettext. Mentre possiamo selettivamente marcare gli argomenti per le traduzioni, il tool xsubpp di Perl genera una manciata di chiamate Perl_croak che non possiamo controllare in quanto creeremmo un confuso mix di messaggi di tipo simile tradotti e non tradotti. Ciò potrebbe richiedere una soluzione migliore più in avanti. Rimosso anche _ dai triggers di gettext perché non era usato. Usato SPI.c invece di SPI.xs come file sorgente di xgettext perché il formato .xs non è del tutto supportato in gettext.

  • In pgsql/src/Makefile.global.in, aggiunta una regola implicita %.c -> %.i per eseguire il pre-processore C. Lo uso occasionalmente per eseguire il debug, e mi sembra inutile reinventarlo ogni volta.

  • Sistemazione testi per i messaggi PL/Perl

  • In pgsql/src/pl/plperl/plperl.c, un’altra piccola modifica ai testi.

Heikki Linnakangas ha effettuato i seguenti commit:

  • Avviato il background writer durante il recupero degli archivi.

Il background writer ora esegue le sue usuali pulizie del buffer durante il recovery degli archivi ed è responsabile dell’esecuzione dei restartpoints. Ciò richiede alcune modifiche in postmaster. Quando il processo di startup ha eseguito tutta l’inizializzazione ed è pronto per avviare il WAL redo, allora invia un segnale a postmaster per lanciare il background writer. Il postmaster riceve un secondo segnale quando il recovery raggiunge il punto in cui sappiamo che il database è in stato consistente. Il postmaster non è interessato alla cosa in quel momento, ma quello è il punto in cui possiamo permettere ad altri backend di subentrare per eseguire query in sola lettura. Il postmaster riceve una terza notifica quando il recovery è terminato, così sa che può accettare connessioni. Il processo di startup, in questo momento, intercetta SIGTERM ed esegue un clean shutdown. Se si esegue un fast shutdown durante il recovery, viene eseguito uno shutdown restartpoint come uno shutdown checkpoint e il postmaster termina i processi in maniera ordinata. Si deve comunque terminare il recovery al prossimo startup. Al momento il background writer viene avviato soltanto durante un recovery dell’archivio. Lo si potrebbe avviare durante un recovery da un crash, ma sembra meglio mantenere quel codice il più semplice possibile, allo scopo di mantenere la robustezza. E comunque costui non potrebbe eseguire alcun restartpoint durante un recovery da crash, per cui in fondo non sarebbe così utile. log_restartpoints scompare. Si usa log_checkpoints in sua vece. Ciò non è ancora documentato. Questa intera operazione è un prerequisito per Hot Standby, ma ha un qualche proprio valore, che la patch per Hot Standby sia committata in tempo per la 8.4 oppure no. Simon Riggs, con molte mie modifiche.

  • In pgsql/src/include/storage/proc.h, incrementato NUM_AUXILIARY_PROCS, ora che il processo di startup può coesistere con altri processi ausiliari per un breve periodo. Come testimoniato dal membro della buildfarm dungbeetle.

  • In pgsql/src/backend/postmaster/postmaster.c, risolto un commento fittizio, dalla patch per avviare bgwriter durante il recovery degli archivi.

Tom Lane ha effettuato i seguenti commit:

  • Rimossi i casi speciali per prevenire risultati minori di zero negli operatori float4 e float8. Non tentavamo di prevenire risultati minori di zero in nessun’altra parte; in vista della nostra graduale tendenza a rendere i tipi float conformi allo standard IEEE, dovremmo consentirli qui invece che non consentirli altrove.

Non ci aspettiamo che altre piattaforme producano tali risultati perciò abbiamo bisogno di risolvere le piattaforme che hanno coinvolto i test di regression per consentire entrambi i risultati. Come da discussione per il bug #4660. (Passando, ripulito float.c da alcune infelicità)

  • In pgsql/src/backend/optimizer/path/joinrels.c, migliorati i commenti delle strategie nelle implementazioni semijoin, in base a una domanda posta da Robert Haas.

  • In pgsql/src/backend/optimizer/plan/initsplan.c, semplificato il test eccessivamente complicato (e restrittivo) per verificare che una condizione IS NULL sia resa ridondante rilevando una antijoin. Se sappiamo che una join è una antijoin allora qualsiasi variabile che arriva dal suo lato destro deve essere NULL, non soltanto la/le colonna/e di joining. In più, è ancora null dopo essere stato passato a join più alte che siano outer joins o meno. Sono stato fuorviato da un’analogia fallimentare a reduce_outer_joins() nella produzione originale di codice. Ma si consideri select 2ndquadrant_italia_mod.txt 2ndquadrant_italia.txt da_installare_pandoc hdoisajds.sh risultati step2 from a left join b on a.x = b.y where b.y is null and b.z is null; la prima condizione IS NULL giustifica la decisione che si tratta di una antijoin (se l’uguaglianza è stretta) e quinda la seconda e pienamente ridondante.

  • In pgsql/doc/src/sgml/config.sgml, aggiunta la nota che le funzioni SQL inline non vengono tracciate da track_functions.

Andrew Dunstan ha effettuato i seguenti commit:

  • In pgsql/src/bin/pg_dump/pg_backup_archiver.c, riconnetti al giusto database quando si usano ripristini paralleli con -C. Risolve il bug segnalato da Olivier Prenant.

== Patch rifiutate (per adesso) ==

Nessuno è stato scontentato questa settimana :-)

== Patch in coda ==

Teodor Sigaev ha consegnato due varianti della patch per l’inserimento GIN rapido, e poi una patch successiva su feedback di Robert Haas.

Robert Haas ha consegnato una nuova versione della patch che migliora le prestazioni delle join multi-bacth per insiemi di dati sghembi.

Andrew Chernow ha consegnato una patch che implementa PQinitSecure in libpq e poi una patch successiva per correggere un bug nella precedente.

Heikki Linnakangas ha consegnato una patch per cui il postmaster aspetta un certo segnale di startup del processo prima di consentire l’accesso.

ITAGAKI Takahiro ha consegnato una patch che permette a parse_bool* di accettare come opzioni ‘on’ e ‘off’.

KaiGai Kohei ha consegnato una nuova versione delle sue patch SE-PostgreSQL.

Adriano Lange ha consegnato una patch che consente la rappresentazione in un grafo delle strutture usate dall’ottimizzatore.

This Post Has 0 Comments

Leave A Reply