6. Guia para relatar erros

Quando é encontrado algum erro no PostgreSQL nós desejamos conhecê-lo. Seus relatórios de erro são parte importante para tornar o PostgreSQL mais confiável, porque mesmo o mais extremo cuidado não pode garantir que todas as partes do PostgreSQL vão funcionar em todas as plataformas sob qualquer circunstância.

As sugestões abaixo têm por objetivo ajudá-lo a preparar seu relatório de erro, permitindo que este possa ser tratado de uma forma efetiva. Ninguém é obrigado a segui-las, mas são feitas para serem vantajosas para todos.

Nós não podemos prometer corrigir todos os erros imediatamente. Se o erro for óbvio, crítico, ou afetar muitos usuários, existe uma boa chance de alguém olhá-lo. Pode acontecer, também, nós solicitarmos a atualização para uma nova versão, para ver se o erro também acontece na nova versão. Também podemos decidir que o erro não poderá ser corrigido antes de uma grande reescrita que planejamos fazer. Ou, talvez, é simplesmente muito difícil corrigi-lo e existem assuntos mais importantes na agenda. Se for necessária ajuda imediata, deve ser levada em consideração a contratação de um suporte comercial.

6.1. Identificando erros

Antes de relatar um erro, por favor leia e releia a documentação para verificar se realmente pode ser feito o que está se tentando fazer. Se não está claro na documentação que algo pode ou não ser feito, por favor informe isto também; é um erro da documentação. Se acontecer do programa fazer algo diferente do que está escrito na documentação, isto também é um erro. Pode incluir, mas não está restrito às seguintes circunstâncias:

Aqui "programa" se refere a qualquer executável, e não apenas ao processo servidor.

Estar lento ou consumir muitos recursos não é necessariamente um erro. Leia a documentação ou faça perguntas em alguma lista de discussão pedindo ajuda para ajustar suas aplicações. Não agir de acordo com o padrão SQL também não é necessariamente um erro, a não ser que a aderência com a funcionalidade específica esteja explicitamente declarada.

Antes de prosseguir, verifique a lista TODO (a fazer) e a FAQ para ver se o erro já não é conhecido. Se você não conseguir decodificar a informação da lista TODO, relate seu problema. O mínimo que podemos fazer é tornar a lista TODO mais clara.

6.2. O que relatar

O mais importante a ser lembrado quando relatamos erros é declarar todos os fatos, e somente os fatos. Não especule sobre o que você acha que está certo ou errado, o que "parece que deva ser feito", ou qual parte do programa está falhando. Se você não está familiarizado com a implementação você provavelmente vai supor errado, e não vai nos ajudar nem um pouco. E, mesmo que você esteja familiarizado, uma explanação educada é um grande suplemento, mas não substitui os fatos. Se nós formos corrigir o erro, nós temos que vê-lo acontecer primeiro. Informar fatos cruamente é relativamente direto (provavelmente pode ser copiado e colado a partir da tela), mas geralmente detalhes importantes são deixados de fora porque alguém pensou que não tinha importância, ou que o relatório seria entendido de qualquer forma.

Os seguintes itens devem estar contidos em todo relatório de erro:

Não tenha medo que seu relatório de erro se torne muito longo. Este é um fato da vida. É melhor relatar tudo da primeira vez do que nós termos que extrair os fatos de você. Por outro lado, se seus arquivos de entrada são enormes, é justo perguntar primeiro se alguém está interessado em vê-los.

Não perca seu tempo tentando descobrir que mudanças na entrada fazem o problema desaparecer. Isto provavelmente não vai ajudar a resolver o problema. Se for visto que o erro não pode ser corrigido imediatamente, você ainda vai ter tempo para compartilhar sua descoberta com os outros. Também, novamente, não perca seu tempo adivinhando porque o erro existe. Nós o encontraremos brevemente.

Ao escrever o relatório de erro, por favor escolha uma terminologia que não confunda. O pacote de software em seu todo é chamado de "PostgreSQL" e, algumas vezes, de "Postgres" para abreviar. Se estiver se referindo especificamente ao processo servidor mencione isto, não diga apenas que o "PostgreSQL caiu". A queda de um único processo servidor é bem diferente da queda do processo "postmaster" pai; por favor não diga "o postmaster caiu" quando um único processo servidor caiu, nem o contrário. Além disso os programas cliente, como o terminal interativo "psql", são completamente separados do servidor. Por favor, tente especificar se o problema está no lado do cliente ou no lado do servidor.

6.3. Onde relatar os erros

De modo geral, os relatórios de erro devem ser enviados para a lista de discussão de relatórios de erros em . É necessária a utilização de um assunto descritivo para a mensagem de correio eletrônico, talvez uma parte da própria mensagem de erro.

Outro método é preencher o relatório de erro disponível no sítio do projeto na Web em http://www.postgresql.org/. O preenchimento desta forma faz com que seja enviado para a lista de discussão .

Não envie o relatório de erro para nenhuma lista de discussão dos usuários, tal como ou . Estas listas de discussão são para responder perguntas dos usuários, e seus subscritores normalmente não desejam receber relatórios de erro. Mais importante ainda, eles provavelmente não vão conseguir corrigir o erro.

Por favor, também não envie relatórios para a lista de discussão dos desenvolvedores em . Esta lista é para discutir o desenvolvimento do PostgreSQL e nós gostamos de manter os relatórios de erro em separado. Nós podemos decidir discutir seu relatório de erro em pgsql-hackers, se o problema necessitar uma maior averiguação.

Se você tiver problema com a documentação, o melhor lugar para relatar é na lista de discussão da documentação em . [1] Por favor, seja específico sobre qual parte da documentação você está descontente.

Se seu erro for algum problema de portabilidade ou uma plataforma não suportada, envie uma mensagem de correio eletrônico para , para que nós (e você) possamos trabalhar para portar o PostgreSQL para esta plataforma.

Nota: Devido à grande quantidade de spam na Internet, todos os endereços de correio eletrônico acima são de listas de discussão fechadas. Ou seja, você precisa subscrever a lista primeiro para depois poder enviar mensagens (entretanto, você não precisa subscrever para utilizar o formulário de relatório de erro da Web). Se você deseja enviar uma mensagem de correio eletrônico, mas não deseja receber o tráfego da lista, você pode subscrever e configurar sua opção de subscrição com nomail. Para maiores informações envie uma mensagem para contendo apenas a palavra help no corpo da mensagem.

Notas

[1]

Informe os erros encontrados na tradução deste manual a . (N.T.)