Re: Postgresql que se muere

2010-07-15 Por tema Franco Catrin L.
El mié, 14-07-2010 a las 17:16 -0400, Aldrin Martoq escribió:
 On Jul 14, 2010, at 3:14 PM, Franco Catrin L. wrote:
  Eso es lo que se ve por fuera, pero el día en que inventen un SELECT que
  ocupe cero bytes está lejos aún.
  Lectura recomendada:
  http://www.joelonsoftware.com/articles/LeakyAbstractions.html
 
 Yo difiero de este pensamiento. La capa extra (en este caso, la base de 
 datos) debe ser lo suficientemente robusta para no gotear errores 
 inesperados, pues es quien tiene toda la información de saber qué paso 
 realmente.

Mi mirada al documento es respecto a cómo las abstracciones pueden jugar
en contra cuando no sabes qué está pasando realmente por debajo, algo
que queda claro al leer los comentarios en este thread.

Un buen ejemplo que da el autor es cuando recorres una estructura de
datos y perfectamente el programador puede recorrerla de una forma que
el rendimiento se degrade.

Las abstracciones que gotean no son un error, son un hecho.  

Saludos
-- 
Franco Catrin L. http://www.tuxpan.com/fcatrin
TUXPAN Software S.A.



Re: WINE: Run-time error 7 - Out of memory

2010-07-15 Por tema AngelD
 Al lanzar ipview pro (aplicacion para camaras IP) mediante wine obtengo
   Run-time error 7 - Out of memory

 Existe memoria suficiente.

   Creo que este no es el problema

 Alguien conoce este error? Algun paquete de librerías runtime que se
 deba instalar para aplicaciones bajo windows?

   Dicen que si las aplicaciones dan muchos [1]mensajes de error OLE, se
puede instalar con [2]winetricks las DCOM98. En mis pruebas
(wine-1.1.42 desde 0) he logrado muchos mensajes menos de error, algún
mensaje de reinicio tras el instalador y errores diferentes al
especificado, por lo que parece es el camino correcto.

   Como también [3]comentan que antiguas versiones (3.00.09) con antiguos
wine (0.9.42) funcionaban, intuyo que se le puede hacer funcionar, si
no la última versión, alguna de las [4]antiguas, aunque en mis pruebas
los resultados han sido parecidos. También sospecho que el que logró
hacer la instalación no lo hizo con Wine en vacío, sino que tendría
instalado alguna cosa o librería antes.

  (Este párrafo tendría que ir el primero, y no el último :-)
  Siempre te quedará utilizar software libre, como [5]ZoneMinder, que al
parecer funciona con casi todas las cámaras de [6]Trendnet.

  Saludos --- Angel

 [1]http://wiki.winehq.org/FAQ#head-4bb9daaf9091eeac20707a6904425e76ffa8ed0e
 [2]http://wiki.winehq.org/winetricks
 [3]http://appdb.winehq.org/objectManager.php?sClass=applicationiId=5635
 [4]http://downloads.trendnet.com/tv-ip100_c1_1/driver_utility/
 [5]http://www.zoneminder.com/
 [6]http://www.zoneminder.com/wiki/index.php/Trendnet



Re: Postgresql que se muere

2010-07-15 Por tema Marcos Ramirez
On Thu, 2010-07-15 at 10:03 -0400, Franco Catrin L. wrote:
 El mié, 14-07-2010 a las 17:16 -0400, Aldrin Martoq escribió:
  On Jul 14, 2010, at 3:14 PM, Franco Catrin L. wrote:
   Eso es lo que se ve por fuera, pero el día en que inventen un SELECT que
   ocupe cero bytes está lejos aún.
   Lectura recomendada:
   http://www.joelonsoftware.com/articles/LeakyAbstractions.html

  Yo difiero de este pensamiento. La capa extra (en este caso, la base de 
  datos) 
  debe ser lo suficientemente robusta para no gotear errores inesperados,
  pues es quien tiene toda la información de saber qué paso realmente.
 
 Mi mirada al documento es respecto a cómo las abstracciones pueden jugar
 en contra cuando no sabes qué está pasando realmente por debajo, algo
 que queda claro al leer los comentarios en este thread.

 Un buen ejemplo que da el autor es cuando recorres una estructura de
 datos y perfectamente el programador puede recorrerla de una forma que
 el rendimiento se degrade.

