Co-Delivering a full-day precon on SQLBits

This week I have got some very exciting news – together with Andreas Wolter I will be delivering a full-day precon at the biggest European Microsoft Data Platform Conference – SQLBits. On 17th of July 2014 we shall be delivering…

DBA SQL Server por Acidente no codificando.net

Atualizando os dados pessoal, o link para o evento de hoje da #32 Edição do Codificando.net: http://live.codificando.net/ No momento da gravação o mesmo estará disponível no site. Espero  vocês lá! – Olá pessoal, tive a honra de ser convidado para o encontro do chapter Codificando.net na próxima segunda-feira as 17h e 30min. Estarei fazendo uma pequena amostra da palestra DBA…

Fórum Técnico de SQL Sever

Dia 25/04/2014 acontecerá o Fórum Técnico de SQL Server, onde teremos uma série de palestras e laboratórios sobre diversos assuntos de SQL Server. Essa é mais uma excelente oportunidade de estar perto assistindo e batendo um papo com os maiores nomes do SQL Server nacional e com o time de produto da Microsoft. O evento acontecerá na […]

Evento Oficial Microsoft de Lançamento do SQL Server 2014

  Pessoal como sabemos o SQL Server 2014 RTM será lançado no dia 01/04/2014 – http://blogs.technet.com/b/microsoft_blog/archive/2014/03/18/sql-server-2014-released-to-manufacturers-will-be-generally-available-april-1.aspx?WT.mc_id=Blog_SQL_RTM_SQL14#.UyiT7NexkM0.twitter Com isso a Microsoft Brasil está disponibilizando um evento gratuito de lançamento do SQL Server 2014, que irá acontecer no dia 25-04-2014 (Sexta-Feira) das 09:00 Hs as 18:00 Hs na Microsoft Brasil – Av. das Nações Unidas 12901 – […]

SQL Saturday #325 – São Paulo

Fala galera, mais uma vez vamos rodar o evento o SQL Saturday em São Paulo. Agende a data 27/Setembro/2014, sábado, para não fazer nada a não ser aprender e compartilhar SQL Server e Business Intelligence. E você, sabe o que é o SQL Saturday? SQLSaturday é um evento de capacitação para profissionais de SQL Server, [...]

The post SQL Saturday #325 – São Paulo appeared first on Think Think SQL.

SQL Saturday #325

Galera é com grande satisfação que anuncio mais um SQL Saturday no Brasil. A bola da vez agora é São Paulo. Para quem não conhece ainda o SQL Saturday é um evento organizado pelo PASS normalmente em conjunto com algum PASS Chapter local. Esse evento ocorre em diversas partes do mundo todos os sábados e […]

Análise de backups

Muitas vezes temos problemas com backups, mas na verdade o problema não é a operação de backup em sí ou o SQL Server. O grande vilão dos backups é o espaço reservado para esta operação.

Para um maior sucesso nestas operações, temos que levar em conta alguns factores, como tempo de retenção e o crescimento da base de dados.

O script que trago hoje ajuda neste trabalho, trazendo informações historiais sobre o tamanho do ficheiro de backup, o tempo que o backup leva para completar e é ainda o possível estimar o tamanho do backup, caso a opção de backup compression esteja activa.

Este script tem várias utilidades, e uma delas é verificar um padrão de crescimento do backup das bases de dados, o que permite prever as necessidades de disco no futuro. Outra possibilidades é o cálculo do tempo necessário estimado para a janela de backups, além de ser possível verificar se a activação do backup compression pode trazer ou não benefícios, em termos de espaço em disco.





Para fazer download do script clique aqui.

SQL Saturday #284 Porto Alegre

Pessoal, esse ano teremos o SQL Saturday em Porto Alegre que será no dia 26-04-2014. Eu submeti minha palestra e foi aprovada, segue mais informações. Título: In-Memory OLTP a.k.a Hekaton Descrição: Nessa sessão você irá aprender o novo recurso "In-Memory" do SQL Server 2014 para ambientes OLTP, como os registros são armazenados em memória, como […]

SQL Server 2014 RTM on 1st of April 2014

After 2 years in making, a couple of days ago Microsoft has announced RTM (Released to Manufacture) of SQL Server 2014 will happen on 1st of April of 2014. Choosing 1st of April as a GA date sounds like a…

O Estranho caso do SQL Server que não sabia fazer contas – Episódio 2

Este é o segundo episódio da saga "O Estranho caso do SQL Server que não sabia fazer contas" (podem ver aqui o primeiro episódio).

[...] Após rever o código e confirmar que nada havia de mal com o mesmo resolvi utilizar a ferramenta SQL Profiler (ok é verdade devia tê-lo feito com Extended Events mas fica para outra ocasião) para verificar qual o comando que estava a ser enviado para o SQL Server.

Para o página:

Podemos constatar no Profiler que o comando executado é:


A primeira conclusão que podemos tirar é que o comando correto está a ser enviado para o SQL Server. Embora neste caso ao enviarmos o valor 250.358 deveríamos ter obtido o valor 500.716 e não 1.736.566. A questão que se coloca agora é será que o MSSQL retornou o valor correto ou aconteceu algo pelo caminho até à ASP.Net Page.

É claro que ao executar manualmente o comando no SQL Server obtemos:


Se por um lado existe alguma satisfação por saber que o MSSQL ainda sabe fazer contas :).., ainda se mantem a questão sobre qual o valor efetivamente retornado... afinal na página não era este o valor apresentado.

Resolvi fazer uma pequena alteração no código por forma a poder monitorizar com o Profiler qual o valor efetivamente devolvido. Assim adicionei um output parameter  onde seria colocado o valor calculado e posteriormente utilizado para apresentar na página.
Esta alteração aportava também a esperança de que o código anterior tivesse algum bug que eu não me tivesse apercebido e o problema ficasse resolvido. Infelizmente não foi isso que aconteceu.. passado algum tempo o problema voltou a acontecer... Mas destas vez consegui saber que para este exemplo:


O MSSQL tinha devolvido:


Podemos assim verificar que o valor  colocado no output parameter era o valor correto como se pode ver no evento RPC Output Parameter:

Em desespero de causa resolvi monitorizar os pacotes TDS que vinham do SQL Server para o WebServer. E, mais uma vez, quando o erro acontecia pude verificar que para este pedido:

o que vinha pelo "fio" era o seguinte pacote TDS:


sendo que o valor 0x3A972 convertido para int resulta no valor 239.986 que, para este caso, seria o valor correcto.

Começavam a esgotar-se as hipóteses de localizar o erro. Resumindo:
- O comando de SQL enviado para o MSSQL era o correto;
- O MSSQL calculava corretamente a informação;
- Os dados devolvidos pelo MSSQL eram os corretos.

A verdade é que na página o valor apresentado continuava a ser incorreto e a seguir à recepção da resposta do SQL nenhuma linha de código era executada. O pãnico e o horror instalavam-se definitivamente!!

Estaríamos perante um bug?.. se sim o que o despoletava?.. de onde vinha? Afinal o que acontecia ao valor devolvido pelo MSSQL?!!!

Não percam o próximo (e último) episódio onde iremos perceber o que realmente estava a acontecer :)

Go to Top