RSS RSS feed | Atom Atom feed

Quer descobrir o tamanho de um objeto java na memoria ?


Nosso expert Michael Nascimento revela neste artigo do java.net como fazer para calcular o tamanho de uma instancia de um objeto na memoria utilizando java.lang.Instrument... post muito legal e simples de compreender ;) (topico da discussao deste caso no guj)


Re: Quer descobrir o tamanho de um objeto java na memoria ?

Dyego, posso tirar uma duvida sobre mySQL?

Re: Quer descobrir o tamanho de um objeto java na memoria ?

pode sim :)

MySQL e Lock's

Este é um trecho do log do mysql de um cliente meu: 070111 23:00:01 InnoDB: Starting shutdown... 070111 23:00:02 InnoDB: Shutdown completed; log sequence number 0 161800627 070111 23:00:02 [Note] D:\mysql\bin\mysqld-max-nt.exe: 'Shutdown' completo 070111 23:00:05 InnoDB: Started; log sequence number 0 161800627 070111 23:00:05 [Note] D:\mysql\bin\mysqld-max-nt.exe: ready for connections. Version: '5.0.22-community-max-nt' socket: '' port: 3306 MySQL Community Edition - Max (GPL) 070112 7:30:13 InnoDB: Error: trying to declare trx to enter InnoDB, but InnoDB: it already is declared. TRANSACTION 0 760834, ACTIVE 0 sec, OS thread id 2276, thread declared inside InnoDB 0 mysql tables in use 1, locked 1 1 lock struct(s), heap size 320 MySQL thread id 4, query id 4 MARILIA 192.168.0.4 root update Insert into Log (Dt_Log,Hr_Log,Cd_Usuario,Ds_Log,Sistema) Values ('2007-01-12 07:32:15', '07:32:15', '', 'O sistema se conectou ao banco de dados', 'M') 070112 15:37:35 [Note] D:\mysql\bin\mysqld-max-nt.exe: 'Shutdown' normal 070112 15:37:37 [Warning] D:\mysql\bin\mysqld-max-nt.exe: Forçando finalização da 'thread' 1880 - usuário 'root' 070112 15:37:37 [Warning] D:\mysql\bin\mysqld-max-nt.exe: Forçando finalização da 'thread' 1872 - usuário 'root' 070112 15:37:37 [Warning] D:\mysql\bin\mysqld-max-nt.exe: Forçando finalização da 'thread' 1871 - usuário 'root' pelo que entendi ocorreu um lock na tabela de log do sistema, so gostaria de saber porque, e quando esse lock acontece so consigo inserir na tabela depois de reiniciar o banco. value pela força.

MySQL e Lock's

Simples... porque ocorreu o que chamados de "deadlock" , isso é normal em tabelas MyISAM... aconselho voce trocar o tipo de tabelas do seu sistema para InnoDB... neste tipo de tabela existe "dead lock detection" que evita a grande maioria de acontecimentos deste tipo

Re: Quer descobrir o tamanho de um objeto java na memoria ?

Ola Diego, o problema que essa tabela e todas do sistema ja são InnoDB, CREATE TABLE `log` ( `Id` int(10) unsigned NOT NULL auto_increment, `Dt_Log` date NOT NULL default '0000-00-00', `Hr_Log` time NOT NULL default '00:00:00', `Sistema` char(1) NOT NULL default '', `Cd_Usuario` varchar(15) default NULL, `Ds_Log` varchar(255) default NULL, PRIMARY KEY (`Id`,`Sistema`,`Dt_Log`,`Hr_Log`), KEY `IdxUsuario` (`Cd_Usuario`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; será que pode ser outra coisa?

Re: Quer descobrir o tamanho de um objeto java na memoria ?

Qual versao do MySQL ? e quem circunstancia ocorre o lock ? isso esta me cheirando a bug

Re: Quer descobrir o tamanho de um objeto java na memoria ?

O mySQL é o 5.0.22, o erro ocorre inesperadamente, quando o user vai iniciar o sistema grava na tabela de log, é nesse momento que as vezes ocorre o bloquei e o sistema não consegue concluir o insert, dai so reiniciando o banco. isso ocorre inesperadamente, vou verificar a rotina de inclusão, pode ser algum bug no codigo uso Delphi 7 Zeos 6.1 e mysql 5.0.22 valeu pela força, se tiver mais alguma dica.. eu agradeço. outra pergunta, tem um sistema meu que opera com o banco remoto, com a conexão via ADSL, sera que tem alguma configuração pra melhorar a transferencia? mais uma pergunta, tenho uma tabela onde guardo as imagens dos produtos em campos LogBlob, essa tabela innoDB ja ta com 3GB, sera que posso ter problemas com corrupção dos dados? desculpe meu abuso, obrigado.

Adicione um comentário Envie um TrackBack