Si quieres ver el otro lado de la moneda, siempre estaran los
programadores que piensan que la BD es magica y que sin importar las
sentencias SQL que usen, el rendimiento debe ser maximo o superior.

 Las abstracciones que gotean no son un error, son un hecho.  

Asi es. El punto es cuanto goteo es razonable o aceptable. Hay cosas
que nigun motor puede hacer, como conseguir memoria donde no la hay,
pero si puede administrar bien la que tenga. 

Por citar el mismo ejemplo de Oracle que tu mencionaste antes, hay casos
en que una consulta puede ser extremadamente lenta, pero no entrega un
error de falta de memoria.

Saludos






Re: WINE: Run-time error 7 - Out of memory

2010-07-15 Por tema AngelD
El Thu, 15 Jul 2010 17:09:37 +0200
AngelD ang...@froga.net escribió:

  Al lanzar ipview pro (aplicacion para camaras IP) mediante wine
  obtengo Run-time error 7 - Out of memory
 
  Existe memoria suficiente.
 
Creo que este no es el problema
 
  Alguien conoce este error? Algun paquete de librerías runtime que se
  deba instalar para aplicaciones bajo windows?
 
Dicen que si las aplicaciones dan muchos [1]mensajes de error OLE,
 se puede instalar con [2]winetricks las DCOM98. En mis pruebas
 (wine-1.1.42 desde 0) he logrado muchos mensajes menos de error, algún
 mensaje de reinicio tras el instalador y errores diferentes al
 especificado, por lo que parece es el camino correcto.

Probando en mi ordenador (las pruebas anteriores eran en un
Ubuntu ajeno), Debian Squeeze wine-1.0.1-2-5-g4412ca7, vete a saber con
cuarta mierda instalada en el Wine (ie6, ie7, ...), con el fichero
[4]IPViewPro_Setup(3.01.12).zip, y configurando un escritorio de
1024x768 para que mi gestor de ventanas no enloqueciera, todo funciona a
las mi maravillas, o por lo menos el programa instala y arranca.

Probando en mi ordenador, con un wine-1.0.1-2-5-g4412ca7 desde
cero, con e fichero [4]IPViewPro_Setup(3.01.12).zip instala sin
problemas. Al ejecutarlo me salta el instalador de Wine Gecko, y tras
esto, funciona sin problemas.

Así que, instala [5]ZoneMinder, o empieza a jugar con las
versiones de wine para ver con cual funciona. La última vez que me
toco una de estas, estuve compilando/probando con más de media docena
de versiones y sus consiguientes pruebas para conseguir un resultado
medianamente aceptable, pero era una aplicación del trabajo (Remedy) sin
alternativas para Linux. 

Saludos --- Angel

  [1]http://wiki.winehq.org/FAQ#head-4bb9daaf9091eeac20707a6904425e76ffa8ed0e
  [2]http://wiki.winehq.org/winetricks
  [3]http://appdb.winehq.org/objectManager.php?sClass=applicationiId=5635
  [4]http://downloads.trendnet.com/tv-ip100_c1_1/driver_utility/
  [5]http://www.zoneminder.com/
  [6]http://www.zoneminder.com/wiki/index.php/Trendnet
 


Re: WINE: Run-time error 7 - Out of memory

2010-07-15 Por tema AngelD
El Thu, 15 Jul 2010 17:09:37 +0200
AngelD ang...@froga.net escribió:

  Al lanzar ipview pro (aplicacion para camaras IP) mediante wine
  obtengo Run-time error 7 - Out of memory
 
  Existe memoria suficiente.
 
Creo que este no es el problema
 
  Alguien conoce este error? Algun paquete de librerías runtime que se
  deba instalar para aplicaciones bajo windows?
 
Dicen que si las aplicaciones dan muchos [1]mensajes de error OLE,
 se puede instalar con [2]winetricks las DCOM98. En mis pruebas
 (wine-1.1.42 desde 0) he logrado muchos mensajes menos de error, algún
 mensaje de reinicio tras el instalador y errores diferentes al
 especificado, por lo que parece es el camino correcto.
 
