So um comentario a mais para ver se ajuda, pelo menos foi como eu decorei isso: Ao fazer insercoes no oracle 8i ele ira procurar por blocos vazios na free list, o controle da freelist é feito pelo pctused e pctfree, da seguinte vc pode fazer as alteracoes no banco ele irá fazer alteracoes do bloco, mas quando a porcentagem de utilizacao de bloco chegar ao pctused, o Oracle para de utilizar aquele bloco para inserts, utiliza apenas para update e delete Depois, conforme for utilizando (e deletando os registros) o bloco vai esvaziando, assim quando a porcentagem de uso chegar no pctfree o oracle manda o bloco novamente para freelist, liberando novamente seu uso para inserts (utiliza-se o pctused para evitar que updates novos updates nao possam ser salvos no mesmo bloco onde o registro jah se encontra [dividindo os dados do registro em mais de um bloco "row chain" ])
________________________________ De: Emerson Moreira Rocha <tkz...@yahoo.com.br> Para: oracle_br@yahoogrupos.com.br Enviadas: Sexta-feira, 3 de Setembro de 2010 8:33:01 Assunto: Res: [oracle_br] pctfree e pctused Enio, O PCTUSED refere-se ao percentual de utilizacao do bloco de dados, para operacoes de inserção, update e delete ao total de dados inseridos no bloco O PCTFREE ao espaço livre para atualizacoes: Por exemplo um bloco com 100 k pctfree de 10 pctused 60 como no seu caso 95 k de dados no bloco o bloco será travado para inserções, pois atingiu o limite de pctused de 60 e tambem atingiu o limite de pct, ai posteriormente voce da um delete alterando o valor para 55 k de dados no bloco ai o oracle irá liberar o bloco para inserçoes novamente, pois o valor esta abaixo do pctused. MIgracao de blocos Quando o PCTUSED e atingido o Oracle marcar um flag neste bloco que atingiu o limite e grava os dados num outro bloco, porem dados large objects gravam um flag e um bloco e os dados num outro bloco devido ao tamanho ser superior. Att, ________________________________ Emerson M. Rocha >Mobile:(11) 9511-8753 >>E-Mail: tkz...@yahoo.com.br ________________________________ ________________________________ De: Dênio Flávio Garcia da Silva <de...@nbsi.com.br> Para: oracle_br@yahoogrupos.com.br Enviadas: Quarta-feira, 1 de Setembro de 2010 18:24:01 Assunto: [oracle_br] pctfree e pctused Eu tenho um banco Oracle 8.1.7 Lá no init.ora eu tenho o DB_BLOCK_SIZE = 8192. Tenho uma tabela que está definida com PCTFREE = 10 PCTUSED = 60 Quando eu dou um insert, que ocuparia, digamos o tamanho de um bloco, seria mantido 10% de 8192 bytes, ou seja, 819 bytes para os updates desse registro???? Daí ele ia gravar a diferença 7373 bytes no primeiro bloco e o resto num segundo bloco? Outra coisa, o PCTUSED é verificado somente após um delete ou update, e se o espaço ocupado for inferior ao PCTUSED o Oracle dispobiliza esse bloco para inserção de novos dados??? Obrigado, Dênio -- Mensagem verificada pelo sistema de antivírus da Aser Security. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]