Perforce Proxy Server: armazenando arquivos seletivos em cache

2

Acabei de configurar um servidor proxy do Perforce para o trabalho. Estou percebendo que o diretório de cache está sendo preenchido muito rapidamente - com arquivos que eu sei que nunca precisarei. Por exemplo, existe um diretório 'sandbox' no depósito onde os usuários mantêm ramificações pessoais e outros trabalhos; um p4 sync está fazendo com que o cache do proxy p4 capture as sandboxes desses usuários quando nunca precisarei delas. Eu criaria um link simbólico para o diretório do sandbox para /dev/null , mas eu não estaria armazenando em cache o meu sandbox, no qual estou interessado.

Existe alguma maneira de dizer ao proxy perforce algo no sentido de "se eu não tive que sincronizá-lo, por favor, não faça cache dele?"

    
por fbrereto 30.11.2009 / 18:50

3 respostas

5

Acho que pode haver algum mal-entendido de como o Perforce RCS e o proxy funcionam. Eu presumo que você está olhando para o cache de proxy no disco e vendo arquivos de uma parte do depósito ou servidor que você não espera ver? Em caso afirmativo, verifique alguns desses arquivos e garanto que você descobrirá que eles eram a fonte de uma integração com o depósito que você está tentando sincronizar. A menos que você use o comando p4 snap para desfazer todas as cópias preguiçosas criadas durante uma integração, isso é 'por design'.

    
por 01.12.2009 / 15:30
2

Você não pode dizer ao proxy para não armazenar arquivos em cache.

Aqui estão algumas opções:

  • Modifique a exibição do seu cliente para não incluir os diretórios que você não quero, então eles nunca vão sincronizar e acabar em cache. Todos que usam seu proxy precisarão fazer o mesma coisa para evitar o indesejado os arquivos não aparecem no cache.

  • Escreva um trabalho cron que exclua as pastas indesejadas do diretório de cache e execute-o de hora em hora (ou com mais frequência, se desejar). É seguro excluir arquivos do cache do p4p durante a execução.

  • Exclua arquivos antigos do cache para evitar que cresçam sem limite. Existem scripts que podem fazer isso.

  • Adicione mais espaço em disco para não precisar se preocupar:

por 30.11.2009 / 20:23
1

O proxy armazena apenas o que você requisita do servidor, então se você "não teve que sincronizá-lo", ele não será armazenado em cache. Se você não quiser que todo o diretório do sandbox seja armazenado em cache, não sincronize todo o diretório do sandbox. Apenas sincronize o que você precisa. Parece que você está fazendo isso:

p4 sync //depot/sandbox/...

em vez disso (digamos que o diretório do sandbox é chamado fbrereto):

p4 sync //depot/sandbox/fbrereto/...

    
por 30.11.2009 / 20:02