Como también [3]comentan que antiguas versiones (3.00.09) con
 antiguos wine (0.9.42) funcionaban, intuyo que se le puede hacer
 funcionar, si no la última versión, alguna de las [4]antiguas, aunque
 en mis pruebas los resultados han sido parecidos. También sospecho
 que el que logró hacer la instalación no lo hizo con Wine en vacío,
 sino que tendría instalado alguna cosa o librería antes.
 
   (Este párrafo tendría que ir el primero, y no el último :-)
   Siempre te quedará utilizar software libre, como [5]ZoneMinder, que
 al parecer funciona con casi todas las cámaras de [6]Trendnet.
 
   Saludos --- Angel
 
  [1]http://wiki.winehq.org/FAQ#head-4bb9daaf9091eeac20707a6904425e76ffa8ed0e
  [2]http://wiki.winehq.org/winetricks
  [3]http://appdb.winehq.org/objectManager.php?sClass=applicationiId=5635
  [4]http://downloads.trendnet.com/tv-ip100_c1_1/driver_utility/
  [5]http://www.zoneminder.com/
  [6]http://www.zoneminder.com/wiki/index.php/Trendnet
 


Re: Postgresql que se muere

2010-07-15 Por tema Aldrin Martoq
On Jul 15, 2010, at 10:03 AM, Franco Catrin L. wrote:
 El mié, 14-07-2010 a las 17:16 -0400, Aldrin Martoq escribió:
 On Jul 14, 2010, at 3:14 PM, Franco Catrin L. wrote:
 Eso es lo que se ve por fuera, pero el día en que inventen un SELECT que
 ocupe cero bytes está lejos aún.
 Lectura recomendada:
 http://www.joelonsoftware.com/articles/LeakyAbstractions.html
 Yo difiero de este pensamiento. La capa extra (en este caso, la base de 
 datos) debe ser lo suficientemente robusta para no gotear errores 
 inesperados, pues es quien tiene toda la información de saber qué paso 
 realmente.
 Mi mirada al documento es respecto a cómo las abstracciones pueden jugar
 en contra cuando no sabes qué está pasando realmente por debajo, algo
 que queda claro al leer los comentarios en este thread.

 Un buen ejemplo que da el autor es cuando recorres una estructura de
 datos y perfectamente el programador puede recorrerla de una forma que
 el rendimiento se degrade.
 Las abstracciones que gotean no son un error, son un hecho.  

No, eso se llama usar la herramienta adecuada. Si estas usando un software para 
lo que no está hecho, obvio que te vas a topar con cosas para las cuales no 
estaba preparado.

Si volvemos al tema original, el error de postgresql es algo que no espero de 
una base de datos (bueno, en realidad puede fallar pero el mensaje te deja de 
manos cruzadas). Y eso independiente de cómo este hecho por debajo.


Aldrin Martoq
http://aldrin.martoq.cl/







Re: Movil, ¿alguna recomendación?

2010-07-15 Por tema Javier Garay
Creo que me voy a inclinar por le IPhone 3gs, aunque también el nokia
5800 tiene de todo e incluso es algo mejor que iphone en algunas
cosas. Aun tengo tiempo para decidirme.

Gracias por sus consejos.

Saludos.

-- 
Atte,
Javier Andrés Garay G.
Ingeniero en Informática
Plug  Play Net S.A.
www.papnet.cl


Re: Postgresql que se muere

2010-07-15 Por tema Franco Catrin L.
El jue, 15-07-2010 a las 13:02 -0400, Aldrin Martoq escribió:
 On Jul 15, 2010, at 10:03 AM, Franco Catrin L. wrote:
  El mié, 14-07-2010 a las 17:16 -0400, Aldrin Martoq escribió:
  On Jul 14, 2010, at 3:14 PM, Franco Catrin L. wrote:
  Eso es lo que se ve por fuera, pero el día en que inventen un SELECT que
  ocupe cero bytes está lejos aún.
  Lectura recomendada:
  http://www.joelonsoftware.com/articles/LeakyAbstractions.html
  Yo difiero de este pensamiento. La capa extra (en este caso, la base de 
  datos) debe ser lo suficientemente robusta para no gotear errores 
  inesperados, pues es quien tiene toda la información de saber qué paso 
  realmente.
  Mi mirada al documento es respecto a cómo las abstracciones pueden jugar
  en contra cuando no sabes qué está pasando realmente por debajo, algo
  que queda claro al leer los comentarios en este thread.
 
  Un buen ejemplo que da el autor es cuando recorres una estructura de
  datos y perfectamente el programador puede recorrerla de una forma que
  el rendimiento se degrade.
  Las abstracciones que gotean no son un error, son un hecho.  
 
 No, eso se llama usar la herramienta adecuada. Si estas usando un software 
 para lo que no está hecho, obvio que te vas a topar con cosas para las cuales 
 no estaba preparado.

