Clipper On Line • Ver Tópico - Mysql deu bug

Mysql deu bug

Discussão sobre SQL

Moderador: Moderadores

 

Mysql deu bug

Mensagempor ANDRIL » 13 Jun 2022 11:24

Tenho uma hospedagem com banco Mysql tenho a vários anos com PHP 5.4 sem problemas.
Aconteceu uma situação que não consigo entender como pode ter ocorrido, nunca havia acontecido.

Tabela

ID| FUNCIONARIO | BRINDE | DISTRIBUIDOR | FORNECEDOR | DATAENTREGA
10| JOSE PEREIRA | A | JOSE | LUNA | 2022-06-09 07:00:00
11| JOSE PEREIRA | B | JOSE | LUNA | 2022-06-09 07:00:00
12| AMANDA SILVA | A | JOSE | LUNA | 2022-06-09 07:00:13
13| PEDRO SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:24
14| MARI SILVA | B | JOSE | LUNA | 2022-06-09 07:00:35
15| JOYCE SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:48



O funcionário JOSE PEREIRA foi retirar seu brinde. Ele tem o brinde A e B em um só UPDATE os 2 são processados colocando a data e hora da entrega no caso 2022-06-09 07:00:00 que esta correto.
Nas próximas entregas quando os outros vieram retirar seus brindes, já estavam todos baixados como entregue. Note que cada horário é diferente um do outro e sempre com um intervalo de 10 a 15 segundos, não tem como pois o processo do atendente demora um pouco entre um atendimento e outro, então este intervalo não bate,

Outra, toda a query do update que da baixa no brinde roda pelo ID então como pode ter agido nos demais? Se fosse uma unica operação todos deveriam ter a mesma data e hora da entrega e não tem.
No caso do JOSE PEREIRA tem 2 registros, para cada um faz um update separado.
UPDATE retiradas SET dataentrega='2022-06-09 07:00:00' WHERE id=10 AND distribuidor='JOSE' AND idfornecedor="LUNA" LIMIT 1
UPDATE retiradas SET dataentrega='2022-06-09 07:00:00' WHERE id=11 AND distribuidor='JOSE' AND idfornecedor="LUNA" LIMIT 1


Para simular o que pode ter ocorrido, tirei da query até o id=10 e também o LIMIT 1 para abranger mais
UPDATE retiradas SET dataentrega='2022-06-09 07:00:00' WHERE distribuidor='JOSE' AND idfornecedor="LUNA"

ID| FUNCIONARIO | BRINDE | DISTRIBUIDOR | FORNECEDOR | DATAENTREGA
10| JOSE PEREIRA | A | JOSE | LUNA | 2022-06-09 07:00:00
11| JOSE PEREIRA | B | JOSE | LUNA | 2022-06-09 07:00:00
12| AMANDA SILVA | A | JOSE | LUNA | 2022-06-09 07:00:00
13| PEDRO SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:24

14| MARI SILVA | B | JOSE | LUNA | 2022-06-09 07:00:00

15| JOYCE SOUZA | A | AMARAL | LUNA | 2022-06-09 07:00:48


Notem que ao retirar o ID da query, todos assumem a mesma data e hora da entrega o que esta correto. Resolvi fazer teste sem o ID pensando que lá na hospedagem eles fazendo alguma alteração dos arquivos php pudesse ter lido a query pela metade ficando sem o ID e assim abrangendo mais registros do que deveria abranger, mas como o teste acima, deveria ter colocado a mesma data e hora em todos, e não com intervalo mencionado acima.

Vendo no log do php notei que neste dia o SERVIDOR da hospedagem passou por alguns problemas técnicos, inclusive teve alguns problemas devido ter alterado a versão do PHP para 7, durante alguns minutos, depois acertaram para a correta novamente 5.4,

O provedor não conseguiu me disponibilizar as querys que chegaram até o banco, devido nossa hospedagem ser do tipo compartilhada e não dedicada, assim fiquei sem ter algo para consultar.

Enfim, meu conhecimento em Mysql é bem restrito, sempre imaginei ser um banco confiável.
Alguma ideia do que pode ter ocorrido?
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
Avatar de usuário

ANDRIL
Usuário Nível 5

Usuário Nível 5
 
Mensagens: 1271
Data de registro: 06 Jul 2004 00:44
Curtiu: 12 vezes
Mens.Curtidas: 46 vezes

Mysql deu bug

Mensagempor JoséQuintas » 13 Jun 2022 21:39

Revise o fonte.
O intervalo de tempo não tem a ver com usuário, mas também não teria a ver com uma query, porque a execução seria praticamente instantânea.
Máquina diferente com horário errado?
Pelo que parece, o horário é fornecido pelo programa e não automático do MySQL.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18159
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes

Mysql deu bug

Mensagempor ANDRIL » 15 Jun 2022 19:40

JoséQuintas escreveu:Pelo que parece, o horário é fornecido pelo programa e não automático do MySQL.

Sim José o horário de entrega o sistema que manda porem o sistema é online e a data é pega do servidor não do pc do cliente. Por isso algo estranho ocorreu, todos deveriam ter o mesmo horário e não diferentes pois independentemente de ser feito um loop no php para fazer um update por vez, o horário deveria ser o mesmo por que ela é obtida fora do loop.

Acabei criando uma rotina para salvar todas as querys e seus resultados em log, acaso ocorra novamente, tenho um norte para tentar entender o motivo.
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
Avatar de usuário

ANDRIL
Usuário Nível 5

Usuário Nível 5
 
Mensagens: 1271
Data de registro: 06 Jul 2004 00:44
Curtiu: 12 vezes
Mens.Curtidas: 46 vezes

Mysql deu bug

Mensagempor JoséQuintas » 15 Jun 2022 22:18

Usuário com várias janelas abertas só pra deixar o programador maluco? kkkkk
José M. C. Quintas
Harbour 3.2, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar de usuário

JoséQuintas
Membro Master

Membro Master
 
Mensagens: 18159
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 15 vezes
Mens.Curtidas: 1215 vezes




Retornar para SQL

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 13 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro