[
https://issues.apache.org/jira/browse/ARROW-5264?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16834699#comment-16834699
]
Jacques Nadeau commented on ARROW-5264:
---------------------------------------
I'll don't fully understand the problem. If flink is loading the libraries and
is leaving these methods on, you probably should avoid turning them off bounds
checking across the board since Flink may want to depend on them. In this case
you should probably be loading inside a classloader with your own copy of the
classes and in that situation you can set the config you wish before loading.
If Flink isn't using the libraries and you're initializing them, I don't
understand why you don't have control over initialization order and can set
that first.
Anyway, I'm fine with adding an environment variable option to set the static
final in addition to a system property. I don't understand what situations you
have access to one or not the other but I'm okay with it even then.
> [Java] Allow enabling/disabling boundary checking dynamically in the code
> -------------------------------------------------------------------------
>
> Key: ARROW-5264
> URL: https://issues.apache.org/jira/browse/ARROW-5264
> Project: Apache Arrow
> Issue Type: Improvement
> Components: Java
> Reporter: Liya Fan
> Assignee: Liya Fan
> Priority: Minor
> Labels: pull-request-available
> Attachments: screenshot-1.png
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> The flag BoundsChecking#BOUNDS_CHECKING_ENABLED determines if boundary
> checking is enabled/disabled in vector/arrow buffer APIs.
> It has significant performance implications, since boundary checking is a
> frequent operation.
> This issue address 2 problems with the flag for boundary checking in Java API:
> 1. This flag is final and initialized in a static block. That means, the only
> reliable way to override it is in the JVM command line, by providing some
> system properties. However, for some scenarios, it is difficult or even
> impossible to get access to the JVM command line. Therefore, it is desirable
> to provide a way to override it dynamically in the program code.
> 2. There is an old and a new system property for this flag. To disable
> boundary checking, both the old and new properties must be set to true, which
> is undesirable:
> !screenshot-1.png!
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)