No entiendo la relación?  Leíste el artículo completo?

 Si volvemos al tema original, el error de postgresql es algo que no espero de 
 una base de datos (bueno, en realidad puede fallar pero el mensaje te deja de 
 manos cruzadas). Y eso independiente de cómo este hecho por debajo.

Por qué no? Es una situación de excepción, al igual que cuando el
cliente te avisa que no se puede conectar a la base de datos.

Si te fijas, el error dice que no pudo obtener la memoria que necesitaba
para realizar la operación, algo que siempre puede suceder.  En este
caso es claro que no se justifica y el motor se confundió al estimar el
tamaño, pero en el normal de los casos sí debería retornar una excepción
cuando no puede hacer lo qué le estás pidiendo.

ERROR:  invalid memory alloc request size 1818585462

Puesto de otra forma, qué hubieras esperado que te informara el servidor
si no hay suficiente memoria para realizar la operación?  Datos
inventados?

Saludos
-- 
Franco Catrin L. http://www.tuxpan.com/fcatrin
TUXPAN Software S.A.



Capas de abstracción (fue Re: Postgresql que se muere)

2010-07-15 Por tema Aldrin Martoq
On Jul 15, 2010, at 3:15 PM, Franco Catrin L. wrote:
 El jue, 15-07-2010 a las 13:02 -0400, Aldrin Martoq escribió:
 On Jul 15, 2010, at 10:03 AM, Franco Catrin L. wrote:
 Mi mirada al documento es respecto a cómo las abstracciones pueden jugar
 en contra cuando no sabes qué está pasando realmente por debajo, algo
 que queda claro al leer los comentarios en este thread.
 Un buen ejemplo que da el autor es cuando recorres una estructura de
 datos y perfectamente el programador puede recorrerla de una forma que
 el rendimiento se degrade.
 Las abstracciones que gotean no son un error, son un hecho.  
 No, eso se llama usar la herramienta adecuada. Si estas usando un software 
 para lo que no está hecho, obvio que te vas a topar con cosas para las 
 cuales no estaba preparado.
 No entiendo la relación?  Leíste el artículo completo?
 Si volvemos al tema original, el error de postgresql es algo que no espero 
 de una base de datos (bueno, en realidad puede fallar pero el mensaje te 
 deja de manos cruzadas). Y eso independiente de cómo este hecho por debajo.

Las capas de abstracción no son para protegernos de los errores, son para 
*solucionar un problema*. Esto implica que son buenas para cierto ámbito (no 
para todas) pues están diseñadas para hacer tal o cual cosa. Y deben hacerlo 
bien.

En tu ejemplo del artículo, supongamos que es una biblioteca que le paso una 
lista y tiene una operación que hace algo con ella (por ejemplo, ordenarla). 
Siguiendo el ejemplo, tenemos un caso en que tiene la operación tiene muy mal 
rendimiento (por cómo está construida la biblioteca justo la mala suerte).

La postura del artículo es que la biblioteca nos protege o facilita de lo 
complicado que es el mundo real (el problema de ordenar una lista), por eso a 
veces te toca bailar con la fea. Pero si cuando construimos la biblioteca, lo 
que se pidió era resolver el problema de ordenar una lista de manera rápida, 
entonces el problema es otro: se ignoró dicho requisito (puede ser ambas 
partes: quien usa la biblioteca como quien la construye, o ambos). 

Es como si llevas el auto a un mecánico y te comienza a chamullar con miles de 
dramas (no, que ahora tuve este problema, no que ahora se quemó no se que 
cosa)... puras excusas, pues le pagas al mecánico para resolver tal problema. 
Si el mecánico no puede preveer este tipo de dramas, está dando un pésimo 
servicio; hay veces en que esto sucede, pero lo que debe pasar es que el te 
advierte antes. Algo similar sería que la biblioteca del ejemplo nunca fue 
declarada performante. De ahí el herramienta adecuada, ¿ves? Por el otro 
lado, si la biblioteca sí fue declarada como performante, esto es un bug... 
nada de andar chamullando con leaky abstractions o lo complicado que es la 
vida.


