lidavidm opened a new issue, #729:
URL: https://github.com/apache/arrow-adbc/issues/729

   ```
   $ go run 
github.com/apache/arrow/go/v12/arrow/flight/flightsql/example/cmd/sqlite_flightsql_server@latest
 -port 12345
   ```
   
   Separately:
   ```
   $ python -m venv venv
   $ source venv/bin/activate
   $ pip install pyarrow==10.0.1 adbc-driver-flightsql
   ```
   
   Then run this script:
   
   <details>
   
   ```python
   import concurrent.futures
   from concurrent.futures import ThreadPoolExecutor
   import adbc_driver_flightsql.dbapi
   import pyarrow
   
   
   def task(conn):
       with conn.cursor() as cur:
           cur.execute("SELECT 1")
           cur.fetch_arrow_table()
   
   
   with adbc_driver_flightsql.dbapi.connect("grpc://localhost:12345") as conn:
       with ThreadPoolExecutor() as ex:
           while True:
               futures = [ex.submit(task, conn) for _ in range(23)]
               for future in concurrent.futures.as_completed(futures):
                   future.result()
   ```
   
   </details>
   
   The Go runtime should immediately crash:
   
   ```
   runtime: marked free object in span 0x7f7bc8480ba8, elemsize=24 freeindex=0 
(bad use of unsafe.Pointer? try -d=checkptr)
   ```
   
   Technically, the concurrent `conn.cursor()` call here is not allowed. But 
the crash seems to be unrelated to that; the crash won't occur if you comment 
out `fetch_arrow_table` or replace it with `fetchone`.
   
   It also won't happen if you have PyArrow 11, so it may be a regression in 
PyArrow and not something we should be concerned about.


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to