jandom opened a new issue, #14871:
URL: https://github.com/apache/arrow/issues/14871

   ### Describe the usage question you have. Please include as many useful 
details as  possible.
   
   
   Hi there, 
   
   I'm trying to mock some S3 objects, to write a test exercising a pd.Dataset, 
this is using boto3, moto3 and pytest
   
   ```
   @mock_s3
   def test_ignore_moto3():
       s3 = boto3.resource("s3", region_name="us-east-1")
       s3.create_bucket(Bucket="fake-bucket")
       parquet_object = s3.Object("fake-bucket", "dummy.parquet")    
       buffer = io.BytesIO()
       df = pd.DataFrame([{"foo": 123, "bar": 123}])
       df.to_parquet(buffer, index=False)
       parquet_object.put(Body=buffer.getvalue())
       
       
       s3 = boto3.resource('s3')
       obj = s3.Object('fake-bucket', 'dummy.parquet')
       print(obj.get()['Body'].read())
       
       ds = pq.ParquetDataset("s3://fake-bucket/dummy.parquet", 
use_legacy_dataset=False)
   ```
   
   But unexpectedly this tests is dying 
   
   ```
   >       ds = pq.ParquetDataset("s3://fake-bucket/dummy.parquet", 
use_legacy_dataset=False)
   
   tests/virtual_screening/integration/test_results.py:46: 
   _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
   
/opt/micromamba/envs/main/lib/python3.9/site-packages/pyarrow/parquet/core.py:1724:
 in __new__
       return _ParquetDatasetV2(
   
/opt/micromamba/envs/main/lib/python3.9/site-packages/pyarrow/parquet/core.py:2401:
 in __init__
       if filesystem.get_file_info(path_or_paths).is_file:
   pyarrow/_fs.pyx:564: in pyarrow._fs.FileSystem.get_file_info
       ???
   pyarrow/error.pxi:144: in pyarrow.lib.pyarrow_internal_check_status
       ???
   _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
   
   >   ???
   E   OSError: When getting information for key 'dummy.parquet' in bucket 
'fake-bucket': AWS Error ACCESS_DENIED during HeadObject operation: No response 
body.
   ```
   
   But the test output includes the file contents (so there is no typo or 
misconfiguration of the mock)
   
   ```
   
----------------------------------------------------------------------------------------------------
 Captured stdout call 
-----------------------------------------------------------------------------------------------------
   
b'PAR1\x15\x04\x15\x10\x15\x14L\x15\x02\x15\x00\x12\x00\x00\x08\x1c{\x00\x00\x00\x00\x00\x00\x00\x15\x00\x15\x12\x15\x16,\x15\x02\x15\x10\x15\x06\x15\x06\x1c\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x16\x00(\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\t
 
\x02\x00\x00\x00\x02\x01\x01\x02\x00&\xc8\x01\x1c\x15\x04\x195\x10\x00\x06\x19\x18\x03foo\x15\x02\x16\x02\x16\xb8\x01\x16\xc0\x01&8&\x08\x1c\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x16\x00(\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x00\x19,\x15\x04\x15\x00\x15\x02\x00\x15\x00\x15\x10\x15\x02\x00\x00\x00\x15\x04\x15\x10\x15\x14L\x15\x02\x15\x00\x12\x00\x00\x08\x1c{\x00\x00\x00\x00\x00\x00\x00\x15\x00\x15\x12\x15\x16,\x15\x02\x15\x10\x15\x06\x15\x06\x1c\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x16\x00(\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00
 \x00\x00\x00\t 
\x02\x00\x00\x00\x02\x01\x01\x02\x00&\xc2\x04\x1c\x15\x04\x195\x10\x00\x06\x19\x18\x03bar\x15\x02\x16\x02\x16\xb8\x01\x16\xc0\x01&\xb2\x03&\x82\x03\x1c\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x16\x00(\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x00\x19,\x15\x04\x15\x00\x15\x02\x00\x15\x00\x15\x10\x15\x02\x00\x00\x00\x15\x04\x19<5\x00\x18\x06schema\x15\x04\x00\x15\x04%\x02\x18\x03foo\x00\x15\x04%\x02\x18\x03bar\x00\x16\x02\x19\x1c\x19,&\xc8\x01\x1c\x15\x04\x195\x10\x00\x06\x19\x18\x03foo\x15\x02\x16\x02\x16\xb8\x01\x16\xc0\x01&8&\x08\x1c\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x16\x00(\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x00\x19,\x15\x04\x15\x00\x15\x02\x00\x15\x00\x15\x10\x15\x02\x00\x00\x00&\xc2\x04\x1c\x15\x04\x195\x10\x00\x06\x19\x18\x03bar\x15\x02\x16\x02\x16\xb8\x01\x16\xc0\x01&\xb2\x03&\x82\x03\x1c\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x
 
18\x08{\x00\x00\x00\x00\x00\x00\x00\x16\x00(\x08{\x00\x00\x00\x00\x00\x00\x00\x18\x08{\x00\x00\x00\x00\x00\x00\x00\x00\x19,\x15\x04\x15\x00\x15\x02\x00\x15\x00\x15\x10\x15\x02\x00\x00\x00\x16\xf0\x02\x16\x02&\x08\x16\x80\x03\x14\x00\x00\x19,\x18\x06pandas\x18\xd9\x02{"index_columns":
 [], "column_indexes": [], "columns": [{"name": "foo", "field_name": "foo", 
"pandas_type": "int64", "numpy_type": "int64", "metadata": null}, {"name": 
"bar", "field_name": "bar", "pandas_type": "int64", "numpy_type": "int64", 
"metadata": null}], "creator": {"library": "pyarrow", "version": "10.0.0"}, 
"pandas_version": 
"1.5.1"}\x00\x18\x0cARROW:schema\x18\x80\x06/////zgCAAAQAAAAAAAKAA4ABgAFAAgACgAAAAABBAAQAAAAAAAKAAwAAAAEAAgACgAAAJABAAAEAAAAAQAAAAwAAAAIAAwABAAIAAgAAAAIAAAAEAAAAAYAAABwYW5kYXMAAFkBAAB7ImluZGV4X2NvbHVtbnMiOiBbXSwgImNvbHVtbl9pbmRleGVzIjogW10sICJjb2x1bW5zIjogW3sibmFtZSI6ICJmb28iLCAiZmllbGRfbmFtZSI6ICJmb28iLCAicGFuZGFzX3R5cGUiOiAiaW50NjQiLCAibnVtcHlfdHlwZSI6ICJpbnQ2NCIsICJtZXRhZGF0YSI6IG51bGx9L
 
CB7Im5hbWUiOiAiYmFyIiwgImZpZWxkX25hbWUiOiAiYmFyIiwgInBhbmRhc190eXBlIjogImludDY0IiwgIm51bXB5X3R5cGUiOiAiaW50NjQiLCAibWV0YWRhdGEiOiBudWxsfV0sICJjcmVhdG9yIjogeyJsaWJyYXJ5IjogInB5YXJyb3ciLCAidmVyc2lvbiI6ICIxMC4wLjAifSwgInBhbmRhc192ZXJzaW9uIjogIjEuNS4xIn0AAAACAAAARAAAAAQAAADU////AAABAhAAAAAUAAAABAAAAAAAAAADAAAAYmFyAMT///8AAAABQAAAABAAFAAIAAYABwAMAAAAEAAQAAAAAAABAhAAAAAcAAAABAAAAAAAAAADAAAAZm9vAAgADAAIAAcACAAAAAAAAAFAAAAA\x00\x18
 parquet-cpp-arrow version 
10.0.0\x19,\x1c\x00\x00\x1c\x00\x00\x00\x98\x05\x00\x00PAR1'
   
   
   ```
   
   ### Component(s)
   
   Python


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@arrow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to