montano 0 Denunciar post Postado Outubro 19, 2009 boa tarde.. Estou tentando fazer um select em meu BD: SELECT con.n_contrato,con.cod_cliente,con.cod_produto,con.rua,con.numero,con.complemento,con.bairro,con.cep,con.cidade,cli.tel_contato FROM tb_contrato con, tb_cliente cli Isso esta me retornando um erro de :[19-Oct-2009 16:44:56] PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 50 bytes) in /home/insidete/extranet/model/dao/Relatorios/AntigoPmeDao.php on line 24 Essa linha corresponde a isso: $registros[self::$ponteiro] = new AntigoPme(); É onde mando fazer o encapsulamento no BEAN. Oque eu faço? :S Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Outubro 20, 2009 no php.ini, aumente o limite de consumo da memória colque um valor maior do atual e veja se resolve, senão, continue aumentando. exemplo, 60mb memory_limit = 60M 128mb memory_limit = 128M é recomendável também analisar a query sql e outros processos de execução do script, pois está utilizando muita memória. no seu caso, ultrapassou o limite de 30mb Compartilhar este post Link para o post Compartilhar em outros sites
montano 0 Denunciar post Postado Outubro 20, 2009 hinom, Esse limite esta ligado ao numero de dados carregado na query?, porque eu não quero ter que ficar aumentando essa memoria, porque se pra 700 linhas ele gastou + de 30mb, daqui a 1 ano ele vai ta gastando quanto... Qual é o recomendado para isso? Você acha que é o fato de eu estar fazendo DAO, se eu fizesse somente DA, sem estanciar um objeto para querys grandes isso ajuda na velocidade? O problema de memoria ocorre na query ou no estanciamento? pois o erro esta dando na linha onde estancio meu Object do DAO. valeu Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Outubro 20, 2009 pode aumentar para algo em torno de 128mb se o servidor suportar para um server com 4gb de memoria está bom. quanto à sua consulta, se realmente é necessário selecioar tantos registros num unico script, aconselho a utilizar a função mysql_free_result(); http://php.net/mysql_free_result Compartilhar este post Link para o post Compartilhar em outros sites