- Este tópico contém 32 respostas, 4 vozes e foi atualizado pela última vez 18 anos atrás por
mpvargas.
-
AutorPosts
-
11 de março de 2008 às 7:01 pm #81368
Ishii
ParticipanteNão esta faltando ainda mais umas linhas?
Mas mesmo assim… o IO ainda está alto? A query de analise retornou algumas queries mais acessadas?
[]s Ishii
11 de março de 2008 às 7:11 pm #81369mpvargas
ParticipanteSegue o complemento do Show parameters
NAME TYPE VALUE
query_rewrite_enabled string TRUE
query_rewrite_integrity string enforced
rdbms_server_dn string
read_only_open_delayed boolean FALSE
recovery_parallelism integer 0
recyclebin string on
remote_archive_enable string true
remote_dependencies_mode string TIMESTAMP
remote_listener string
remote_login_passwordfile string EXCLUSIVE
remote_os_authent boolean FALSENAME TYPE VALUE
remote_os_roles boolean FALSE
replication_dependency_tracking boolean TRUE
resource_limit boolean FALSE
resource_manager_plan string
resumable_timeout integer 0
rollback_segments string
serial_reuse string disable
service_names string asoech
session_cached_cursors integer 20
session_max_open_files integer 10
sessions integer 170NAME TYPE VALUE
sga_max_size big integer 6000M
sga_target big integer 5008M
shadow_core_dump string partial
shared_memory_address integer 0
shared_pool_reserved_size big integer 44459622
shared_pool_size big integer 0
shared_server_sessions integer
shared_servers integer 1
skip_unusable_indexes boolean TRUE
smtp_out_server string
sort_area_retained_size integer 0NAME TYPE VALUE
sort_area_size integer 65536
spfile string /u01/app/oracle/dbs/spfileasoe
ch.ora
sql92_security boolean FALSE
sql_trace boolean FALSE
sql_version string NATIVE
sqltune_category string DEFAULT
standby_archive_dest string ?/dbs/arch
standby_file_management string MANUAL
star_transformation_enabled string FALSE
statistics_level string TYPICALNAME TYPE VALUE
streams_pool_size big integer 0
tape_asynch_io boolean TRUE
thread integer 0
timed_os_statistics integer 0
timed_statistics boolean TRUE
trace_enabled boolean TRUE
tracefile_identifier string
transactions integer 187
transactions_per_rollback_segment integer 5
undo_management string AUTO
undo_retention integer 900NAME TYPE VALUE
undo_tablespace string UNDOTBS1
use_indirect_data_buffers boolean FALSE
use_sigio boolean TRUE
user_dump_dest string /u01/app/oracle/admin/asoech/u
dump
utl_file_dir string
workarea_size_policy string AUTO11 de março de 2008 às 7:14 pm #81370mpvargas
ParticipanteQUERIES MAIS ACESSADAS
EXECUTIONS BUFFER_GETS DISK_READS FIRST_LOAD_TIME SQL_TEXT
1 295941 294562 2008-03-11/12:04:34 SELECT /+ */ R_E_C_N_O_ FROM SE5010 WHERE E5_FILIAL < chr(255) AND E5_DATA < chr(255) AND D_E_L_E_T_ != '' AND (E5_TIPODOC ‘BA’ AND E5_NUMCHEQ ” AND E5_SITUACA ‘C’) ORDER BY E5_FILIAL DESC ,E5_DATA DESC ,E5_BANCO DESC ,E5_AGENCIA DESC ,E5_CONTA DESC ,E5_NUMCHEQ DESC ,R_E_C_N_O_ DESC
1 532369 28143 2008-03-11/11:58:45 SELECT FILE_ID, EXTENT_ID, BLOCK_ID, BLOCKS, OWNER||’.’||SEGMENT_NAME SEGMENT_NAME FROM SYS.DBA_EXTENTS ORDER BY FILE_ID, BLOCK_ID
1 532591 28143 2008-03-11/11:58:45 BEGIN SELECT file_id, extent_id, block_id, blocks, owner||’.’||segment_name segment_name BULK COLLECT INTO quest_soo_pkg.object_cache_fileno, quest_soo_pkg.object_cache_extno, quest_soo_pkg.object_cache_blockno, quest_soo_pkg.object_cache_length, quest_soo_pkg.object_cache_segname FROM sys.dba_extents ORDER by file_id, block_id; quest_soo_pkg.object_cache_count := quest_soo_pkg.object_cache_fileno.count; quest_soo_pkg.g_object_cache_initialized := 1; end;
444 1720150 5206 2008-03-11/11:11:32 begin CTB150_01(:1,:2,:3,:4,:5,:6,:7,:8,:9,:10,:11); end;
4 1884414 4417 2008-03-11/11:16:01 SELECT /+ FIRST_ROWS INDEX_DESC(CT2010 CT20101) */ R_E_C_N_O_ FROM CT2010 WHERE CT2_FILIAL < chr(255) AND CT2_DATA < chr(255) AND CT2_LOTE < chr(255) AND CT2_SBLOTE < chr(255) AND CT2_DOC < chr(255) AND CT2_LINHA < chr(255) AND CT2_TPSALD = :B6 AND CTU_IDENT = :B5 AND CTU_CODIGO = :B4 AND CTU_MOEDA = :B3 AND CTU_TPSALD = :B2 AND CTU_LP = :B1 AND CTU_SLCOMP ‘N’ AND D_E_L_E_T_ = ‘ ‘
12814 39098 1093 2008-03-11/08:20:01 SELECT * FROM SA2010 WHERE R_E_C_N_O_ = :1
1286 10630 963 2008-03-11/07:52:52 select /+ index(idl_ub1$ i_idl_ub11) +/ piece#,length,piece from idl_ub1$ where obj#=:1 and part=:2 and version=:3 order by piece#
7555 30259 959 2008-03-11/08:08:29 SELECT * FROM SP8010 WHERE R_E_C_N_O_ = :1
20311 61484 830 2008-03-11/08:46:08 SELECT * FROM SC7010 WHERE R_E_C_N_O_ = :1
9625 28875 716 2008-03-11/08:46:10 SELECT B1_FILIAL,B1_COD,B1_CODITE,B1_GRUPO,D_E_L_E_T_ FROM SB1010 WHERE R_E_C_N_O_ = :1
117 3954 612 2008-03-11/11:12:00 INSERT INTO CT3010 (CT3_FILIAL , CT3_CONTA , CT3_CUSTO , CT3_MOEDA , CT3_TPSALD , CT3_DATA , CT3_DEBITO , CT3_ATUDEB , CT3_ANTDEB , CT3_ATUCRD , CT3_ANTCRD , CT3_SLBASE , CT3_STATUS , CT3_LP , R_E_C_N_O_ ) VALUES (:B14 , :B13 , :B12 , :B11 , :B10 , :B9 , :B8 , :B7 , :B6 , :B5 , :B5 , :B4 , :B3 , :B2 , :B1 )
89475 268418 607 2008-03-11/07:55:07 SELECT RA_FILIAL,RA_MAT,RA_CC,RA_NOME,RA_CIC,RA_PIS,RA_RG,RA_NUMCP,RA_SERCP,RA_DEPIR,RA_DEPSF,RA_NASC,RA_ADMISSA,RA_DEMISSA,RA_SITFOLH,RA_HRSMES,RA_CHAPA,RA_TNOTRAB,RA_PERCADT,RA_CATFUNC,RA_TIPOPGT,RA_ADCACAD,RA_ISALUSA,RA_RESCRAI,RA_TPRCBT,RA_RGORG,RA_CODIGO,RA_MSBLQL,RA_PERCPRO,RA_CODESP,RA_CONFEDE,RA_UFRG,RA_TABBEN,RA_SERVICO,RA_ANTDISS,RA_ASSISTE,RA_ASCRED,RA_VPROEXA,D_E_L_E_T_ FROM SRA010 WHERE R_E_C_N_O_ = :1
5009 55581 548 2008-03-11/07:52:50 select i.obj#,i.ts#,i.file#,i.block#,i.intcols,i.type#,i.flags,i.property,i.pctfree$,i.initrans,i.maxtrans,i.blevel,i.leafcnt,i.distkey,i.lblkkey,i.dblkkey,i.clufac,i.cols,i.analyzetime,i.samplesize,i.dataobj#,nvl(i.degree,1),nvl(i.instances,1),i.rowcnt,mod(i.pctthres$,256),i.indmethod#,i.trunccnt,nvl(c.unicols,0),nvl(c.deferrable#+c.valid#,0),nvl(i.spare1,i.intcols),i.spare4,i.spare2,i.spare6,decode(i.pctthres$,null,null,mod(trunc(i.pctthres$/256),256)),ist.cachedblk,ist.cachehit,ist.logicalread from ind$ i, ind_stats$ ist, (select enabled, min(cols) unicols,min(to_number(bitand(defer,1))) deferrable#,min(to_number(bitand(defer,4))) valid# from cdef$ where obj#=:1 and enabled > 1 group by enabled) c where i.obj#=c.enabled(+) and i.obj# = ist.obj#(+) and i.bo#=:1 order by i.obj#
232 1702 456 2008-03-11/11:12:01 SELECT NVL ( MAX ( CTI_DATA ), ‘ ‘ ) FROM CTI010 WHERE CTI_FILIAL = :B8 AND CTI_CONTA = :B7 AND CTI_CUSTO = :B6 AND CTI_ITEM = :B5 AND CTI_CLVL = :B4 AND CTI_MOEDA = :B3 AND CTI_TPSALD = :B2 AND CTI_DATA < :B1 AND D_E_L_E_T_ = ' '
152 5050 384 2008-03-11/11:12:01 INSERT INTO CTI010 (CTI_FILIAL , CTI_CONTA , CTI_CUSTO , CTI_ITEM , CTI_CLVL , CTI_MOEDA , CTI_TPSALD , CTI_DATA , CTI_DEBITO , CTI_ATUDEB , CTI_ANTDEB , CTI_ATUCRD , CTI_ANTCRD , CTI_SLBASE , CTI_STATUS , CTI_LP , R_E_C_N_O_ ) VALUES (:B16 , :B15 , :B14 , :B13 , :B12 , :B11 , :B10 , :B9 , :B8 , :B7 , :B6 , :B5 , :B5 , :B4 , :B3 , :B2 , :B1 )
7087 28348 378 2008-03-11/07:59:32 SELECT * FROM SRD010 WHERE R_E_C_N_O_ = :1
36910 110752 365 2008-03-11/08:20:02 SELECT E2_FILIAL,E2_PREFIXO,E2_NUM,E2_VALOR,E2_VENCREA,E2_FORNECE,E2_LOJA,E2_NOMFOR,E2_PARCELA,E2_TIPO,E2_NATUREZ,E2_EMISSAO,E2_ITEMD,E2_CCD,E2_DEBITO,E2_CLVLDB,E2_HIST,E2_CODBAR,E2_MULTNAT,E2_BAIXA,E2_LA,E2_ACRESC,E2_DECRESC,E2_VALJUR,E2_NUMBOR,E2_FATURA,E2_NUMBCO,E2_SDACRES,E2_SALDO,E2_USERLBD,E2_DATALBD,E2_HORALBD,E2_USU_ATU,E2_VRETPIS,E2_VRETCOF,E2_VRETCSL,E2_PRETPIS,E2_PRETCOF,E2_PRETCSL,E2_MKBRW,D_E_L_E_T_ FROM SE2010 WHERE R_E_C_N_O_ = :1
61 2143 358 2008-03-11/11:14:05 INSERT INTO CT3010 (CT3_FILIAL , CT3_CONTA , CT3_CUSTO , CT3_MOEDA , CT3_TPSALD , CT3_DATA , CT3_CREDIT , CT3_ATUCRD , CT3_ANTCRD , CT3_ATUDEB , CT3_ANTDEB , CT3_SLBASE , CT3_STATUS , CT3_LP , R_E_C_N_O_ ) VALUES (:B14 , :B13 , :B12 , :B11 , :B10 , :B9 , :B8 , :B7 , :B6 , :B5 , :B5 , :B4 , :B3 , :B2 , :B1 )
178 2591 303 2008-03-11/11:12:00 SELECT NVL ( MAX ( CT3_DATA ), ' ' ) FROM CT3010 WHERE CT3_FILIAL = :B6 AND CT3_CONTA = :B5 AND CT3_CUSTO = :B4 AND CT3_MOEDA = :B3 AND CT3_TPSALD = :B2 AND CT3_DATA < :B1 AND D_E_L_E_T_ = ' '
1286 4585 282 2008-03-11/07:52:52 select /+ index(idl_ub2$ i_idl_ub21) +/ piece#,length,piece from idl_ub2$ where obj#=:1 and part=:2 and version=:3 order by piece#
67795 344285 272 2008-03-11/07:52:50 select intcol#,nvl(pos#,0),col#,nvl(spare1,0) from ccol$ where con#=:1
80 2727 226 2008-03-11/11:14:06 INSERT INTO CTI010 (CTI_FILIAL , CTI_CONTA , CTI_CUSTO , CTI_ITEM , CTI_CLVL , CTI_MOEDA , CTI_TPSALD , CTI_DATA , CTI_CREDIT , CTI_ATUCRD , CTI_ANTCRD , CTI_ATUDEB , CTI_ANTDEB , CTI_SLBASE , CTI_STATUS , CTI_LP , R_E_C_N_O_ ) VALUES (:B16 , :B15 , :B14 , :B13 , :B12 , :B11 , :B10 , :B9 , :B8 , :B7 , :B6 , :B5 , :B5 , :B4 , :B3 , :B2 , :B1 )
445 1408 212 2008-03-11/11:12:00 SELECT NVL ( MIN ( R_E_C_N_O_ ), 0 ) FROM CT3010 WHERE CT3_FILIAL = :B6 AND CT3_CONTA = :B5 AND CT3_CUSTO = :B4 AND CT3_MOEDA = :B3 AND CT3_TPSALD = :B2 AND CT3_DATA = :B1 AND D_E_L_E_T_ = ' '
23806 95883 196 2008-03-11/09:14:05 SELECT CT2_FILIAL,CT2_DATA,CT2_LOTE,CT2_SBLOTE,CT2_DOC,CT2_LINHA,CT2_MOEDLC,CT2_DC,CT2_DEBITO,CT2_CREDIT,CT2_VALOR,CT2_HIST,CT2_CCD,CT2_CCC,CT2_ITEMD,CT2_ITEMC,CT2_CLVLDB,CT2_CLVLCR,CT2_EMPORI,CT2_FILORI,CT2_TPSALD,CT2_ROTINA,CT2_CODCF,CT2_LOJCF,CT2_TITULO,CT2_PARCEL,CT2_PREFIX,D_E_L_E_T_ FROM CT2010 WHERE R_E_C_N_O_ = :1
846 2550 189 2008-03-11/11:39:51 SELECT * FROM SRO010 WHERE R_E_C_N_O_ = :1
3329 51166 183 2008-03-11/10:09:00 INSERT INTO SPC010(PC_FILIAL,PC_MAT,PC_DATA,PC_PD,PC_QUANTC,PC_CC,R_E_C_N_O_) VALUES ( :1,:2,:3,:4,:5,:6,:7)
3965 11895 175 2008-03-11/08:08:29 SELECT * FROM SPC010 WHERE R_E_C_N_O_ = :1
4482 33371 168 2008-03-11/07:52:50 select order#,columns,types from access$ where d_obj#=:1
21826 85399 160 2008-03-11/07:52:53 select /+ rule / bucket_cnt, row_cnt, cache_cnt, null_cnt, timestamp#, sample_size, minimum, maximum, distcnt, lowval, hival, density, col#, spare1, spare2, avgcln from hist_head$ where obj#=:1 and intcol#=:2
1286 5337 158 2008-03-11/07:52:52 select /+ index(idl_sb4$ i_idl_sb41) +*/ piece#,length,piece from idl_sb4$ where obj#=:1 and part=:2 and version=:3 order by piece#
232 710 122 2008-03-11/11:12:01 SELECT NVL ( MAX ( R_E_C_N_O_ ), 0 ) FROM CTI010 WHERE CTI_FILIAL = :B8 AND CTI_CONTA = :B7 AND CTI_CUSTO = :B6 AND CTI_ITEM = :B5 AND CTI_CLVL = :B4 AND CTI_MOEDA = :B3 AND CTI_TPSALD = :B2 AND CTI_DATA = :B1 AND D_E_L_E_T_ = ' '
675 53379 121 2008-03-11/09:20:06 UPDATE CT2010 SET D_E_L_E_T_ = :1,R_E_C_D_E_L_ = :2 WHERE R_E_C_N_O_ = :3
32 802 115 2008-03-11/11:14:07 INSERT INTO CT7010 (CT7_FILIAL , CT7_CONTA , CT7_MOEDA , CT7_TPSALD , CT7_DATA , CT7_DEBITO , CT7_ATUDEB , CT7_ANTDEB , CT7_ATUCRD , CT7_ANTCRD , CT7_SLBASE , CT7_STATUS , CT7_LP , R_E_C_N_O_ ) VALUES (:B13 , :B12 , :B11 , :B10 , :B9 , :B8 , :B7 , :B6 , :B5 , :B5 , :B4 , :B3 , :B2 , :B1 )
895938 2687805 108 2008-03-11/07:53:36 SELECT * FROM SX5010 WHERE R_E_C_N_O_ = :1
922 2766 100 2008-03-11/07:52:50 select cols,audit$,textlength,intcols,property,flags,rowid from view$ where obj#=:1
42 624 98 2008-03-11/11:14:07 SELECT NVL ( MAX ( CT7_DATA ), ' ' ) FROM CT7010 WHERE CT7_FILIAL = :B5 AND CT7_CONTA = :B4 AND CT7_MOEDA = :B3 AND CT7_TPSALD = :B2 AND CT7_DATA 0 AND C7_RESIDUO=’ ‘ AND C7_TPOP’P’ AND C7_CONAPRO’B’ AND SC7.D_E_L_E_T_ = ‘ ‘ORDER BY C7_FILENT,C7_FORNECE,C7_LOJA,C7_NUM11 de março de 2008 às 8:26 pm #81371Ishii
ParticipanteNas primeiras linhas retornadas existem duas queries:
SELECT FILE_ID, EXTENT_ID, BLOCK_ID, BLOCKS, OWNER||’.’||SEGMENT_NAME SEGMENT_NAME FROM SYS.DBA_EXTENTS ORDER BY FILE_ID, BLOCK_ID
BEGIN SELECT file_id, extent_id, block_id, blocks, owner||’.’||segment_name segment_name BULK COLLECT INTO quest_soo_pkg.object_cache_fileno, quest_soo_pkg.object_cache_extno, quest_soo_pkg.object_cache_blockno, quest_soo_pkg.object_cache_length, quest_soo_pkg.object_cache_segname FROM sys.dba_extents ORDER by file_id, block_id; quest_soo_pkg.object_cache_count := quest_soo_pkg.object_cache_fileno.count; quest_soo_pkg.g_object_cache_initialized := 1; end;
Você está usando o TOAD para analisar o crescimento? Ou isso está rodando sempre?
Vou fazer algumas perguntas que podem parecer primárias mas é apenas para estabelecer uma linha de raciocínio e que pode ajudar na sua análise:
1) Os índices estão separados dos Dados? Tablespaces diferentes e datafiles diferentes?
2) No owner das tabelas a Tablespace Default é diferente da SYSTEM?
3) A tablespace Temporária está associada a todos os usários?E vamos em frente…
[]s Ishii
11 de março de 2008 às 9:56 pm #81373mpvargas
ParticipanteVocê está usando o TOAD para analisar o crescimento? Ou isso está rodando sempre?
R: Não uso o TOAD. Essas queries rodam sempre. O ERP da Microsiga faz umas queries meio loucas mesmo.
1) Os índices estão separados dos Dados? Tablespaces diferentes e datafiles diferentes?
R: Dados e Índices em tablespaces diferentes, porém no mesmo disco.
2) No owner das tabelas a Tablespace Default é diferente da SYSTEM?
R: Sim.
3) A tablespace Temporária está associada a todos os usários?
R: A aplicação aponta somente para um usuário
E a luta continua…
11 de março de 2008 às 10:13 pm #81374Ishii
ParticipanteÉ… quais os tamanhos das tablespaces? Elas estão crescendo de forma “anormal”? Ou seja o crescimento por dia é algo muito acima do esperado? No seu server somente o Oracle está rodando?(apesar dele ser otimo para virtualização ou outras coisas…)
[]s Ishii
ps: sei que é um “pé” ficar vendo estas coisas mas às vezes não tem jeito mesmo…
11 de março de 2008 às 11:03 pm #81376mpvargas
ParticipanteAmigo, não tem problema nenhum perguntar, pelo contrário, eu que te agradeço pela ajuda.
Só tenho o Oracle na máquina.
O crescimento da tablespace é normal.
Tenho 2 instâncias na máquina, mas 1 está praticamente parada.
Nessa que estou tendo problema que está em produção, tenho 4 tablespaces, sendo 2 de indices e 2 de dados.
Pelo que dá pra perceber nas monitorações é que o problema ocorre sempre que a query refere-se a 2 tabelas, que são muito grandes…
Seria bom colocar essas 2 tabelas em tablespaces separadas?
E com relação ao RedoLogs e ArchiveLogs, eles podem estar causando esse problema?Obrigado mais uma vez
11 de março de 2008 às 11:39 pm #81377Ishii
ParticipanteOk, pelo que vc havia mencionado o Redo é de 500Mb e acho que está ok, o Archive, o Destino /alog está no mesmo Device das Tablespaces? Se sim pode ser que isso esteja prejudicando e aumentando o acesso a disco sim…
Estas duas tabelas, se forem somente elas podemos isolar e analisar separadamente. Não deve estar fragmentada pois vc havia dito que trocaram recentemente o BD mas melhor dar uma olhada. Senão verifique a query destas tabelas que estão com problemas e poste aqui.
[]s Ishii
12 de março de 2008 às 12:28 am #81378mpvargas
ParticipanteCaro Amigo…
Sim, o /alog está no mesmo Device das Tablespaces… (hdisk1)
E o /rlog no outro device (hdisk0)O estranho é que o hdisk0 fica full-time em 100%
Disk Busy% KBPS TPS KB-Read KB-Writ
hdisk0 100.0 864.0 215.0 784.0 80.0
hdisk1 48.5 1770.0 191.0 1762.0 8.012 de março de 2008 às 12:49 am #81379Ishii
ParticipanteAcho que você terá que monitorar a Aplicação (MicroSiga) mesmo para saber quais são os processos que estão executando vários IOs mesmo… Execute dbms_stats.gather_schema_stats com uns 10% de estimate_percent e analise novamente as queries em intervalos de 30 minutos inicialmente para saber se há muita variação nas queries…
boa sorte…
[]s Ishii
12 de março de 2008 às 3:45 pm #81380Marcio68Almeida
ParticipanteBom dia…
Estou acompanhando de longe este problema e estou achando que o problema não está propriamente no banco…
O aplicativo é muito difundido, a menos que haja alguma customização que desgovernou a aplicação, ela não tem por que estar fazendo tanto IO.
Uma possibilidade é disco, você efetuou um check disk para conferir a integridade dos discos onde estão os dois bancos ???
Você verificou a fragmentação das tabelas (grandes e pequenas) ???
O tempo de resposta vem aumentando ou é constante ??? Se vem aumentando, a partir de quando começou a degradação ?
Você pode separar as duas tabelas grandes em tablespaces distintas, usando o MOVE e REBUILD, isso certamente diminuirá o índice de fragmentação das tabelas grandes e de todas as demais.12 de março de 2008 às 4:24 pm #81383mpvargas
ParticipanteValeu amigo, Obrigado pela ajuda !!!
12 de março de 2008 às 4:41 pm #81384mpvargas
ParticipanteCaro Márcio,
Com relação as suas perguntas, segue abaixo:
– O disco está OK, já verificamos integridade, etc
– Com relação as tabelas, já rodamos estatísticas em todas. Não sei se isso resolve o problema da fragmentação…
– O tempo de resposta da aplicação é constante, o processamento especificamente nessas 2 tabelas é bastante lento, mesmo com poucos usuários logados.
– Vamos providenciar a transferência das tabelas para tablespaces distintasObrigado pela ajuda
12 de março de 2008 às 4:49 pm #81385Ishii
ParticipanteOlá,
As estatísticas apenas alimentam as informações de quantidade de linhas que a tabela possue para que o Oracle decida qual a melhor opção de plano de execução. Isso não afeta a fragmentação. Estas tabelas que parecem ser o problema tem uma quantidade de registros muito grande? E os seus indices?
[]s Ishii
e a luta continua…
12 de março de 2008 às 5:00 pm #81387mpvargas
ParticipanteTabelas que estão causando problemas:
Nome: SE5010
Qtde reg: 3.440.022
Total de Índices: 12Nome: SE1010
Qtde reg: 2.465.510
Total de Índices: 21 -
AutorPosts
- Você deve fazer login para responder a este tópico.