[
https://issues.apache.org/jira/browse/PHOENIX-3612?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Thomas D'Silva updated PHOENIX-3612:
------------------------------------
Attachment: PHOENIX-3612.patch
[~jamestaylor]
Can you please review?
I set the default max mutation size to 100MB. I also modified
MutationState.getMutationBatchList to use
KeyValueUtil.calculateMutationDiskSize() instead of heapSize()
{code}
for (Mutation mutation : allMutationList) {
- long mutationSizeBytes = mutation.heapSize();
+ long mutationSizeBytes =
KeyValueUtil.calculateMutationDiskSize(mutation);
if (currentList.size() == batchSize || currentBatchSizeBytes +
mutationSizeBytes > batchSizeBytes) {
{code}
> Make tracking of max allowed number of mutations bytes based instead of row
> based
> ---------------------------------------------------------------------------------
>
> Key: PHOENIX-3612
> URL: https://issues.apache.org/jira/browse/PHOENIX-3612
> Project: Phoenix
> Issue Type: Bug
> Reporter: James Taylor
> Assignee: Thomas D'Silva
> Fix For: 4.11.0
>
> Attachments: PHOENIX-3612.patch
>
>
> Some remaining work related to PHOENIX-541 to track the byte-size of all
> mutations being buffered instead of the number of rows:
> - Make similar changes QueryServices.MAX_MUTATION_SIZE_ATTRIB - making it
> byte-based instead of row-count-based. Usage of this config parameter would
> be isolated to MutationState, I believe. We should be able to come up with an
> accurate size based on the underlying Mutation and/or Delete info we store in
> PRowImpl.
> - Have a reasonable (smaller) default for the new
> QueryServices.MAX_MUTATION_SIZE_BYTES_ATTRIB
> This is essentially a guard on the memory usage. It could potentially
> leverage our MemoryManager.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)