Skip to content

Instantly share code, notes, and snippets.

@ihnorton
Last active June 17, 2024 14:37
Show Gist options
  • Save ihnorton/790b575944a5d09674e86a10700f1dab to your computer and use it in GitHub Desktop.
Save ihnorton/790b575944a5d09674e86a10700f1dab to your computer and use it in GitHub Desktop.
Repro for Arrow 42154
# environment as below
/tmp/arrow42154 ❯ cat test.py
import tiledb # import after, no crash
import pyarrow
from pyarrow import fs
h = fs.S3FileSystem(region="us-east-1")
print(h.get_file_info(fs.FileSelector("<mybucket>")))
/tmp/arrow42154 ❯ python test.py
Fatal error condition occurred in /Users/runner/work/1/s/tiledb_build/_deps/vcpkg-src/buildtrees/aws-c-common/src/v0.9.10-492b35b91d.clean/source/allocator.c:172: allocator != ((void*)0)
Exiting Application
################################################################################
Stack trace:
################################################################################
1 libtiledb.dylib 0x0000000108583a30 aws_fatal_assert + 80
2 libtiledb.dylib 0x0000000108582ce8 aws_mem_acquire + 64
3 libtiledb.dylib 0x0000000108596204 aws_string_new_from_cursor + 84
4 libtiledb.dylib 0x000000010858fa20 aws_json_value_get_from_object + 44
5 libtiledb.dylib 0x000000010857b900 aws_endpoints_ruleset_new_from_string + 120
6 libtiledb.dylib 0x00000001085139c0 _ZN3Aws3Crt9Endpoints10RuleEngineC2ERK15aws_byte_cursorS5_P13aws_allocator + 48
7 libtiledb.dylib 0x0000000107dbf270 _ZN3Aws8Endpoint23DefaultEndpointProviderINS_2S321S3ClientConfigurationENS2_8Endpoint19S3BuiltInParametersENS4_25S3ClientContextParametersEEC2EPKcm + 116
8 libarrow.1601.dylib 0x0000000140e21afc _ZNSt3__117__call_once_proxyB7v160006INS_5tupleIJOZN5arrow2fs12_GLOBAL__N_121EndpointProviderCache6LookupERKN3Aws2S321S3ClientConfigurationEEUlvE_EEEEEvPv + 96
9 libc++.1.dylib 0x00000001ac3b76a0 _ZNSt3__111__call_onceERVmPvPFvS2_E + 180
10 libarrow.1601.dylib 0x0000000140e20658 _ZN5arrow2fs12_GLOBAL__N_113ClientBuilder11BuildClientENSt3__18optionalINS_2io9IOContextEEE + 4448
11 libarrow.1601.dylib 0x0000000140e13a7c _ZN5arrow2fs12S3FileSystem4Impl4InitEv + 108
12 libarrow.1601.dylib 0x0000000140e13910 _ZN5arrow2fs12S3FileSystem4MakeERKNS0_9S3OptionsERKNS_2io9IOContextE + 248
13 _s3fs.cpython-312-darwin.so 0x0000000106756068 _ZL48__pyx_pf_7pyarrow_5_s3fs_12S3FileSystem___init__P38__pyx_obj_7pyarrow_5_s3fs_S3FileSystemP7_objectS2_S2_iS2_S2_S2_S2_S2_iS2_S2_S2_S2_S2_S2_S2_S2_S2_S2_ + 6384
14 _s3fs.cpython-312-darwin.so 0x0000000106751474 _ZL49__pyx_pw_7pyarrow_5_s3fs_12S3FileSystem_1__init__P7_objectS0_S0_ + 732
15 python3.12 0x000000010475666c type_call + 496
16 python3.12 0x00000001046da6e8 _PyObject_MakeTpCall + 316
17 python3.12 0x00000001047f4fac _PyEval_EvalFrameDefault + 52460
18 python3.12 0x00000001047e734c PyEval_EvalCode + 300
19 python3.12 0x000000010485fc00 run_mod + 228
20 python3.12 0x000000010485f6f8 _PyRun_SimpleFileObject + 1516
21 python3.12 0x000000010485e968 _PyRun_AnyFileObject + 268
22 python3.12 0x000000010488b608 Py_RunMain + 3144
23 python3.12 0x000000010488c260 pymain_main + 628
24 python3.12 0x0000000104673c84 main + 56
25 dyld 0x00000001ac133f28 start + 2236
[1] 11234 abort python test.py
pydev ❯ conda create -p /tmp/arrow42154 "python<3.13" pip
Collecting package metadata (current_repodata.json): done
Solving environment: done
==> WARNING: A newer version of conda exists. <==
current version: 4.12.0
latest version: 24.5.0
Please update conda by running
$ conda update -n base conda
## Package Plan ##
environment location: /tmp/arrow42154
added / updated specs:
- pip
- python[version='<3.13']
The following packages will be downloaded:
package | build
---------------------------|-----------------
libsqlite-3.46.0 | hfb93653_0 811 KB conda-forge
python-3.12.4 |h30c5eda_0_cpython 11.6 MB conda-forge
------------------------------------------------------------
Total: 12.4 MB
The following NEW packages will be INSTALLED:
bzip2 conda-forge/osx-arm64::bzip2-1.0.8-h93a5062_5
ca-certificates conda-forge/osx-arm64::ca-certificates-2024.6.2-hf0a4a13_0
libexpat conda-forge/osx-arm64::libexpat-2.6.2-hebf3989_0
libffi conda-forge/osx-arm64::libffi-3.4.2-h3422bc3_5
libsqlite conda-forge/osx-arm64::libsqlite-3.46.0-hfb93653_0
libzlib conda-forge/osx-arm64::libzlib-1.3.1-hfb2fe0b_1
ncurses conda-forge/osx-arm64::ncurses-6.5-hb89a1cb_0
openssl conda-forge/osx-arm64::openssl-3.3.1-hfb2fe0b_0
pip conda-forge/noarch::pip-24.0-pyhd8ed1ab_0
python conda-forge/osx-arm64::python-3.12.4-h30c5eda_0_cpython
readline conda-forge/osx-arm64::readline-8.2-h92ec313_1
setuptools conda-forge/noarch::setuptools-70.0.0-pyhd8ed1ab_0
tk conda-forge/osx-arm64::tk-8.6.13-h5083fa2_1
tzdata conda-forge/noarch::tzdata-2024a-h0c530f3_0
wheel conda-forge/noarch::wheel-0.43.0-pyhd8ed1ab_1
xz conda-forge/osx-arm64::xz-5.2.6-h57fd34a_0
Proceed ([y]/n)? y
Downloading and Extracting Packages
python-3.12.4 | 11.6 MB | ###################################################################################################################### | 100%
libsqlite-3.46.0 | 811 KB | ###################################################################################################################### | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
# $ conda activate /tmp/arrow42154
#
# To deactivate an active environment, use
#
# $ conda deactivate
/tmp 25s
pydev ❯ conda activate /tmp/arrow42154
/tmp
/tmp/arrow42154 ❯ pip install pyarrow tiledb
Collecting pyarrow
Downloading pyarrow-16.1.0-cp312-cp312-macosx_11_0_arm64.whl.metadata (3.0 kB)
Collecting tiledb
Downloading tiledb-0.30.0-cp312-cp312-macosx_11_0_arm64.whl.metadata (3.5 kB)
Collecting numpy>=1.16.6 (from pyarrow)
Downloading numpy-2.0.0-cp312-cp312-macosx_11_0_arm64.whl.metadata (114 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 114.5/114.5 kB 1.5 MB/s eta 0:00:00
Downloading pyarrow-16.1.0-cp312-cp312-macosx_11_0_arm64.whl (26.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 26.0/26.0 MB 6.1 MB/s eta 0:00:00
Downloading tiledb-0.30.0-cp312-cp312-macosx_11_0_arm64.whl (12.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 12.0/12.0 MB 6.5 MB/s eta 0:00:00
Downloading numpy-2.0.0-cp312-cp312-macosx_11_0_arm64.whl (13.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 13.0/13.0 MB 5.7 MB/s eta 0:00:00
Installing collected packages: numpy, tiledb, pyarrow
Successfully installed numpy-2.0.0 pyarrow-16.1.0 tiledb-0.30.0
/tmp 16s
/tmp/arrow42154 ❯ python
Python 3.12.4 | packaged by conda-forge | (main, Jun 17 2024, 10:13:44) [Clang 16.0.6 ] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import pyarrow
import tiledb
>>> import tiledb
>>> a = tiledb.open("s3://<bucket>/debug/a1")
Fatal error condition occurred in /Users/runner/work/crossbow/crossbow/vcpkg/buildtrees/aws-c-common/src/v0.9.9-5d8eb6bbc6.clean/source/allocator.c:172: allocator != ((void*)0)
Exiting Application
################################################################################
Stack trace:
################################################################################
1 libarrow.1601.dylib 0x000000010e08b8d0 aws_fatal_assert + 80
2 libarrow.1601.dylib 0x000000010e08ab98 aws_mem_acquire + 64
3 libarrow.1601.dylib 0x000000010e09dd68 aws_string_new_from_cursor + 76
4 libarrow.1601.dylib 0x000000010e0975e4 aws_json_value_get_from_object + 44
5 libarrow.1601.dylib 0x000000010e083970 aws_endpoints_ruleset_new_from_string + 120
6 libarrow.1601.dylib 0x000000010e01d5a4 _ZN3Aws3Crt9Endpoints10RuleEngineC2ERK15aws_byte_cursorS5_P13aws_allocator + 48
7 libarrow.1601.dylib 0x000000010ddf7180 _ZN3Aws8Endpoint23DefaultEndpointProviderINS_2S321S3ClientConfigurationENS2_8Endpoint19S3BuiltInParametersENS4_25S3ClientContextParametersEEC2EPKcm + 116
8 libtiledb.dylib 0x0000000162bf367c _ZN3Aws2S38S3ClientC2ERKNS_6Client19ClientConfigurationENS2_15AWSAuthV4Signer20PayloadSigningPolicyEbNS0_34US_EAST_1_REGIONAL_ENDPOINT_OPTIONE + 980
9 libtiledb.dylib 0x000000016241a4bc _ZN6tiledb6common11make_sharedINS_2sm14TileDBS3ClientELi66EJRKNS2_12S3ParametersERN3Aws6Client19ClientConfigurationENS8_15AWSAuthV4Signer20PayloadSigningPolicyERKbEEENSt3__110shared_ptrIT_EERAT0__KcDpOT1_ + 92
10 libtiledb.dylib 0x0000000162403624 _ZNK6tiledb2sm2S311init_clientEv + 3428
11 libtiledb.dylib 0x000000016240d860 _ZNK6tiledb2sm2S313ls_with_sizesERKNS0_3URIERKNSt3__112basic_stringIcNS5_11char_traitsIcEENS5_9allocatorIcEEEEi + 76
12 libtiledb.dylib 0x000000016240d7c8 _ZNK6tiledb2sm2S313ls_with_sizesERKNS0_3URIE + 44
13 libtiledb.dylib 0x00000001624337e4 _ZNK6tiledb2sm3VFS13ls_with_sizesERKNS0_3URIE + 264
14 libtiledb.dylib 0x00000001622add88 _ZNK6tiledb2sm14ArrayDirectory2lsERKNS0_3URIE + 56
15 libtiledb.dylib 0x00000001622af6c0 _ZN6tiledb2sm14ArrayDirectory45list_fragment_metadata_dir_uris_v12_or_higherEv + 152
16 libtiledb.dylib 0x00000001622b2e04 _ZNSt3__120__packaged_task_funcIZN6tiledb6common10ThreadPool5asyncIZNS1_2sm14ArrayDirectory4loadEvE3$_2JEEEDaOT_DpOT0_EUlvE_NS_9allocatorISE_EEFNS2_6StatusEvEEclEv + 40
17 libtiledb.dylib 0x0000000162ae3f4c _ZNSt3__113packaged_taskIFN6tiledb6common6StatusEvEEclEv + 76
18 libtiledb.dylib 0x0000000162ae3c88 _ZN6tiledb6common10ThreadPool6workerEv + 76
19 libtiledb.dylib 0x0000000162ae5188 _ZNSt3__1L14__thread_proxyINS_5tupleIJNS_10unique_ptrINS_15__thread_structENS_14default_deleteIS3_EEEEMN6tiledb6common10ThreadPoolEFvvEPS9_EEEEEPvSE_ + 64
20 libsystem_pthread.dylib 0x00000001ac48bfa8 _pthread_start + 148
21 libsystem_pthread.dylib 0x00000001ac486da0 thread_start + 8
[1] 60403 abort python
/tmp/arrow42154 ❯ mamba list
# packages in environment at /tmp/arrow42154:
#
# Name Version Build Channel
bzip2 1.0.8 h93a5062_5 conda-forge
ca-certificates 2024.6.2 hf0a4a13_0 conda-forge
libexpat 2.6.2 hebf3989_0 conda-forge
libffi 3.4.2 h3422bc3_5 conda-forge
libsqlite 3.46.0 hfb93653_0 conda-forge
libzlib 1.3.1 hfb2fe0b_1 conda-forge
ncurses 6.5 hb89a1cb_0 conda-forge
numpy 2.0.0 pypi_0 pypi
openssl 3.3.1 hfb2fe0b_0 conda-forge
pip 24.0 pyhd8ed1ab_0 conda-forge
pyarrow 16.1.0 pypi_0 pypi
python 3.12.4 h30c5eda_0_cpython conda-forge
readline 8.2 h92ec313_1 conda-forge
setuptools 70.0.0 pyhd8ed1ab_0 conda-forge
tiledb 0.30.0 pypi_0 pypi
tk 8.6.13 h5083fa2_1 conda-forge
tzdata 2024a h0c530f3_0 conda-forge
wheel 0.43.0 pyhd8ed1ab_1 conda-forge
xz 5.2.6 h57fd34a_0 conda-forge
/tmp/arrow42154 ❯ python --version ✘ 134
Python 3.12.4
/tmp
/tmp/arrow42154 ❯ file `which python`
/tmp/arrow42154/bin/python: Mach-O 64-bit executable arm64
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment