<div dir="ltr">R<div class="gmail_default" style="font-family:arial,helvetica,sans-serif;display:inline">​enato++++</div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;display:inline"><br></div>
</div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;display:inline">Era mais ou menos isso que tava pensando mesmo.</div></div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif;display:inline">
Mas como faço isso usando o DBI. Não consegui.</div><span style="font-family:arial,helvetica,sans-serif">​</span></div></div><div class="gmail_extra"><br clear="all"><div><div dir="ltr"><br>[...]'s<br><br>Marcio<div><br>
</div><div><div style="font-family:arial;font-size:small">========================================</div><div style="font-family:arial;font-size:small">########### Campanha Ajude o Marcio! ###########</div><div style="font-family:arial;font-size:small">
<a href="http://sosmarcio.blogspot.com.br/" style="color:rgb(17,85,204)" target="_blank">http://sosmarcio.blogspot.com.br/</a></div><div style="font-family:arial;font-size:small"><a href="http://www.vakinha.com.br/VaquinhaP.aspx?e=195793" style="color:rgb(17,85,204)" target="_blank">http://www.vakinha.com.br/VaquinhaP.aspx?e=195793</a><br>
</div><div style="font-family:arial;font-size:small">========================================</div></div></div></div>
<br><br><div class="gmail_quote">Em 23 de setembro de 2013 17:33, Renato Santos <span dir="ltr"><<a href="mailto:renato.cron@gmail.com" target="_blank">renato.cron@gmail.com</a>></span> escreveu:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">explicando melhor,<div><br></div><div>já que você não parece ter ninguem pra controlar de verdade quantos registros tem para ser processados,</div><div>voce pode fazer um</div><div><br></div><div>BEGIN;</div>


<div>SELECT xxx FROM table WHERE not_processed LIMIT 1 FOR UPDATE ;</div><div><processa></div><div>UPDATE</div><div><br></div><div>COMMIT;</div><div><br></div><div>como só tem um 'limit 1' você teria q rodar isso várias vezes.</div>


<div><br></div><div>vocẽ tambem pode aumentar o número, só que ai se você colocar 100, e só tiver 40 registros, o segundo e os demais processos não vão pegar ninguem.</div><div><br></div></div><div class="HOEnZb"><div class="h5">
<div class="gmail_extra"><br>

<br><div class="gmail_quote">2013/9/23 Renato Santos <span dir="ltr"><<a href="mailto:renato.cron@gmail.com" target="_blank">renato.cron@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div dir="ltr">Como é mysql, só posso dizer:<div><br></div><div><a href="http://dev.mysql.com/doc/refman/5.0/en/innodb-locking-reads.html" target="_blank">http://dev.mysql.com/doc/refman/5.0/en/innodb-locking-reads.html</a><br>


</div><div>
boa sorte!</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote"><div><div>2013/9/23 Marcio - Google <span dir="ltr"><<a href="mailto:marciorp@gmail.com" target="_blank">marciorp@gmail.com</a>></span><br>



</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">

Salve Mongers!</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">
<br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">
Tenho uma tabela em MySql com algumas centenas de registros.</div><div><div dir="ltr"><br></div><div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Em alguns momentos tenho que "processar" esses registros da forma mais rápida possível.</div>




<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">O tempo de processamento de cada registro é de aproximadamente 4-5 segundos, tempo esse alheio ao meu controle ou a minha vontade.</div>




<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Para agilizar, rodo várias vezes o mesmo app, e cada vez que ele sobe pega um lote de registros. Para impedir que a próxima cópia do app a subir pegue os mesmos registros, criei uma coluna a mais, e quando o app sobe ele verifica se a coluna tá vazia, se tiver ele grava o PID dele.</div>




<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Está funcionando mais ou menos, exceto pelo fato que não gostei da forma que ficou e de um efeito colateral. As vezes uma das cópias do app dá algum erro e cai, só que os registros do lote dele ficam lá com o PID gravado na coluna, então as outras cópias não mexem mais com esses registros e eles ficam indefinidamente pendentes.</div>




<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Alguma dica de como fazer algo "mais elegante" e "seguro"?</div>




<div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Para adiantar:</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">




1. Tem que ser MySql. Posso mexer na tabela a vontade.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">2. O processamento não tem como ser mexido.</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">




<br></div></div><div dir="ltr"><br>[...]'s<br><br>Marcio<div><br></div><div><div style="font-family:arial;font-size:small">========================================</div><div style="font-family:arial;font-size:small">



########### Campanha Ajude o Marcio! ###########</div>
<div style="font-family:arial;font-size:small"><a href="http://sosmarcio.blogspot.com.br/" style="color:rgb(17,85,204)" target="_blank">http://sosmarcio.blogspot.com.br/</a></div><div style="font-family:arial;font-size:small">




<a href="http://www.vakinha.com.br/VaquinhaP.aspx?e=195793" style="color:rgb(17,85,204)" target="_blank">http://www.vakinha.com.br/VaquinhaP.aspx?e=195793</a><br></div><div style="font-family:arial;font-size:small">========================================</div>




</div></div></div>
</div>
<br></div></div>=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org" target="_blank">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
<br></blockquote></div><span><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div><span style="color:rgb(51,51,51);font-size:x-small">Saravá,</span></div><div><span style="color:rgb(51,51,51);font-size:x-small">Renato CRON</span></div>



<div><div style="text-align:right"><font size="1" color="#333333"><a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a></font></div></div><div style="text-align:right"><font size="1" color="#333333"><a href="http://twitter.com/#!/renato_cron" target="_blank">@renato_cron</a></font></div>




</font></span></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div><span style="color:rgb(51,51,51);font-size:x-small">Saravá,</span></div><div><span style="color:rgb(51,51,51);font-size:x-small">Renato CRON</span></div><div>


<div style="text-align:right"><font size="1" color="#333333"><a href="http://www.renatocron.com/blog/" target="_blank">http://www.renatocron.com/blog/</a></font></div></div><div style="text-align:right"><font size="1" color="#333333"><a href="http://twitter.com/#!/renato_cron" target="_blank">@renato_cron</a></font></div>



</div>
</div></div><br>=begin disclaimer<br>
   Sao Paulo Perl Mongers: <a href="http://sao-paulo.pm.org/" target="_blank">http://sao-paulo.pm.org/</a><br>
 SaoPaulo-pm mailing list: <a href="mailto:SaoPaulo-pm@pm.org">SaoPaulo-pm@pm.org</a><br>
 L<<a href="http://mail.pm.org/mailman/listinfo/saopaulo-pm" target="_blank">http://mail.pm.org/mailman/listinfo/saopaulo-pm</a>><br>
=end disclaimer<br>
<br></blockquote></div><br></div>