Version 6.1

Las pruebas de regresi�n se han adaptado y modificado extensamente para la versi�n v6.1 de Postgres.

Se han a�adido tres nuevos tipos de datos (datetime, timespan, and circle) al conjunto nativo de tipos de Postgres. Puntos, cajas, rutas y pol�gonos tienen sus formatos de salida consistentes por encima de los tipos de datos. La salida pol�gono en misc.out s�lo se ha revisado para hacer correcciones relativas a la salida de regresi�n original.

Postgres v6.1 introduce un nuevo optimizador alternativo que utiliza algoritmos geneticos. Estos algoritmos introducen un comportamiento aleatorio en la ordenaci�n de los resultados de la consulta cuadno la consulta contiene m�ltiples calificadores o m�ltiples tablas (dando el optimizador una elecci�n en el orden de evaluaci�n). Se han modificado varias pruebas de regresi�n para ordenar expl�citamente el resultado, y hacerlo as� insensible a las elecciones del optimizador. Unas pocas pruebas de regresi�n corresponden a tipos de datos que son inherentemente desordenados (como puntos o intervalos de tiempo), y las pruebas que involucran estos tipos se fuerzan explicitamente con set geqo to 'off' y reset geqo.

La interpretaci�n de los especificadores de vectores (los corchetes alrededor de valores at�micos) parece haber cambiado alguna vez tras las pruebas de regresi�n originales. Los ficheros actuales ./expected/*.out reflejan esta nueva interpretaci�n, �que puede no ser correcta!

Las pruebas de regresi�n con float8 fallan al menos en algunas plataformas. Esto se debe a las diferencias en las implementaciones de pow() y exp() y a los mecanismos de se�alizaci�n utilizados para las condiciones de sobrecarga y subcarga.

Los resultados "aleatorios" en la prueba aleatoria deber�an probocar que la prueba "aleatoria" resultase "fallida", pueso que los test de regresi�n se eval�an con un simple diff. Sin embargo, la prueba "aleatoria" no parece producir resultados aleatorios en mi m�quina de pruebas (Linux/gcc/i686).

Migraci�n a v6.1

Esta migraci�n requiere un volcado completo de la base de datos 6.0 y su restauraci�n en la base de datos en 6.1.

Aquellos que quieran migrar desde versiones iniciales 1.* deber�an primero actualizarse a 1.09, porque el formato de salida de COPY se mejor� en la versi�n 1.02.

Lista Detallada de Cambios

Correcci�n de errores
---------------------
comprobaciones en la longitud empaquetada en rutinas de la librer�a
parche de prioridad en el gestor de bloqueos
comprobaciones para sub/sobrecarga de float8 (Bruce)
correcciones en cruces de m�ltiples tablas (Vadim)
correcci�n de un aborto de SIGPIPE (Darren)
correcciones sobre objetos grandes (Sven)
se permite que los �ndices btree manipulen NULL,s (Vadim)
correcciones en timezone (D'Arcy)
select SUM(x) puede devolver NULL cuando no hay filas (Thomas)
se corrigen errores del optimizador interno y del ejecutor (Vadim)
se corrigen problemas cuando bucles internos en < o <= no tienen filas (Vadim)
se previene la re-inversi�n de cl�usulas join de �ndices (Vadim)
corregida la clausula join para m�ltiples tablas (Vadim)
corregidos hash y hashjoin para vectores (Vadim)
correcci�n en btree para el tipo abstime (Vadim)
correcciones para objetos grandes (Raymond)
corregidos huecos en el buffer en �ndices hash (Vadim)
corregido rtree para el uso de barridos internos (Vadim)
correcciones esenciales para el uso de barridos internos, limpiezas (Vadim, Andrea)
se impide la colocaci�n de buffers locales innecesarios (Vadim, Massimo)
corregidos huecos de buffers locales en abortos de transacciones (Vadim)
corregidos huecos de memoria del gestor de ficheros, limpiados (Vadim, Massimo)
corregidos huecos de memoria del gestor de almacenamiento (Vadim)
corregido que btree duplique la manipulaci�n (Vadim)
corregida la reencarnaci�n de tuplas borradas causada por vacuum (Vadim)
corregido SELECT varchar()/char() INTO TABLE hace campos de longitud cero (Bruce)
corregidas muchos huecos de memoria de psql, pg_dump y libpq utiliando Purify (Igor)


Mejoras
--------------
estadisticas de optimizaci�n de atributos (Bruce)
nuevo c�digo de carga masivo btree mucho m�s r�pido (Paul)
a�adido BTREE UNIQUE para c�digo de carga masiva (Vadim)
nuevo aspecto del c�digo de depuraci�n (Massimo)
cambios masivos en libpq++ (Leo)
el nuevo optimizador GEQO acelera la optimizaci�n en tablas multi-tabla (Martin)
nuevo mensaje de alarma para inserciones no �nicas en claves �nicas (Marc)
update x=-1, sin espacios, ahora es v�lido (Bruce)
se elimina la manipulaci�n de identificadores sensibles a las mayusculas (Bruce, Thomas, Dan)
la depuraci�n del servidor ahora imprime un �rbol agradable (Darren)
nuevas funciones de caracteres de Oracle (Edmund)
nuevas funciones de palabra clave con texto plano (Dan)
se cambian a mensajes diferentes no tal clase y insuficientes privilegios (Dan)
nueva funci�n ANSI timestamp (Dan)
nuevos tipos ANSI Time y Date (Thomas)
mueve grandes grupos de datos en el servidor (Martin)
�ndices btree multicolumna (Vadim)
nuevo comando SET var TO valor (Martin)
status de transacci�n de actualizaci�n en las lecturas (Dan)
nuevos ajustes locales para tipos de caracteres (Oleg)
nuevo generador de series de n�meros SEQUENCE (Vadim)
ahora es posible GROUP BY una funci�n (Vadim)
reorganizada la prueba de regresi�n (Thomas, Marc)
nuevos pesos de operaciones en el optimizador (Vadim)
nueva opci�n psql \z grant/permit (Marc)
nuevo tipo de datos MONEY (D'Arcy, Thomas)
incrementada la velocidad de comunicaci�n por el socket tcp (Vadim)
nueva opci�n VACUUM para estadisticas de atributos, y para ciertas columnas (Vadim)
muchas potenciaciones de tipos geom�tricos (Thomas, Keith)
Pruebas de regresi�n adicionales (Thomas)
nuevas variables de estilo de datos (Thomas, Vadim, Martin)
m�s operadores de comparaci�n para ordenar tipos (Thomas)
nuevas funciones de conversi�n (Thomas)
no m�s formato btree compacto (Thomas)
ser permite a pg_dumpall preservar la propiedad de las bases de datos (Bruce)
nuevas variables SET GEQO=# y R_PLANS (Vadim)
el viejo optimizador (!GEQO) puede utilizar planes del lado derecho (VADIM)
merjorado el control de tipos en el traductor de SQL (Bruce)
nuevos comandos SET, SHOW y RESET (Thomas, Vadim)
nueva opci�n USER \connect basededatos
nueva opci�n destroydb -i (Igor)
nuevos comandos de psql \dt y \di (Darren)
SELECT "\n" ahora genera nueva l�nea (A. Duursma)
nuevas funciones de conversi�n de la geometr�a desde el formato anterior (Thomas)

Cambios en el arbol fuente
--------------------------
nuevo gui�n de configuraci�n (Marc)
a�adida la opci�n de configuraci�n de lectura de l�nea (Marc)
nuevos ficheros de plantillas especificas del Sistema Operativo (Marc)
ya no se necesita editar Makefile.global (Marc)
se reordenan los ficheros de include (Marc)
parche para nextstep (Gregor Hoffleit)
se elimina c�digo espec�fico de WIN32 (Bruce)
se elimina la opci�n -e de postmaster, se mantiene s�lo la opci�n postgres -e (Bruce)
se mezcla el c�digo de librer�as duplicadas en clientes y servidores (Martin)
ahora trabaja con eBones, Kerberos internacional (Jun)
m�s soporte a librer�as compartidas
c++ incluye limpieza de fichero (Bruce)
Aviso sobre flex err�neo (Bruce)
Correcciones en la portabilidad para DG-UX, Ultrix, Irix, AIX.