É seguro truncar uma tabela de revisão de campo?

13

Notei que o D7 cria uma tabela field_revision para cada campo e duplica o conteúdo de sua contraparte da tabela de campos, mesmo que as revisões estejam desativadas.

Eu tenho uma grande tabela de texto e está ocupando muito espaço (vários GBs).

Seria seguro truncar a tabela de revisão?

PS: Enquanto isso, eu também relatei isso como um bug .

giorgio79
fonte
Esta é realmente uma boa pergunta! Eu acho que a tabela é criada pelo núcleo, mas apenas obtém registros inseridos se as revisões estiverem ativadas.
stefgosselin
Obrigado :) era o que eu esperava, mas parece que o D7 cria cópias de revisão independentemente. Isso foi confirmado aqui drupal.stackexchange.com/questions/7027/… . Talvez um bug do núcleo?
giorgio79
Vou categorizar isso como um recurso, não um bug;) Eu acho que a lógica além disso é que, se você mudar de idéia e ativar revisões, seria muito sobrecarregado no banco de dados preencher subitamente todas as field_revision_*tabelas.
tostinni
1
Eu tenho bastante, mas acho que isso não tem nada a ver com os módulos contrib. Basta olhar para dentro do seu banco de dados e você verá que todos os campos têm uma tabela field_revision associada ...
giorgio79

Respostas:

3

Acho que o módulo norevisions do Field SQL o ajudará:

Norevisions de SQL de campo fornece um back-end de armazenamento em campo que impede que revisões de entidades sejam salvas no back-end de armazenamento MySQL.

O objetivo do módulo é reduzir a quantidade de dados duplicados salvos em sites grandes do Drupal que não usam revisões. Ele tem o benefício de desempenho adicional de reduzir pela metade o número de consultas durante a criação de entidades com campos.

Este módulo não permitirá a criação de campos de revisão, aumentando seu desempenho à medida que o número de consultas for reduzido, além de que você não terá mais revisões nos nós.

Além disso, você pode usar alguns códigos de módulo personalizados fornecidos no seguinte URL:

http://www.ambidev.com/make-your-drupal-7-faster-by-removing-all-revisions/

e este módulo para excluir entradas de revisão:

https://www.drupal.org/project/node_revision_delete

Gaurav Singh
fonte
0

Não, não é seguro. Eu estou usando o Drupal 7. Eu uso o módulo de questionário no meu site e notei pelo menos dois erros quando esvaziei todo o field_revision_ * um com erro de variável que eu realmente não lembro, e o outro foi que as perguntas desapareceram .

Curiosamente, as opções de resposta estavam lá, mas todas as perguntas se foram. Não examinei mais detalhes, coloquei as tabelas field_revision_ * de volta e elas começaram a funcionar corretamente.

Tudo o que posso dizer é que se você usar o módulo quiz e acessar o myPHPAdmin e truncar essas tabelas, você receberá erros. Se você não usa o módulo de questionário, eu não sei. mas não é à prova de balas. Eu recomendaria o uso de alguns módulos comprovados para limpar suas revisões.

Simon Yi
fonte