Re: [pgbr-geral] Licenças (era: firebirs X postgres)
Em 17 de agosto de 2012 20:00, Leandro Guimarães Faria Corcete DUTRA l...@dutras.org escreveu: Le 17/08/12 18:3-0300, Euler Taveira a écrit : na licença BSD você tem a *liberdade* de fazer o que bem entender. Você pode contra argumentar dizendo que é uma restrição para garantir a perpetuação da liberdade mas como afirmou Descartes, a liberdade é uma característica essencial da vontade e, assim sendo, devo possuir vontade (liberdade de escolha) para fazer qualquer coisa. Não, a vontade não é autônoma, o indivíduo vive em sociedade. Ou seja, a liberdade só faz sentido dentro de um sistema de valores, ou acontece a atomização, que leva à lei da selva e à tirania. Vida, Liberdade e Propriedade, os direitos humanos mais fundamentais de todos. Cada um pode fazer o que quiser, desde que não viole estes 3 direitos de outrem. -- Atenciosamente, Alexsander da Rosa ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Ordenar Datas
Olá Pessoal, sou novo por aqui e estou com uma dúvida. Possuo na minha tabela de clientes um campo date para guardar a data de nascimento desse cliente e apartir daí calcular a idade dele em minha aplicação Java. Estava querendo implementar um lembrete de aniversariantes (toda vez que o sistema fosse aberto, mostrar todos os clientes que ainda vão fazer aniversário, ordenados por mês, seguido pelo dia, ignorando o ano, na minha tela principal). Será que isso é possível utilizando SQL (PostgreSQL) ou Java? Aguardo sugestões. Obrigado ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Ordenar Datas
Em 18 de agosto de 2012 10:37, Ramiro Pamponet roli...@oi.com.br escreveu: Olá Pessoal, sou novo por aqui e estou com uma dúvida. Possuo na minha tabela de clientes um campo date para guardar a data de nascimento desse cliente e apartir daí calcular a idade dele em minha aplicação Java. Estava querendo implementar um lembrete de aniversariantes (toda vez que o sistema fosse aberto, mostrar todos os clientes que ainda vão fazer aniversário, ordenados por mês, seguido pelo dia, ignorando o ano, na minha tela principal). Será que isso é possível utilizando SQL (PostgreSQL) ou Java? Aguardo sugestões. Obrigado Se eu entendi bem vc quer algo tipo: SELECT codigo, nome, data_nascimento FROM tabela ORDER BY extract(MONTH FROM data_nascimento), extract(DAY FROM data_nascimento); Att, -- Fabrízio de Royes Mello Consultoria/Coaching PostgreSQL Blog sobre TI: http://fabriziomello.blogspot.com Perfil Linkedin: http://br.linkedin.com/in/fabriziomello Twitter: http://twitter.com/fabriziomello ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Ordenar Datas
Em 18/08/12, Ramiro Pamponetroli...@oi.com.br escreveu: Olá Pessoal, sou novo por aqui e estou com uma dúvida. Possuo na minha tabela de clientes um campo date para guardar a data de nascimento desse cliente e apartir daí calcular a idade dele em minha aplicação Java. Estava querendo implementar um lembrete de aniversariantes (toda vez que o sistema fosse aberto, mostrar todos os clientes que ainda vão fazer aniversário, ordenados por mês, seguido pelo dia, ignorando o ano, na minha tela principal). Será que isso é possível utilizando SQL (PostgreSQL) ou Java? Aguardo sugestões. Obrigado Uma possibilidade, para listar os aniversariantes por mês, é: SELECT nome, to_char(data_de_nascimento, 'MMDD') FROM sua_tabela ORDER BY 2; Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Ordenar Datas
Vou testar essa query para ver se atende as minhas necessidades, e volto a postar assim que tiver uma confirmação. Valeu! Em 18 de agosto de 2012 10:46, Fabrízio de Royes Mello fabriziome...@gmail.com escreveu: Em 18 de agosto de 2012 10:37, Ramiro Pamponet roli...@oi.com.brescreveu: Olá Pessoal, sou novo por aqui e estou com uma dúvida. Possuo na minha tabela de clientes um campo date para guardar a data de nascimento desse cliente e apartir daí calcular a idade dele em minha aplicação Java. Estava querendo implementar um lembrete de aniversariantes (toda vez que o sistema fosse aberto, mostrar todos os clientes que ainda vão fazer aniversário, ordenados por mês, seguido pelo dia, ignorando o ano, na minha tela principal). Será que isso é possível utilizando SQL (PostgreSQL) ou Java? Aguardo sugestões. Obrigado Se eu entendi bem vc quer algo tipo: SELECT codigo, nome, data_nascimento FROM tabela ORDER BY extract(MONTH FROM data_nascimento), extract(DAY FROM data_nascimento); Att, -- Fabrízio de Royes Mello Consultoria/Coaching PostgreSQL Blog sobre TI: http://fabriziomello.blogspot.com Perfil Linkedin: http://br.linkedin.com/in/fabriziomello Twitter: http://twitter.com/fabriziomello ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Ordenar Datas
Vou testar essa query também e avaliar o seu retorno, comparando com a resposta data pelo Fabrízio de Royes Mello. Valeu pela dica Também! Em 18 de agosto de 2012 10:51, Osvaldo Kussama osvaldo.kuss...@gmail.comescreveu: Em 18/08/12, Ramiro Pamponetroli...@oi.com.br escreveu: Olá Pessoal, sou novo por aqui e estou com uma dúvida. Possuo na minha tabela de clientes um campo date para guardar a data de nascimento desse cliente e apartir daí calcular a idade dele em minha aplicação Java. Estava querendo implementar um lembrete de aniversariantes (toda vez que o sistema fosse aberto, mostrar todos os clientes que ainda vão fazer aniversário, ordenados por mês, seguido pelo dia, ignorando o ano, na minha tela principal). Será que isso é possível utilizando SQL (PostgreSQL) ou Java? Aguardo sugestões. Obrigado Uma possibilidade, para listar os aniversariantes por mês, é: SELECT nome, to_char(data_de_nascimento, 'MMDD') FROM sua_tabela ORDER BY 2; Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro de Conexão
Em 17 de agosto de 2012 23:21, Vinicius Santos vinicius.santos.li...@gmail.com escreveu: coisa em tráfego não. Na minha visão de DBA mesmo uma aplicação Desktop Client/Server deveria Conectar -- Processar algo -- fechar conexão. Pena que algumas ferramentas/IDE não permitam isso por causa de seus componentes de acesso à dados... Acho que isso não tem a ver com a ferramenta ou IDE. O próprio psql ou pgAdmin mantém as conexões abertas. Posso citar Powerbuilder usando datawindows com a opção Fetch as Needed. O componente cria um cursor no banco de dados e realiza FETCH conforme você avança visualmente na tela. Matando a conexão isso não é possível. De qualquer maneira, seria possível fechá-las a cada DML sim, mas acho que ficaria mais caro a cada consulta que um usuário fizer, vc abrir-consultar-fechar a conexão. Uma inserção nova vc teria que abrirConexao()-iniciarTransacao()-DMLs-Commit-fecharConexao(); Seria interessante fazer testes com a aplicação trabalhando assim e comparar os resultados. É... eu já fiz este teste absurdo no passado - absurdo porque vai contra a idéia do client/server. Em aplicações Desktop, principalmente as legadas, isso é praticamente impossível. Eu não me refiro a encerrar a conexão a cada comando executado, mas a cada processamento, como por exemplo, o processo inteiro de gravação de uma nota fiscal depois de ter informado dados do cliente e todos os dados do produto. -- TIAGO J. ADAMI http://www.adamiworks.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Ordenar Datas
Fabrizio, Sua solução atende 99% as minhas necessidades. Fiz umas alterações. select nome, aniversario from clientes where extract(MONTH from aniversario) = extract(MONTH from now()) order by extract(MONTH from aniversario), extract(DAY from aniversario) Mas pra ficar 100% será que não teria como filtrar também pelo dia do mês, para que não mostre os clientes que já fizeram aniversário naquele mês? Mostar somente os clientes que ainda irão fazer aniversário, seja dentro do próprio mês ou nos meses seguintes. Tentei inluir na query a opção select ... where ... and extract(DAYfrom aniversario) = extract(DAYfrom now()) order by ... mas dessa forma ele pula também os meses em que o dia é = que o dia atual. ATT Ramiro Em 18 de agosto de 2012 10:46, Fabrízio de Royes Mello fabriziome...@gmail.com escreveu: Em 18 de agosto de 2012 10:37, Ramiro Pamponet roli...@oi.com.brescreveu: Olá Pessoal, sou novo por aqui e estou com uma dúvida. Possuo na minha tabela de clientes um campo date para guardar a data de nascimento desse cliente e apartir daí calcular a idade dele em minha aplicação Java. Estava querendo implementar um lembrete de aniversariantes (toda vez que o sistema fosse aberto, mostrar todos os clientes que ainda vão fazer aniversário, ordenados por mês, seguido pelo dia, ignorando o ano, na minha tela principal). Será que isso é possível utilizando SQL (PostgreSQL) ou Java? Aguardo sugestões. Obrigado Se eu entendi bem vc quer algo tipo: SELECT codigo, nome, data_nascimento FROM tabela ORDER BY extract(MONTH FROM data_nascimento), extract(DAY FROM data_nascimento); Att, -- Fabrízio de Royes Mello Consultoria/Coaching PostgreSQL Blog sobre TI: http://fabriziomello.blogspot.com Perfil Linkedin: http://br.linkedin.com/in/fabriziomello Twitter: http://twitter.com/fabriziomello ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Postgresql distribuído
Boa tarde, Estou elaborando um projeto no qual há a necessidade de que uma base de dados seja acessível em vários pontos, mesmo se houver alguma queda de comunicação. Estou cogitando a respeito de replicação master-slave ou master slaves e slave-slave. Considerei também a possibilidade de bancos de dados distribuídos. O fato é que, caso a comunicação entre os pontos se interrompa, deve existir uma base em cada ponto e, ao voltar a comunicação, os dados devem ser sincromizados. Alguém já teve necessidade semelhante e pode dividir a experiência ou sugere referência de material de estudo? Obrigado, Eduardo Alexandre ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Erro fechando conexão
Pessoal, uso o component de acesso a dados da Devart para Postgresql. Nunca tive problemas, até agora. Estou executando PgSQLCommand e uma rotina multi thread. O erro que estou tendo é que a conexão simplesmente fecha. No arquivo de log, aparece o seguinte: 2012-08-18 16:53:16 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 16:53:16 BRT LOG: EOF inesperado durante conexão do cliente 2012-08-18 16:55:13 BRT ERRO: formato de mensagem é inválido 2012-08-18 16:55:13 BRT FATAL: tipo de mensagem do cliente 57 é inválido Antes disso ta tudo normal: 2012-08-18 16:48:20 BRT LOG: sistema de banco de dados foi desligado em 2012-08-18 16:48:17 BRT 2012-08-18 16:48:20 BRT LOG: sistema de banco de dados está pronto para aceitar conexões 2012-08-18 16:48:20 BRT LOG: inicializador do autovacuum foi iniciado Alguém saberia me dizer o que pode estar acontecendo? Será que tem a ver com o multithreading? Obs.: não posso fazer várias conexões, porque preciso que tudo seja executado na mesma transação. Inclusive, não sei se chamadas sucessivas a uma mesma função escrita em PL que esteja dentro da mesma transação será executada em outro processador/processo do servidor. Jean Domingues. ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro fechando conexão
On 18-08-2012 17:02, Jean Domingues wrote: uso o component de acesso a dados da Devart para Postgresql. Nunca tive problemas, até agora. Estou executando PgSQLCommand e uma rotina multi thread. O erro que estou tendo é que a conexão simplesmente fecha. No arquivo de log, aparece o seguinte: 2012-08-18 16:53:16 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 16:53:16 BRT LOG: EOF inesperado durante conexão do cliente Essas dizem respeito a recusa de conexão pelo PostgreSQL? Qual versão utiliza? Há algum firewall ativo no servidor ou entre o cliente e servidor que esteja bloqueando a porta utilizada (por padrão 5432)? 2012-08-18 16:55:13 BRT ERRO: formato de mensagem é inválido 2012-08-18 16:55:13 BRT FATAL: tipo de mensagem do cliente 57 é inválido Isso me parece alguma incompatibilidade entre o driver utilizado e a versão do PostgreSQL. Como você não deu detalhes fica difícil dizer. Qual a consulta gera esse erro? -- Euler Taveira de Oliveira - Timbira http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Ordenar Datas
Em 18 de agosto de 2012 13:48, Ramiro Pamponet roli...@oi.com.br escreveu: Fabrizio, Sua solução atende 99% as minhas necessidades. Fiz umas alterações. select nome, aniversario from clientes where extract(MONTH from aniversario) = extract(MONTH from now()) order by extract(MONTH from aniversario), extract(DAY from aniversario) Mas pra ficar 100% será que não teria como filtrar também pelo dia do mês, para que não mostre os clientes que já fizeram aniversário naquele mês? Mostar somente os clientes que ainda irão fazer aniversário, seja dentro do próprio mês ou nos meses seguintes. Talvez date_trunc [1] e interval ajude você a encontrar um caminho mais apropriado. [1] http://www.postgresql.org/docs/current/static/functions-datetime.html#FUNCTIONS-DATETIME-TRUNC []s -- Dickson S. Guedes mail/xmpp: gue...@guedesoft.net - skype: guediz http://guedesoft.net - http://www.postgresql.org.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Ordenar Datas
Em 18 de agosto de 2012 13:48, Ramiro Pamponet roli...@oi.com.br escreveu: Fabrizio, Sua solução atende 99% as minhas necessidades. Fiz umas alterações. select nome, aniversario from clientes where extract(MONTH from aniversario) = extract(MONTH from now()) order by extract(MONTH from aniversario), extract(DAY from aniversario) Mas pra ficar 100% será que não teria como filtrar também pelo dia do mês, para que não mostre os clientes que já fizeram aniversário naquele mês? Mostar somente os clientes que ainda irão fazer aniversário, seja dentro do próprio mês ou nos meses seguintes. Tentei inluir na query a opção select ... where ... and extract(DAYfrom aniversario) = extract(DAYfrom now()) order by ... mas dessa forma ele pula também os meses em que o dia é = que o dia atual. ATT Ramiro Em 18 de agosto de 2012 10:46, Fabrízio de Royes Mello fabriziome...@gmail.com escreveu: Em 18 de agosto de 2012 10:37, Ramiro Pamponet roli...@oi.com.brescreveu: Olá Pessoal, sou novo por aqui e estou com uma dúvida. Possuo na minha tabela de clientes um campo date para guardar a data de nascimento desse cliente e apartir daí calcular a idade dele em minha aplicação Java. Estava querendo implementar um lembrete de aniversariantes (toda vez que o sistema fosse aberto, mostrar todos os clientes que ainda vão fazer aniversário, ordenados por mês, seguido pelo dia, ignorando o ano, na minha tela principal). Será que isso é possível utilizando SQL (PostgreSQL) ou Java? Aguardo sugestões. Obrigado Se eu entendi bem vc quer algo tipo: SELECT codigo, nome, data_nascimento FROM tabela ORDER BY extract(MONTH FROM data_nascimento), extract(DAY FROM data_nascimento); Como você quer desconsiderar o ano das datas, tente: SELECT nome, aniversario FROM clientes WHERE to_char(aniversario, 'MMDD') to_char(CURRENT_DATE, 'MMDD') ORDER BY to_char(aniversario, 'MMDD'), nome; Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro fechando conexão
Oi Euler, alterei o postgresql.conf pra logar todas as instruções sql. O log ficou assim agora: 2012-08-18 18:07:56 BRT LOG: executar PRSTMT47070893478969016/PORTAL47070893478969016: SELECT version() 2012-08-18 18:07:56 BRT LOG: executar PRSTMT32037130078969016/PORTAL32037130078969016: show integer_datetimes 2012-08-18 18:07:56 BRT LOG: executar PRSTMT149479683378969016/PORTAL149479683378969016: SET autocommit=true 2012-08-18 18:07:56 BRT LOG: executar PRSTMT176644945978969016/PORTAL176644945978969016: SET datestyle=ISO 2012-08-18 18:07:56 BRT LOG: executar PRSTMT115073424278969016/PORTAL115073424278969016: SET client_encoding='UTF8' 2012-08-18 18:07:56 BRT LOG: executar PRSTMT79959489878969016/PORTAL79959489878969016: SET search_path TO public; 2012-08-18 18:07:56 BRT LOG: executar PRSTMT18277082778969016/PORTAL18277082778969016: SET TRANSACTION ISOLATION LEVEL READ COMMITTED 2012-08-18 18:07:56 BRT LOG: executar PRSTMT120818118878969016/PORTAL120818118878969016: BEGIN 2012-08-18 18:08:01 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 18:08:01 BRT LOG: EOF inesperado durante conexão do cliente 2012-08-18 18:08:01 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 18:08:01 BRT LOG: EOF inesperado durante conexão do cliente Pra traz ta executando normalmente outras instruções. O pg está na mesma máquina (de desenvolvimento). Nunca tive problemas, inclusive outras rotinas, cadastro, etc, está funcionando normalmente. A versão 9.1.2. O que existe de particular nessa rotina é que ela está sendo executada de modo assincrono (até 8 vezes), até que a thread seja liberada, e chame novamente com outros parametros. Isso eu fiz pra poder executá-la simultaneamente, e otimizar o uso de processadores do servidor. Porém isso tem que acontecer dentro de uma transação. Pode estar relacionado com o fato de serem varias chamadas simultaneas? Algo como DoS? - Mensagem original - De: Euler Taveira eu...@timbira.com Para: Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Cc: Enviadas: Sábado, 18 de Agosto de 2012 17:13 Assunto: Re: [pgbr-geral] Erro fechando conexão On 18-08-2012 17:02, Jean Domingues wrote: uso o component de acesso a dados da Devart para Postgresql. Nunca tive problemas, até agora. Estou executando PgSQLCommand e uma rotina multi thread. O erro que estou tendo é que a conexão simplesmente fecha. No arquivo de log, aparece o seguinte: 2012-08-18 16:53:16 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 16:53:16 BRT LOG: EOF inesperado durante conexão do cliente Essas dizem respeito a recusa de conexão pelo PostgreSQL? Qual versão utiliza? Há algum firewall ativo no servidor ou entre o cliente e servidor que esteja bloqueando a porta utilizada (por padrão 5432)? 2012-08-18 16:55:13 BRT ERRO: formato de mensagem é inválido 2012-08-18 16:55:13 BRT FATAL: tipo de mensagem do cliente 57 é inválido Isso me parece alguma incompatibilidade entre o driver utilizado e a versão do PostgreSQL. Como você não deu detalhes fica difícil dizer. Qual a consulta gera esse erro? -- Euler Taveira de Oliveira - Timbira http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro fechando conexão
Só complementando, tem uma variação do log, que agora lista a chama da função pl: 2012-08-18 18:20:24 BRT LOG: executar PRSTMT51654996179717353/PORTAL51654996179717353: SELECT version() 2012-08-18 18:20:24 BRT LOG: executar PRSTMT30284275279717353/PORTAL30284275279717353: show integer_datetimes 2012-08-18 18:20:24 BRT LOG: executar PRSTMT151131857779717353/PORTAL151131857779717353: SET autocommit=true 2012-08-18 18:20:24 BRT LOG: executar PRSTMT170462156579717353/PORTAL170462156579717353: SET datestyle=ISO 2012-08-18 18:20:24 BRT LOG: executar PRSTMT108890634879717353/PORTAL108890634879717353: SET client_encoding='UTF8' 2012-08-18 18:20:24 BRT LOG: executar PRSTMT76880307779717353/PORTAL76880307779717353: SET search_path TO public; 2012-08-18 18:20:24 BRT LOG: executar PRSTMT98458027279717368/PORTAL98458027279717368: SELECT * from sp_pesquisar_cliente($1, $2) AS return_value 2012-08-18 18:20:24 BRT DETALHE: parâmetros: $1 = '22635', $2 = '978' 2012-08-18 18:20:26 BRT ERRO: portal PORTAL99004448679717368 não existe 2012-08-18 18:20:26 BRT FATAL: tipo de mensagem do cliente 0 é inválido - Mensagem original - De: Jean Domingues ejdom...@yahoo.com.br Para: Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Cc: Enviadas: Sábado, 18 de Agosto de 2012 18:17 Assunto: Re: [pgbr-geral] Erro fechando conexão Oi Euler, alterei o postgresql.conf pra logar todas as instruções sql. O log ficou assim agora: 2012-08-18 18:07:56 BRT LOG: executar PRSTMT47070893478969016/PORTAL47070893478969016: SELECT version() 2012-08-18 18:07:56 BRT LOG: executar PRSTMT32037130078969016/PORTAL32037130078969016: show integer_datetimes 2012-08-18 18:07:56 BRT LOG: executar PRSTMT149479683378969016/PORTAL149479683378969016: SET autocommit=true 2012-08-18 18:07:56 BRT LOG: executar PRSTMT176644945978969016/PORTAL176644945978969016: SET datestyle=ISO 2012-08-18 18:07:56 BRT LOG: executar PRSTMT115073424278969016/PORTAL115073424278969016: SET client_encoding='UTF8' 2012-08-18 18:07:56 BRT LOG: executar PRSTMT79959489878969016/PORTAL79959489878969016: SET search_path TO public; 2012-08-18 18:07:56 BRT LOG: executar PRSTMT18277082778969016/PORTAL18277082778969016: SET TRANSACTION ISOLATION LEVEL READ COMMITTED 2012-08-18 18:07:56 BRT LOG: executar PRSTMT120818118878969016/PORTAL120818118878969016: BEGIN 2012-08-18 18:08:01 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 18:08:01 BRT LOG: EOF inesperado durante conexão do cliente 2012-08-18 18:08:01 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 18:08:01 BRT LOG: EOF inesperado durante conexão do cliente Pra traz ta executando normalmente outras instruções. O pg está na mesma máquina (de desenvolvimento). Nunca tive problemas, inclusive outras rotinas, cadastro, etc, está funcionando normalmente. A versão 9.1.2. O que existe de particular nessa rotina é que ela está sendo executada de modo assincrono (até 8 vezes), até que a thread seja liberada, e chame novamente com outros parametros. Isso eu fiz pra poder executá-la simultaneamente, e otimizar o uso de processadores do servidor. Porém isso tem que acontecer dentro de uma transação. Pode estar relacionado com o fato de serem varias chamadas simultaneas? Algo como DoS? - Mensagem original - De: Euler Taveira eu...@timbira.com Para: Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Cc: Enviadas: Sábado, 18 de Agosto de 2012 17:13 Assunto: Re: [pgbr-geral] Erro fechando conexão On 18-08-2012 17:02, Jean Domingues wrote: uso o component de acesso a dados da Devart para Postgresql. Nunca tive problemas, até agora. Estou executando PgSQLCommand e uma rotina multi thread. O erro que estou tendo é que a conexão simplesmente fecha. No arquivo de log, aparece o seguinte: 2012-08-18 16:53:16 BRT LOG: não pôde receber dados do cliente: unrecognized winsock error 10061 2012-08-18 16:53:16 BRT LOG: EOF inesperado durante conexão do cliente Essas dizem respeito a recusa de conexão pelo PostgreSQL? Qual versão utiliza? Há algum firewall ativo no servidor ou entre o cliente e servidor que esteja bloqueando a porta utilizada (por padrão 5432)? 2012-08-18 16:55:13 BRT ERRO: formato de mensagem é inválido 2012-08-18 16:55:13 BRT FATAL: tipo de mensagem do cliente 57 é inválido Isso me parece alguma incompatibilidade entre o driver utilizado e a versão do PostgreSQL. Como você não deu detalhes fica difícil dizer. Qual a consulta gera esse erro? -- Euler Taveira de Oliveira - Timbira http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br
Re: [pgbr-geral] Erro fechando conexão
On 18-08-2012 18:22, Jean Domingues wrote: Só complementando, tem uma variação do log, que agora lista a chama da função pl: 2012-08-18 18:20:24 BRT LOG: executar PRSTMT51654996179717353/PORTAL51654996179717353: SELECT version() 2012-08-18 18:20:24 BRT LOG: executar PRSTMT30284275279717353/PORTAL30284275279717353: show integer_datetimes 2012-08-18 18:20:24 BRT LOG: executar PRSTMT151131857779717353/PORTAL151131857779717353: SET autocommit=true 2012-08-18 18:20:24 BRT LOG: executar PRSTMT170462156579717353/PORTAL170462156579717353: SET datestyle=ISO 2012-08-18 18:20:24 BRT LOG: executar PRSTMT108890634879717353/PORTAL108890634879717353: SET client_encoding='UTF8' 2012-08-18 18:20:24 BRT LOG: executar PRSTMT76880307779717353/PORTAL76880307779717353: SET search_path TO public; 2012-08-18 18:20:24 BRT LOG: executar PRSTMT98458027279717368/PORTAL98458027279717368: SELECT * from sp_pesquisar_cliente($1, $2) AS return_value 2012-08-18 18:20:24 BRT DETALHE: parâmetros: $1 = '22635', $2 = '978' 2012-08-18 18:20:26 BRT ERRO: portal PORTAL99004448679717368 não existe 2012-08-18 18:20:26 BRT FATAL: tipo de mensagem do cliente 0 é inválido Você utiliza alguma solução de pool? Esse log_line_prefix está incompreensível (coloque espaços e diga qual o valor utilizado). Você ainda não informou o que lhe pedi no último email... -- Euler Taveira de Oliveira - Timbira http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Postgresql distribuído
On 18-08-2012 15:22, Eduardo Alexandre wrote: Boa tarde, Estou elaborando um projeto no qual há a necessidade de que uma base de dados seja acessível em vários pontos, mesmo se houver alguma queda de comunicação. Estou cogitando a respeito de replicação master-slave ou master slaves e slave-slave. Considerei também a possibilidade de bancos de dados distribuídos. Master/Slave ou múltiplos slaves não são solução se você precisa de base acessível em diversos pontos como afirmou. Slaves só são acessíveis para leitura. Você precisa banco distribuído ou replicação multi-master. O fato é que, caso a comunicação entre os pontos se interrompa, deve existir uma base em cada ponto e, ao voltar a comunicação, os dados devem ser sincromizados. Alguém já teve necessidade semelhante e pode dividir a experiência ou sugere referência de material de estudo? Distribuir o banco você terá de fazer com um planejamento bem bolado, aplicação ciente da distribuição e você precisará tratar uma estratégia para replicar o que você precisa. Para evitar isso, uma boa solução multi-master tolerante a queda de comunicação é o Bucardo. Uso em vários ambientes com sucesso. []s Flavio Henrique A. Gurgel Consultor e Instrutor 4Linux Tel: +55-11-2125-4747 www.4linux.com.br ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro fechando conexão
Oi Euler, acabei resolvendo da seguinte forma: abri mão da transação única. E usei uma conexões para cada SqlCommand. Só haverao 8 por, em forma de pilha. Sinceramente não sei explicar o que houve. Quando eu depurava a aplicação, executando passo a passo, não dava erro. O pool que utilize é na aplicação (do próprio componente). Eu te respondi em outro post. O pg é 9.1. Está na própria maquina de desenvolvimento. Só tive problema nessa rotina mesmo, por ser algo mais complexo, envolvendo multithreading, eu imagino. Valeu pela atenção. Jean Domingues. - Mensagem original - De: Euler Taveira eu...@timbira.com Para: Comunidade PostgreSQL Brasileira pgbr-geral@listas.postgresql.org.br Cc: Enviadas: Sábado, 18 de Agosto de 2012 21:23 Assunto: Re: [pgbr-geral] Erro fechando conexão On 18-08-2012 18:22, Jean Domingues wrote: Só complementando, tem uma variação do log, que agora lista a chama da função pl: 2012-08-18 18:20:24 BRT LOG: executar PRSTMT51654996179717353/PORTAL51654996179717353: SELECT version() 2012-08-18 18:20:24 BRT LOG: executar PRSTMT30284275279717353/PORTAL30284275279717353: show integer_datetimes 2012-08-18 18:20:24 BRT LOG: executar PRSTMT151131857779717353/PORTAL151131857779717353: SET autocommit=true 2012-08-18 18:20:24 BRT LOG: executar PRSTMT170462156579717353/PORTAL170462156579717353: SET datestyle=ISO 2012-08-18 18:20:24 BRT LOG: executar PRSTMT108890634879717353/PORTAL108890634879717353: SET client_encoding='UTF8' 2012-08-18 18:20:24 BRT LOG: executar PRSTMT76880307779717353/PORTAL76880307779717353: SET search_path TO public; 2012-08-18 18:20:24 BRT LOG: executar PRSTMT98458027279717368/PORTAL98458027279717368: SELECT * from sp_pesquisar_cliente($1, $2) AS return_value 2012-08-18 18:20:24 BRT DETALHE: parâmetros: $1 = '22635', $2 = '978' 2012-08-18 18:20:26 BRT ERRO: portal PORTAL99004448679717368 não existe 2012-08-18 18:20:26 BRT FATAL: tipo de mensagem do cliente 0 é inválido Você utiliza alguma solução de pool? Esse log_line_prefix está incompreensível (coloque espaços e diga qual o valor utilizado). Você ainda não informou o que lhe pedi no último email... -- Euler Taveira de Oliveira - Timbira http://www.timbira.com.br/ PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Erro fechando conexão
Em 18/08/2012 22:53, Jean Domingues ejdom...@yahoo.com.br escreveu: Oi Euler, acabei resolvendo da seguinte forma: abri mão da transação única. E usei uma conexões para cada SqlCommand. Só haverao 8 por, em forma de pilha. Sinceramente não sei explicar o que houve. Quando eu depurava a aplicação, executando passo a passo, não dava erro. O pool que utilize é na aplicação (do próprio componente). Eu te respondi em outro post. O pg é 9.1. Está na própria maquina de desenvolvimento. Só tive problema nessa rotina mesmo, por ser algo mais complexo, envolvendo multithreading, eu imagino. Cara, pra mim parece que você não está sincronizando direito suas threads (com mutex, por exemplo). Se duas enviarem comandos intercalados pode acontecer coisas desse tipo (a mensagem fica corrompida). Mas veja que no servidor, se for a mesma conexão, será um processo só, então seu paralelismo não faz muito sentido. Caso queria agilizar e ainda manter transacional, você pode usar PREPARED TRANSACTIONS (estude bem antes de usar, não e tão simples). Att., Matheus de Oliveira ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral