/
usr
/
local
/
lib64
/
python3.6
/
site-packages
/
pyarrow
/
tests
/
/usr/local/lib64/python3.6/site-packages/pyarrow/tests
mkdir
upload
Name
Size
Mode
Actions
data/
-
0755
rm
parquet/
-
0755
rm
__pycache__/
-
0755
rm
arrow_7980.py
1094
0644
edit
dl
rm
bound_function_visit_strings.pyx
2047
0644
edit
dl
rm
conftest.py
7982
0644
edit
dl
rm
deserialize_buffer.py
961
0644
edit
dl
rm
pandas_examples.py
5115
0644
edit
dl
rm
pandas_threaded_import.py
1429
0644
edit
dl
rm
pyarrow_cython_example.pyx
1951
0644
edit
dl
rm
strategies.py
12525
0644
edit
dl
rm
test_adhoc_memory_leak.py
1410
0644
edit
dl
rm
test_array.py
100157
0644
edit
dl
rm
test_builder.py
2184
0644
edit
dl
rm
test_cffi.py
13090
0644
edit
dl
rm
test_compute.py
83551
0644
edit
dl
rm
test_convert_builtin.py
71768
0644
edit
dl
rm
test_csv.py
68943
0644
edit
dl
rm
test_cuda.py
27863
0644
edit
dl
rm
test_cuda_numba_interop.py
8730
0644
edit
dl
rm
test_cython.py
5948
0644
edit
dl
rm
test_dataset.py
143023
0644
edit
dl
rm
test_deprecations.py
891
0644
edit
dl
rm
test_extension_type.py
24437
0644
edit
dl
rm
test_feather.py
23209
0644
edit
dl
rm
test_filesystem.py
2106
0644
edit
dl
rm
test_flight.py
73715
0644
edit
dl
rm
test_fs.py
54133
0644
edit
dl
rm
test_gandiva.py
14385
0644
edit
dl
rm
test_hdfs.py
13452
0644
edit
dl
rm
test_io.py
53066
0644
edit
dl
rm
test_ipc.py
31267
0644
edit
dl
rm
test_json.py
11325
0644
edit
dl
rm
test_jvm.py
15471
0644
edit
dl
rm
test_memory.py
4928
0644
edit
dl
rm
test_misc.py
4927
0644
edit
dl
rm
test_orc.py
9221
0644
edit
dl
rm
test_pandas.py
157909
0644
edit
dl
rm
test_plasma.py
44011
0644
edit
dl
rm
test_plasma_tf_op.py
3523
0644
edit
dl
rm
test_scalars.py
21074
0644
edit
dl
rm
test_schema.py
21282
0644
edit
dl
rm
test_serialization.py
42026
0644
edit
dl
rm
test_serialization_deprecated.py
1775
0644
edit
dl
rm
test_sparse_tensor.py
17436
0644
edit
dl
rm
test_strategies.py
1739
0644
edit
dl
rm
test_table.py
53168
0644
edit
dl
rm
test_tensor.py
6270
0644
edit
dl
rm
test_types.py
31487
0644
edit
dl
rm
test_util.py
1791
0644
edit
dl
rm
util.py
9011
0644
edit
dl
rm
__init__.py
0
0644
edit
dl
rm
Edit:
/usr/local/lib64/python3.6/site-packages/pyarrow/tests/test_memory.py
(4928B)
# Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. import contextlib import os import subprocess import sys import weakref import pyarrow as pa possible_backends = ["system", "jemalloc", "mimalloc"] should_have_jemalloc = sys.platform == "linux" should_have_mimalloc = sys.platform == "win32" @contextlib.contextmanager def allocate_bytes(pool, nbytes): """ Temporarily allocate *nbytes* from the given *pool*. """ arr = pa.array([b"x" * nbytes], type=pa.binary(), memory_pool=pool) # Fetch the values buffer from the varbinary array and release the rest, # to get the desired allocation amount buf = arr.buffers()[2] arr = None assert len(buf) == nbytes try: yield finally: buf = None def check_allocated_bytes(pool): """ Check allocation stats on *pool*. """ allocated_before = pool.bytes_allocated() max_mem_before = pool.max_memory() with allocate_bytes(pool, 512): assert pool.bytes_allocated() == allocated_before + 512 new_max_memory = pool.max_memory() assert pool.max_memory() >= max_mem_before assert pool.bytes_allocated() == allocated_before assert pool.max_memory() == new_max_memory def test_default_allocated_bytes(): pool = pa.default_memory_pool() with allocate_bytes(pool, 1024): check_allocated_bytes(pool) assert pool.bytes_allocated() == pa.total_allocated_bytes() def test_proxy_memory_pool(): pool = pa.proxy_memory_pool(pa.default_memory_pool()) check_allocated_bytes(pool) wr = weakref.ref(pool) assert wr() is not None del pool assert wr() is None def test_logging_memory_pool(capfd): pool = pa.logging_memory_pool(pa.default_memory_pool()) check_allocated_bytes(pool) out, err = capfd.readouterr() assert err == "" assert out.count("Allocate:") > 0 assert out.count("Allocate:") == out.count("Free:") def test_set_memory_pool(): old_pool = pa.default_memory_pool() pool = pa.proxy_memory_pool(old_pool) pa.set_memory_pool(pool) try: allocated_before = pool.bytes_allocated() with allocate_bytes(None, 512): assert pool.bytes_allocated() == allocated_before + 512 assert pool.bytes_allocated() == allocated_before finally: pa.set_memory_pool(old_pool) def test_default_backend_name(): pool = pa.default_memory_pool() assert pool.backend_name in possible_backends def test_release_unused(): pool = pa.default_memory_pool() pool.release_unused() def check_env_var(name, expected, *, expect_warning=False): code = f"""if 1: import pyarrow as pa pool = pa.default_memory_pool() assert pool.backend_name in {expected!r}, pool.backend_name """ env = dict(os.environ) env['ARROW_DEFAULT_MEMORY_POOL'] = name res = subprocess.run([sys.executable, "-c", code], env=env, universal_newlines=True, stderr=subprocess.PIPE) if res.returncode != 0: print(res.stderr, file=sys.stderr) res.check_returncode() # fail errlines = res.stderr.splitlines() if expect_warning: assert len(errlines) == 1 assert f"Unsupported backend '{name}'" in errlines[0] else: assert len(errlines) == 0 def test_env_var(): check_env_var("system", ["system"]) if should_have_jemalloc: check_env_var("jemalloc", ["jemalloc"]) if should_have_mimalloc: check_env_var("mimalloc", ["mimalloc"]) check_env_var("nonexistent", possible_backends, expect_warning=True) def test_specific_memory_pools(): specific_pools = set() def check(factory, name, *, can_fail=False): if can_fail: try: pool = factory() except NotImplementedError: return else: pool = factory() assert pool.backend_name == name specific_pools.add(pool) check(pa.system_memory_pool, "system") check(pa.jemalloc_memory_pool, "jemalloc", can_fail=not should_have_jemalloc) check(pa.mimalloc_memory_pool, "mimalloc", can_fail=not should_have_mimalloc)
Save
cmd:
run