Hay millones de ejemplos en la vida real: ir al mecánico, que un doctor te 
opere de la vesícula, cuando haces un trámite en el banco... Que algo del mundo 
real falle no es excusa para dar un mal servicio, es lo mismo con una capa de 
software.




 Por qué no? Es una situación de excepción, al igual que cuando el
 cliente te avisa que no se puede conectar a la base de datos.
 Si te fijas, el error dice que no pudo obtener la memoria que necesitaba
 para realizar la operación, algo que siempre puede suceder.  En este
 caso es claro que no se justifica y el motor se confundió al estimar el
 tamaño, pero en el normal de los casos sí debería retornar una excepción
 cuando no puede hacer lo qué le estás pidiendo.
 ERROR:  invalid memory alloc request size 1818585462
 Puesto de otra forma, qué hubieras esperado que te informara el servidor
 si no hay suficiente memoria para realizar la operación?  Datos
 inventados?


Es todo lo contrario: nosotros estamos inventando (como tu bien dices) qué fue 
lo que paso. En cambio, postgresql (o nuestra capa de abstracción) está en la 
fuente del error... tiene toda la información a mano que puede perfectamente 
desplegar; el ejemplo claro es que si es el campo de un índice cuyo tamaño se 
fue a las pailas, podría dar el nombre del desdichado. ¡Si para eso le pago al 
mecánico!

Y de hecho, una vez que comienzas a ver mas seguido estaría mas claro el 
siguiente problema: por qué se corrompen los índices y/o cómo evitarlo...


Aldrin Martoq
http://aldrin.martoq.cl/







Re: WINE: Run-time error 7 - Out of memory

2010-07-15 Por tema Miguel Oyarzo O.


El 15-07-2010 11:09, AngelD escribió:

Al lanzar ipview pro (aplicacion para camaras IP) mediante wine obtengo
   Run-time error 7 - Out of memory

Existe memoria suficiente.


Creo que este no es el problema


Alguien conoce este error? Algun paquete de librerías runtime que se
deba instalar para aplicaciones bajo windows?


Dicen que si las aplicaciones dan muchos [1]mensajes de error OLE, se
puede instalar con [2]winetricks las DCOM98. En mis pruebas
(wine-1.1.42 desde 0) he logrado muchos mensajes menos de error, algún
mensaje de reinicio tras el instalador y errores diferentes al
especificado, por lo que parece es el camino correcto.




Si, instale winetricks, pero tiene mas de 80 librerias runtime .. ni 
loco probaré una por una.. además,  no el mensaje de runtime podría 
estar equivocado y quizas es una dll la que no puede registrar su clase. 
quien sabe.


Mejor instale una maquina virtual y corrí la aplicación deseada, para 
tener conectividad solo puse la interfaz en modo bridge y ahora tengo el 
servidor de Camaras IPVIEW corriendo desde una ventana windows, dentro 
de linux, trabaja estupendo.


Me gustaría resolver el problema con wine si... me pongo nervioso 
teniendo esa MV alli ;-)



=
Miguel A. Oyarzo O.
Ingeniería en Redes y Telecomunicaciones
Austro Internet S.A.INALAMBRICA S.A.
Teléfono: [+05661] 710030
Punta Arenas - Chile
Linux User: # 483188 - counter.li.org
=


Re: Capas de abstracción (fue Re: Postgresql que se muere)

