Recuperar Arquivos - Banco de dados

1 resposta
fabiomedeirosf

PessoALL,

Estou usando jdbc puro, para maior performance.

Inseri alguns arquivos no banco de dados postgres, até uns 300mb, até aí blz.

Estou com problemas na hora de recuperar.
tenho uma tabela chamada Repositório que foi criada do seguinte modo:

CREATE TABLE REPOSITORIO (
id_repositorio serial,
nome_arquivo varchar,
tamanho integer,
arquivo bytea,
pk…)

bytea é o equivalente no postgres ao blob.

Quando vou recuperar o arquivo que tem um tamanho maior que uns 50 mb, o java me estoura o heap, utilizo a seguinte implementação pra recuperar:

StringBuilder sql = new StringBuilder();
        sql.append("select * from repositorio where id_repositorio = ?");

        PreparedStatement prest = null;
        Connection con = Conexao.getConnection();
        ResultSet result = null;

        try {
            prest = con.prepareStatement(sql.toString());
            prest.setLong(1, idRepositorio);

            result = prest.executeQuery(); //estoura o heap

soluções??

para arquivos menores, está funcionando de boa!

1 Resposta

idev4web

Aumente o tamanho do heap

java -Xms -Xmx

Defaults são:

java -Xms32m -Xmx128m

Criado 19 de outubro de 2010
Ultima resposta 19 de out. de 2010
Respostas 1
Participantes 2