naver / naver/arcus-java-client

asyncBopPipedInsertBulk API 동작 검토.

Open
#374 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
56
Forks
49
Avg merge
2d 21h
Merged PRs (30d)
5

Description

아래 asyncBopPipedInsertBulk API는 다음 2 중의 하나로 동작한다.

  • attributesForCreate 주어지면, insert 시에 해당 collection 없을 시에 직접 생성한다.
  • attributesForCreate 생략되면, insert 시에 해당 collection 없을 시에 insert 실패한다.
CollectionFuture<Map<Integer, CollectionOperationStatus>>
asyncBopPipedInsertBulk(String key, List<Element<Object>> elements,
                        CollectionAttributes attributesForCreate)

이슈는 attributesForCreate 주어진 경우, insert 하는 도중에 collection이 제거되는 경우이다.
Unreadable 상태이면, 해당 collection을 명시적으로 제거할 수 없다.
TTL 설정에 의해 제거될 수는 있다.

이 경우, insert 하는 과정에서 해당 collection이 제거된 경우, insert를 계속해야 하는 것인가 ?
attributesForCreate 주어지더라도 처음 insert 시에만 collection 생성 여부를 결정하여 진행하고,
그 이후의 insert 연산에서는 colleciton이 제거되면 insert 실패 처리하는 것을 검토하자.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the asyncBopPipedInsertBulk API and its handling of attributesForCreate during bulk insertion. Review how collection removal during insertion is treated, then clarify and document the intended behavior and completion criteria before making a change.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.