2010-07-15 Por tema Franco Catrin L.
El jue, 15-07-2010 a las 16:19 -0400, Aldrin Martoq escribió:
 On Jul 15, 2010, at 3:15 PM, Franco Catrin L. wrote:
  El jue, 15-07-2010 a las 13:02 -0400, Aldrin Martoq escribió:
  On Jul 15, 2010, at 10:03 AM, Franco Catrin L. wrote:
  Mi mirada al documento es respecto a cómo las abstracciones pueden jugar
  en contra cuando no sabes qué está pasando realmente por debajo, algo
  que queda claro al leer los comentarios en este thread.
  Un buen ejemplo que da el autor es cuando recorres una estructura de
  datos y perfectamente el programador puede recorrerla de una forma que
  el rendimiento se degrade.
  Las abstracciones que gotean no son un error, son un hecho.  
  No, eso se llama usar la herramienta adecuada. Si estas usando un software 
  para lo que no está hecho, obvio que te vas a topar con cosas para las 
  cuales no estaba preparado.
  No entiendo la relación?  Leíste el artículo completo?
  Si volvemos al tema original, el error de postgresql es algo que no espero 
  de una base de datos (bueno, en realidad puede fallar pero el mensaje te 
  deja de manos cruzadas). Y eso independiente de cómo este hecho por debajo.
 
 Las capas de abstracción no son para protegernos de los errores, son para 
 *solucionar un problema*. Esto implica que son buenas para cierto ámbito (no 
 para todas) pues están diseñadas para hacer tal o cual cosa. Y deben hacerlo 
 bien.
 
 En tu ejemplo del artículo, supongamos que es una biblioteca que le paso una 
 lista y tiene una operación que hace algo con ella (por ejemplo, ordenarla). 
 Siguiendo el ejemplo, tenemos un caso en que tiene la operación tiene muy mal 
 rendimiento (por cómo está construida la biblioteca justo la mala suerte).

 La postura del artículo es que la biblioteca nos protege o facilita de lo 
 complicado que es el mundo real (el problema de ordenar una lista), por eso 
 a veces te toca bailar con la fea. Pero si cuando construimos la biblioteca, 
 lo que se pidió era resolver el problema de ordenar una lista de manera 
 rápida, entonces el problema es otro: se ignoró dicho requisito (puede ser 
 ambas partes: quien usa la biblioteca como quien la construye, o ambos). 


El ejemplo va por otro lado.

Como programadores asumimos que la memoria es lineal y cada celda
tiene el mismo costo de acceso.  Esa es la abstracción.

La realidad es que la memoria puede estar fragmentada y además tienes
sistemas de caché intermedios, por lo que no existe un costo de acceso
igual para todos los casos.

Cómo una biblioteca te puede proteger de eso si como programador
necesitas por ejemplo un array bidimensional que vas a procesar por
filas y por columnas indistintamente?

 Es como si llevas el auto a un mecánico y te comienza a chamullar con miles 
 de dramas (no, que ahora tuve este problema, no que ahora se quemó no se que 
 cosa)... puras excusas, pues le pagas al mecánico para resolver tal problema. 
 Si el mecánico no puede preveer este tipo de dramas, está dando un pésimo 
 servicio; hay veces en que esto sucede, pero lo que debe pasar es que el te 
 advierte antes. Algo similar sería que la biblioteca del ejemplo nunca fue 
 declarada performante. De ahí el herramienta adecuada, ¿ves? Por el otro 
 lado, si la biblioteca sí fue declarada como performante, esto es un bug... 
 nada de andar chamullando con leaky abstractions o lo complicado que es la 
 vida.

En ese caso, si le pagas al mecánico por resolver un problema puntual,
lo puede hacer perfectamente, otra cosa muy distinta es querer que te
deje el auto andando.  Es la clásica confusión entre el que define los
requerimientos y el que los tiene que satisfacer.

 Hay millones de ejemplos en la vida real: ir al mecánico, que un doctor te 
 opere de la vesícula, cuando haces un trámite en el banco... Que algo del 
 mundo real falle no es excusa para dar un mal servicio, es lo mismo con una 
 capa de software.

Qué me dices del ejemplo en donde los sistemas de seguridad de un auto
no ocultan la diferencia entre manejar con o sin lluvia?

La capa de software o los servicios siempre tienen un límite en donde no
pueden resolver los problemas por si mismos.  Es ahí donde salta la
excepción.

Que estén o no declarados esos límites es otro problema muy distinto, y
al final la elegancia con que se resuelven algunos casos puede ser
inútil en la práctica, aumentando el costo para el 99% de los casos sólo
por el 1% de los casos (o menos).

En mi opinión la perfección tiene un costo que tiende a infinito.

  Por qué no? Es una situación de excepción, al igual que cuando el
  cliente te avisa que no se puede conectar a la base de datos.
  Si te fijas, el error dice que no pudo obtener la memoria que necesitaba
  para realizar la operación, algo que siempre puede suceder.  En este
  caso es claro que no se justifica y el motor se confundió al estimar el
  tamaño, pero en el normal de los casos sí debería retornar una excepción
  cuando no puede hacer lo qué le estás pidiendo.
  ERROR:  invalid memory alloc request