apache / apache/iceberg-python
Why non-atomic delete and upsert?
- Linguagem predominante
- Python
- Estrelas
- 1.1k
- Forks
- 581
- Merge médio
- 1d 13h
- PRs com merge (30d)
- 76
Descrição
### Question
The implementation of the `delete` and `upsert` operation make an deliberate choice to create multiple snapshots, breaking the atomicity expectation.
For example, if I start a `delete` operation to remove some entries, I do not expect consumers of the data to see a snapshot with some but not all of the entries gone.
Given that the implementation choice looks very deliberate, I'm curious about the rationale for it?
It seems that other clients of the library expect atomic operation as well, for example https://github.com/apache/iceberg-python/issues/3076
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Direção de pesquisa
A issue não menciona arquivos, testes nem pontos de entrada; comece localizando as implementações de delete e upsert no PyIceberg e revisando como elas criam snapshots. Determine se o comportamento observado de múltiplos snapshots é intencional e, em seguida, documente a justificativa ou defina o comportamento atômico necessário antes de fazer uma alteração.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python
- Domínio
- data-engineering, databases
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Pouca atividade
- Clareza
- Precisa de esclarecimento
- Facilidade para iniciantes
- 35/100