Rodolfo Vegas escribió: > Como estan? En estos momentos esoty implementando las subconsultas > difusas en el from y ya estoy por terminar sal vo por un problema que > creemos las personas que estamos en el equipo de investigación que es por > problemas de memoria, les voy a explicar, primero hago un query, > específicamente este: select * from (select * from personas where > edad=viejo) as foo; y al principio me da este resultado: > > ci | nombre_apellido | edad | Gr.Memb. > ----------+-------------------------------------+------+---------- > 18167977 | Rodolfo Jose Vegas Gomez | 22 | 0.285714 > 17986853 | Aury Carolina Rodriguez Rodriguez | 22 | 0.285714 > 12773099 | Lilibeth del Carmen Gomez Hernandez | 32 | 1 > 7095645 | Judith Josefina Gomez Hernandez | 42 | 1 > 3289620 | Maria Efigenia de Gomez Hernandez | 65 | 1 > 8789654 | Elizabeth del Vale Gomez Hernandez | 39 | 1 > (6 rows) > > que esta bien, cuando vuelvo a repetir el mismo query el servidor se cae; o > sea, la primera vez si da, ya la segunda repitiendo el mismo query da mal, > estamos de acuerdo que es problema de memoria pero no sabemos porque ya que > hacemos los mismos procedimientos que los jefes de proyecto que hicieron > algo parecido, ahora uno puede determinar en postgre si una estructura esta > violando segmento, tiene una referencia corrupta a una dirección de > memoria????? Gracias por la ayuda.
Primero: ¿Estás compilando con --enable-cassert? Eso es fundamental durante el desarrollo y ayuda a descubrir algunos errores típicos. Segundo: vas a necesitas manejarte bien con GDB para estudiar las caídas cuando ocurran. ¿Sabes usarlo a partir de un "core"? Tercero: al hacer pfree() cuando estás con enable-cassert, las estructuras se rellenan con 0x7F lo cual ayuda a ver que estás referenciando memoria después de liberarla. Nota: cuando se libera un contexto de memoria, se rellena toda la memoria que contenga sin necesidad de pfree(). Cuarto: ¿sabes lo que son los MemoryContext verdad? -- Alvaro Herrera http://www.flickr.com/photos/alvherre/ "You're _really_ hosed if the person doing the hiring doesn't understand relational systems: you end up with a whole raft of programmers, none of whom has had a Date with the clue stick." (Andrew Sullivan) -- TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá leerlo