apache / apache/arrow-java

NativeDatasetFactory parameter allocator and memory pool relationship

Open
#168 3 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
94
Forks
152
Avg merge
3d 16h
Merged PRs (30d)
11

Description

### Describe the usage question you have. Please include as many useful details as possible.

@zhztheplayer
```
/**
* Constructor.
*
* @param allocator a context allocator associated with this factory. Any buffer that will be created natively will
* be then bound to this allocator.
* @param memoryPool the native memory pool associated with this factory. Any buffer created natively should request
* for memory spaces from this memory pool. This is a mapped instance of c++ arrow::MemoryPool.
* @param datasetFactoryId an ID, at the same time the native pointer of the underlying native instance of this
* factory. Make sure in c++ side the pointer is pointing to the shared pointer wrapping
* the actual instance so we could successfully decrease the reference count once
* {@link #close} is called.
* @see #close()
*/
public NativeDatasetFactory(BufferAllocator allocator, NativeMemoryPool memoryPool, long datasetFactoryId) {
this.allocator = allocator;
this.memoryPool = memoryPool;
this.datasetFactoryId = datasetFactoryId;
}
```

what's the relationship between allocator and memoryPool, does allocator allocate buffers from the memory pool or there is no such restrictions?

thanks

### Component(s)

Java

Contributor guide

Open the contributing guide

Research direction

Start with the NativeDatasetFactory constructor shown in the issue and trace how BufferAllocator and NativeMemoryPool are used. Clarify their relationship in the Java API documentation, including what contributors can verify from the native allocation path; done means the usage question is answered clearly.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.