Pular para o conteúdo
Visualizando 2 posts - 16 até 17 (de 17 do total)
  • Autor
    Posts
  • #99795
    rman
    Participante

      [quote=”felipeg”:3hv3hhts]É, pelo retorno acho que você caiu nesses notes da metalink:

      — ORA-01555 And Other Errors while Exporting Table With LOBs, How To Detect Lob Corruption. (Doc ID 452341.1)
      — EXP ORA-01555 ORA-22924 ORA-01578 ORA-22922 (Doc ID 787004.1)

      Você tem acesso ao metalink?

      A sugestão que eles dão é o seguinte update nos campos com erro:

      update set = empty_blob()
      where rowid in (rowids dos registros corrompidos);

      Porém sugiro testar, se possível, em um ambiente que não seja de produção pois nunca testei uma situação parecida.

      Atenciosamente,
      Felipe.[/quote]

      O bug está em exportar um tabela que possui campo BLOG, e este campo está nulo em algumas linhas ??? Registro corrompido seria isso ???

      Que valor retorna empty_blob() ?

      #99798
      felipeg
      Participante

        [quote=”rman”:rd5n0jq0][quote=”felipeg”:rd5n0jq0]É, pelo retorno acho que você caiu nesses notes da metalink:

        — ORA-01555 And Other Errors while Exporting Table With LOBs, How To Detect Lob Corruption. (Doc ID 452341.1)
        — EXP ORA-01555 ORA-22924 ORA-01578 ORA-22922 (Doc ID 787004.1)

        Você tem acesso ao metalink?

        A sugestão que eles dão é o seguinte update nos campos com erro:

        update set = empty_blob()
        where rowid in (rowids dos registros corrompidos);

        Porém sugiro testar, se possível, em um ambiente que não seja de produção pois nunca testei uma situação parecida.

        Atenciosamente,
        Felipe.[/quote]

        O bug está em exportar um tabela que possui campo BLOG, e este campo está nulo em algumas linhas ??? Registro corrompido seria isso ???

        Que valor retorna empty_blob() ?[/quote]

        É por ai rman

        O empty_blob ou clob inicializa a coluna para que a mesma não fique como nulo impedindo assim o problema na hora de exportar o objeto.

        A definição da Oracle é essa

        “EMPTY_BLOB and EMPTY_CLOB return an empty LOB locator that can be used to initialize a LOB variable or, in an INSERT or UPDATE statement, to initialize a LOB column or attribute to EMPTY. EMPTY means that the LOB is initialized, but not populated with data. You must initialize a LOB attribute that is part of an object type before you can access and populate it.”

        Se você quiser ver na prática, crie uma tabela com um campo blob

        Em uma linha adicione o valor NULL para o campo e na outra linha adicione a função EMPTY_BLOB(), faça um select e compare.

        O que eu percebi é que é uma situação inconstante, por exemplo, acabei de realizar o mesmo teste aqui em nosso ambiente (Oracle 10.2.0.3) e o problema não ocorreu.

        Atenciosamente,
        Felipe.

      Visualizando 2 posts - 16 até 17 (de 17 do total)
      • Você deve fazer login para responder a este tópico.