Ë
    ìmxis<  ã            "       óÈ  — d dl Z d dlZd dlZd dlmZ d dlZd dlZd dl	m
c mZ  ej                  d«      Zej                  j                   Z ej$                  d¬«      d„ «       Zd„ Zd„ Zd„ ZdRd	„Zej                  j1                  d
 ej2                  «       df ej4                  «       df ej6                  «       df ej8                  «       df ej:                  «       df ej<                  «       df ej>                  «       df ej@                  «       df ejB                  «       df ejD                  «       df ejF                  «       df ejH                  «       df ejJ                  «       df ejL                  d«      df ejL                  d«      df ejN                  d«      df ejN                  d«      df ejP                  d«      d f ejP                  d«      d!f ejP                  d«      d"f ejP                  d«      d#f ejP                  dd$¬%«      d&f ejP                  dd'¬%«      d(f ejR                  «       d)f ejT                  «       d*f ejV                  d+d,«      d-f ejX                  «       d.f ejZ                  «       d/f ejZ                  d0«      d1fg«      ej                  j1                  d2d3d4g«      d5„ «       «       Z.ej                  j1                  d6 ej4                  «       g d7¢d8f ej>                  «        e/ e0d9«      «      d:f ej@                  «        e/ e0d9«      «      d;f ej:                  «        e/ e0d9«      «      d<f ej<                  «        e/ e0d9«      «      d=f ejH                  «        e/ e0d9«      «      d>f ejJ                  «        e/ e0d9«      «      d?f ejP                  d«       e/ e0d9«      «      d@f ejP                  d«       e/ e0d9«      «      dAf ejP                  d«       e/ e0d9«      «      dBf ejP                  d«       e/ e0d9«      «      dCf ejR                  «        e/ e0d9«      «      dDf ejT                  «        e/ e0d9«      «      dEfg«      dF„ «       Z1dG„ Z2ej                  j1                  dH ej4                  «       g d7¢d8df ej>                  «        e/ e0d9«      «      d:df ej@                  «        e/ e0d9«      «      d;df ejB                  «        e/ e0d9«      «      dIdf ejD                  «        e/ e0d9«      «      dJdf ej6                  «        e/ e0d9«      «      dKdf ej8                  «        e/ e0d9«      «      dLdf ej:                  «        e/ e0d9«      «      d<df ej<                  «        e/ e0d9«      «      d=df ejH                  «        e/ e0d9«      «      d>df ejJ                  «        e/ e0d9«      «      d?df ejP                  d«       e/ e0d9«      «      d@d f ejP                  d«       e/ e0d9«      «      dAd!f ejP                  d«       e/ e0d9«      «      dBd"f ejP                  d«       e/ e0d9«      «      dCd#f ejR                  «        e/ e0d9«      «      dDd)f ejT                  «        e/ e0d9«      «      dEd*fg«      dM„ «       Z3dN„ Z4ej                  jk                  dO¬P«      dQ„ «       Z6y)Sé    NÚjpypeÚsession)Úscopec            	      ó  — 	 t         j                  d   } t         j                  j	                  | dd«      }t        j                  |«      }|j                  «       j                  dddi¬«      j                  }t         j                  j	                  | dd	d
d|› d�«      }t        j                  d|«      }i }d|d<   t        j                  t        j                  «       d|z   fi |¤Ž t        j!                  d«      j"                  j$                  j&                  j)                  t*        j,                  «      S # t        $ rG t         j                  j	                  t         j                  j                  t        «      ddd«      } Y �Œrw xY w)NÚARROW_SOURCE_DIRz..Újavazpom.xmlzPOM:versionÚPOMz!http://maven.apache.org/POM/4.0.0)Ú
namespacesÚtoolsÚtargetzarrow-tools-z-jar-with-dependencies.jarÚARROW_TOOLS_JARFÚconvertStringsz-Djava.class.path=Úorg)ÚosÚenvironÚKeyErrorÚpathÚjoinÚdirnameÚ__file__ÚETÚparseÚgetrootÚfindÚtextÚgetenvr   ÚstartJVMÚgetDefaultJVMPathÚJPackageÚapacheÚarrowÚmemoryÚRootAllocatorÚsysÚmaxsize)Ú	arrow_dirÚpom_pathÚtreeÚversionÚjar_pathÚkwargss         úM/home/htdocs/ttos/venv/lib/python3.12/site-packages/pyarrow/tests/test_jvm.pyÚroot_allocatorr-       sL  € ðNÜ—J‘JÐ1Ñ2ˆ	ô �w‰w�|‰|˜I v¨yÓ9€HÜ�8‰8�HÓ€DØ�l‰l‹n×!Ñ!ØàÐ6ð
ð "ó ÷ ‰4ð	 ô
 �w‰w�|‰|Ø�6˜7 HØ
�w�iÐ9Ð:ó<€Hô �y‰yÐ*¨HÓ5€HØ€Fà$€FÐÑÜ	‡N�N”5×*Ñ*Ó,Ð.BÀXÑ.Mñ Øòä�>‰>˜%Ó ×'Ñ'×-Ñ-×4Ñ4×BÑBÄ3Ç;Á;ÓOÐOøô% ò NÜ—G‘G—L‘L¤§¡§¡´Ó!:¸DÀ$ÈÓM‹	ðNús   ‚D8 Ä8AFÆFc                 ó@  — | j                  d«      }t        d«      D ]  }|j                  |d|z
  «       Œ |j                  «       }t	        j
                  |«      }|j                  «       dk(  sJ ‚|j                  «       |dz   k(  sJ ‚~|j                  «       |k(  sJ ‚y )Né   s   é   )ÚbufferÚrangeÚsetByteÚrefCntÚpa_jvmÚ
jvm_bufferÚ
to_pybytes)r-   r6   ÚiÚorig_refcntÚbufs        r,   Útest_jvm_bufferr;   :   sª   € à×&Ñ& qÓ)€JÜ�1‹Xò %ˆØ×Ñ˜1˜a !™eÕ$ð%ð ×#Ñ#Ó%€Kô ×
Ñ
˜JÓ
'€Cð �>‰>ÓÐBÒBÐBÐBð ×ÑÓ +°¡/Ò1Ð1Ð1ØØ×ÑÓ +Ò-Ð-Ñ-ó    c                 óØ   — dd l }ddlm} | j                  d«      }|j	                  «        t        j                  |«      5  t        j                  |«       d d d «       y # 1 sw Y   y xY w)Nr   )ÚIllegalArgumentExceptionr/   )	Újpype.importsÚ	java.langr>   r1   ÚreleaseÚpytestÚraisesr5   r6   )r-   r   r>   r6   s       r,   Útest_jvm_buffer_releasedrD   N   sT   € ÛÝ2à×&Ñ& qÓ)€JØ×ÑÔä	�‰Ð/Ó	0ñ &Ü×Ñ˜*Ô%÷&÷ &ñ &ús   ÁA Á A)c                 ó‚   — t        j                  d«      «       }t         j                  d«      }|j                  | |«      S )Nz+com.fasterxml.jackson.databind.ObjectMapperz(org.apache.arrow.vector.types.pojo.Field)r   ÚJClassÚ	readValue)Újvm_specÚomÚ
pojo_Fields      r,   Ú
_jvm_fieldrK   Y   s4   € Ü	�‰ÐCÓ	DÓ	F€BÜ—‘ÐHÓI€JØ�<‰<˜ *Ó-Ð-r<   c                 óB  — t        | «      }t        j                  d«      }t        j                  d«      «       }|j                  |«       |rLt        j                  d«      «       }|j	                  «       D ]  \  }}|j                  ||«       Œ  |||«      S  ||«      S )Nz)org.apache.arrow.vector.types.pojo.Schemaújava.util.ArrayListzjava.util.HashMap)rK   r   rF   ÚaddÚitemsÚput)rH   ÚmetadataÚfieldÚ
schema_clsÚfieldsÚdctÚkÚvs           r,   Ú_jvm_schemarX   _   s�   € Ü�xÓ €EÜ—‘ÐIÓJ€JÜ�\‰\Ð/Ó0Ó2€FØ
‡J�JˆuÔÙÜ�l‰lÐ.Ó/Ó1ˆØ—N‘NÓ$ò 	‰DˆAˆqØ�G‰G�A�q�Mð	á˜& #Ó&Ð&á˜&Ó!Ð!r<   zpa_type,jvm_specz{"name":"null"}z{"name":"bool"}z+{"name":"int","bitWidth":8,"isSigned":true}z,{"name":"int","bitWidth":16,"isSigned":true}z,{"name":"int","bitWidth":32,"isSigned":true}z,{"name":"int","bitWidth":64,"isSigned":true}z,{"name":"int","bitWidth":8,"isSigned":false}z-{"name":"int","bitWidth":16,"isSigned":false}z-{"name":"int","bitWidth":32,"isSigned":false}z-{"name":"int","bitWidth":64,"isSigned":false}z+{"name":"floatingpoint","precision":"HALF"}z-{"name":"floatingpoint","precision":"SINGLE"}z-{"name":"floatingpoint","precision":"DOUBLE"}Úsz-{"name":"time","unit":"SECOND","bitWidth":32}Úmsz2{"name":"time","unit":"MILLISECOND","bitWidth":32}Úusz2{"name":"time","unit":"MICROSECOND","bitWidth":64}Únsz1{"name":"time","unit":"NANOSECOND","bitWidth":64}z4{"name":"timestamp","unit":"SECOND","timezone":null}z9{"name":"timestamp","unit":"MILLISECOND","timezone":null}z9{"name":"timestamp","unit":"MICROSECOND","timezone":null}z8{"name":"timestamp","unit":"NANOSECOND","timezone":null}ÚUTC)Útzz9{"name":"timestamp","unit":"NANOSECOND","timezone":"UTC"}zEurope/PariszB{"name":"timestamp","unit":"NANOSECOND","timezone":"Europe/Paris"}z{"name":"date","unit":"DAY"}z${"name":"date","unit":"MILLISECOND"}é   é   z+{"name":"decimal","precision":19,"scale":4}z{"name":"utf8"}z{"name":"binary"}é
   z){"name":"fixedsizebinary","byteWidth":10}ÚnullableTFc                 ó(  — |t        j                  «       k(  r|sy d|t        j                  |«      g dœ}t	        t        j
                  |«      «      }t        j                  |«      }t        j                  d||¬«      }||k(  sJ ‚t        t        j
                  |«      «      }t        j                  |«      }|t        j                  |g«      k(  sJ ‚t        t        j
                  |«      ddi«      }t        j                  |«      }|t        j                  |gddi«      k(  sJ ‚dddœg|d	<   t        t        j
                  |«      «      }t        j                  |«      }|j                  ddi«      }|t        j                  |g«      k(  sJ ‚y )
NÚ
field_name©Únamerb   ÚtypeÚchildren)rb   ÚmetaÚdataz
field metaz
field data)ÚkeyÚvaluerQ   )ÚpaÚnullÚjsonÚloadsrK   Údumpsr5   rR   rX   ÚschemaÚwith_metadata)	r-   Úpa_typerH   rb   ÚspecÚ	jvm_fieldÚresultÚexpected_fieldÚ
jvm_schemas	            r,   Útest_jvm_typesrz   w   sd  € ðd ”"—'‘'“)Ò¡HØàØÜ—
‘
˜8Ó$àñ€Dô œ4Ÿ:™: dÓ+Ó,€IÜ�\‰\˜)Ó$€FÜ—X‘X˜l¨G¸hÔG€NØ�^Ò#Ð#Ð#äœTŸZ™Z¨Ó-Ó.€JÜ�]‰]˜:Ó&€FØ”R—Y‘Y Ð/Ó0Ò0Ð0Ð0ô œTŸZ™Z¨Ó-°¸Ð/?Ó@€JÜ�]‰]˜:Ó&€FØ”R—Y‘Y Ð/°&¸&Ð1AÓBÒBÐBÐBð !-°|ÑDÐE€DˆÑÜœTŸZ™Z¨Ó-Ó.€JÜ�]‰]˜:Ó&€FØ#×1Ñ1Ø	�|Ð$ó&€Nà”R—Y‘Y Ð/Ó0Ò0Ð0Ñ0r<   zpa_type,py_data,jvm_type)TFTTÚ	BitVectoré€   ÚUInt1VectorÚUInt2VectorÚ	IntVectorÚBigIntVectorÚFloat4VectorÚFloat8VectorÚTimeStampSecVectorÚTimeStampMilliVectorÚTimeStampMicroVectorÚTimeStampNanoVectorÚDateDayVectorÚDateMilliVectorc                 ó¦  — d|› �}t        j                  |«      d| «      }|j                  t        |«      «       t	        |«      D ]0  \  }}|dv rt         j                  |«      }|j                  ||«       Œ2 |j                  t        |«      «       t        j                  ||¬«      }t        j                  |«      }	|j                  |	«      sJ ‚y )Núorg.apache.arrow.vector.Úvector¾   r}   r~   ©rg   )r   rF   ÚallocateNewÚlenÚ	enumerateÚJIntÚsetSafeÚsetValueCountrm   Úarrayr5   Úequals)
r-   rt   Úpy_dataÚjvm_typeÚclsÚ
jvm_vectorr8   ÚvalÚpy_arrayÚ	jvm_arrays
             r,   Útest_jvm_arrayr�   Ì   s¹   € ð. % X JÐ
/€CÜ—‘˜cÓ" 8¨^Ó<€JØ×Ñœ3˜w›<Ô(Ü˜GÓ$ò #‰ˆˆ3àÐ5Ñ5Ü—*‘*˜S“/ˆCØ×Ñ˜1˜cÕ"ð	#ð
 ×ÑœS ›\Ô*ä�x‰x˜ gÔ.€HÜ—‘˜ZÓ(€Ià�?‰?˜9Ô%Ð%Ñ%r<   c                 óô   — dd› �}t        j                  |«      d| «      }|j                  «        t        j                  |«      }t        |«      dk(  sJ ‚|j                  t        j                  «       k(  sJ ‚y )NrŠ   r   r‹   r   )	r   rF   rŽ   r5   r”   r�   rg   rm   Úint32)r-   r˜   r™   rœ   s       r,   Útest_jvm_array_emptyr    ó   sg   € Ø$ [ MÐ
2€CÜ—‘˜cÓ" 8¨^Ó<€JØ×ÑÔÜ—‘˜ZÓ(€IÜˆy‹>˜QÒÐÐØ�>‰>œRŸX™X›ZÒ'Ð'Ñ'r<   z!pa_type,py_data,jvm_type,jvm_specÚUInt4VectorÚUInt8VectorÚTinyIntVectorÚSmallIntVectorc                 óN  — d|› �}t        j                  |«      d| «      }|j                  t        |«      «       t	        |«      D ]0  \  }}|dv rt         j                  |«      }|j                  ||«       Œ2 |j                  t        |«      «       ddt        j                  |«      g dœ}	t        t        j                  |	«      «      }
t        j                  d«      «       }|j                  |
«       t        j                  d«      «       }|j                  |«       t         j                  d«      } |||t        |«      «      }t        j                  j                  t        j                   ||¬	«      gd
g«      }t#        j$                  |«      }|j'                  |«      sJ ‚y )NrŠ   r‹   rŒ   rd   Fre   rM   z(org.apache.arrow.vector.VectorSchemaRootr�   Úcol)r   rF   rŽ   r�   r�   r‘   r’   r“   ro   rp   rK   rq   rN   rm   ÚRecordBatchÚfrom_arraysr”   r5   Úrecord_batchr•   )r-   rt   r–   r—   rH   r˜   r™   r8   rš   ru   rv   Ú
jvm_fieldsÚjvm_vectorsÚjvm_vsrÚpy_record_batchÚjvm_record_batchs                   r,   Útest_jvm_record_batchr¯   ÿ   sn  € ð\ % X JÐ
/€CÜ—‘˜cÓ" 8¨^Ó<€JØ×Ñœ3˜w›<Ô(Ü˜GÓ$ò #‰ˆˆ3ØÐ5Ñ5Ü—*‘*˜S“/ˆCØ×Ñ˜1˜cÕ"ð#ð ×ÑœS ›\Ô*ð ØÜ—
‘
˜8Ó$àñ€Dô œ4Ÿ:™: dÓ+Ó,€Iô —‘Ð3Ó4Ó6€JØ‡N�N�9ÔÜ—,‘,Ð4Ó5Ó7€KØ‡O�O�JÔÜ�l‰lÐEÓF€GÙ�j +¬s°7«|Ó<€Gä—n‘n×0Ñ0Ü	�‰�' Ô	(Ð)Ø	ˆó€Oô ×*Ñ*¨7Ó3Ðà×!Ñ!Ð"2Ô3Ð3Ñ3r<   c                 ó®  — d}t        j                  |«      «       }|€	d|_        |S d|_        t        j                  d«      d«      }t         j                  d«      }|j                  |j                  «      }| j                  t        |«      «      |_        |j
                  j                  d|dt        |«      «       d|_        t        |«      |_	        |S )Nz5org.apache.arrow.vector.holders.NullableVarCharHolderr   r0   zjava.lang.StringÚstringz!java.nio.charset.StandardCharsets)
r   rF   ÚisSetÚgetBytesÚUTF_8r1   r�   ÚsetBytesÚstartÚend)Úrar±   Únvch_clsÚholderrl   Ústd_charsetsÚbytes_s          r,   Ú_string_to_varchar_holderr½   ‘  s²   € ØF€HÜ�\‰\˜(Ó#Ó%€FØ€~ØˆŒð €Mð ˆŒÜ—‘Ð/Ó0°Ó:ˆÜ—|‘|Ð$GÓHˆØ—‘ × 2Ñ 2Ó3ˆØŸ	™	¤# f£+Ó.ˆŒØ�‰×Ñ˜q &¨!¬S°«[Ô9ØˆŒÜ˜“[ˆŒ
Ø€Mr<   z7from_buffers is only supported for primitive arrays yet)Úreasonc                 ó’  — g d¢}d}t        j                  |«      d| «      }|j                  «        t        |«      D ]7  \  }}t	        | d«      }|j                  ||«       |j                  |dz   «       Œ9 t        j                  |t        j                  «       ¬«      }t        j                  |«      }|j                  |«      sJ ‚y )N)r±   Nu   tÃ¶stz%org.apache.arrow.vector.VarCharVectorr‹   r±   r0   r�   )r   rF   rŽ   r�   r½   r’   r“   rm   r”   r±   r5   r•   )	r-   rj   r˜   r™   r8   r±   rº   r›   rœ   s	            r,   Útest_jvm_string_arrayrÀ   £  s¬   € ò %€DØ
1€CÜ—‘˜cÓ" 8¨^Ó<€JØ×ÑÔä˜t“_ò (‰	ˆˆ6Ü*¨>¸8ÓDˆØ×Ñ˜1˜fÔ%Ø× Ñ   Q¡Õ'ð(ô
 �x‰x˜¤2§9¡9£;Ô/€HÜ—‘˜ZÓ(€Ià�?‰?˜9Ô%Ð%Ñ%r<   )N)7ro   r   Úpyarrowrm   Úpyarrow.jvmÚjvmr5   rB   r$   Úxml.etree.ElementTreeÚetreeÚElementTreer   Úimportorskipr   ÚmarkÚ	processesÚ
pytestmarkÚfixturer-   r;   rD   rK   rX   Úparametrizern   Úbool_Úint8Úint16rŸ   Úint64Úuint8Úuint16Úuint32Úuint64Úfloat16Úfloat32Úfloat64Útime32Útime64Ú	timestampÚdate32Údate64Ú
decimal128r±   Úbinaryrz   Úlistr2   r�   r    r¯   r½   ÚxfailrÀ   © r<   r,   ú<module>râ      sM  ðó$ Û 	Û Ý Û Û 
ß "Ð "ð 	ˆ×Ñ˜GÓ$€à�[‰[×"Ñ"€
ð €‡��iÔ ñPó !ðPò2.ò(&ò.ó"ð0 ‡�×ÑÐ+Ø€R‡W�WƒYÐ!Ð"Ø€R‡X�XƒZÐ"Ð#Ø€R‡W�WƒYÐ=Ð>Ø€R‡X�XƒZÐ?Ð@Ø€R‡X�XƒZÐ?Ð@Ø€R‡X�XƒZÐ?Ð@Ø€R‡X�XƒZÐ?Ð@Ø€R‡Y�Yƒ[ÐAÐBØ€R‡Y�Yƒ[ÐAÐBØ€R‡Y�Yƒ[ÐAÐBØ€R‡Z�Zƒ\Ð@ÐAØ€R‡Z�Zƒ\ÐBÐCØ€R‡Z�Zƒ\ÐBÐCØ€R‡Y�Yˆsƒ^ÐDÐEØ€R‡Y�Yˆtƒ_ÐJÐKØ€R‡Y�Yˆtƒ_ÐJÐKØ€R‡Y�Yˆtƒ_ÐIÐJØ€R‡\�\�#Óð ð à€R‡\�\�$Óð ð à€R‡\�\�$Óð ð à€R‡\�\�$Óð ð à€R‡\�\�$˜5Ô!ð $ð à€R‡\�\�$˜>Ô*ð -9ð :à€R‡Y�Yƒ[Ð0Ð1Ø€R‡Y�Yƒ[Ð8Ð9Ø€R‡]�]�2�qÓÐHÐIØ€R‡Y�Yƒ[Ð#Ð$Ø€R‡Y�Yƒ[Ð%Ð&Ø€R‡Y�Yˆrƒ]Ð?Ð@ðG/.ó /ð` ‡�×Ñ˜ d¨E ]Ó3ñ1ó 4óa/ðb1ðH ‡�×ÑÐ3Ø€R‡X�XƒZÒ*¨KÐ8Ø€R‡X�XƒZ‘‘e˜C“jÓ! =Ð1Ø€R‡Y�Yƒ[‘$‘u˜S“zÓ" MÐ2Ø€R‡X�XƒZ‘‘e˜C“jÓ! ;Ð/Ø€R‡X�XƒZ‘‘e˜C“jÓ! >Ð2Ø€R‡Z�Zƒ\‘4™˜c›
Ó# ^Ð4Ø€R‡Z�Zƒ\‘4™˜c›
Ó# ^Ð4Ø€R‡\�\�#Ó™™U 3›ZÓ(Ð*>Ð?Ø€R‡\�\�$Ó™™e C›jÓ)Ð+AÐBØ€R‡\�\�$Ó™™e C›jÓ)Ð+AÐBØ€R‡\�\�$Ó™™e C›jÓ)Ð+@ÐAð €R‡Y�Yƒ[‘$‘u˜S“zÓ" OÐ4Ø€R‡Y�Yƒ[‘$‘u˜S“zÓ"Ð$5Ð6ð%6ó ñ*&ó+ð*&ò$(ð ‡�×ÑÐ<à€R‡X�XƒZÒ*¨KÐ9JÐKàˆ�‰‹
Ù‰U�3‹ZÓØØ6ð	ð 	ˆ�	‰	‹Ù‰U�3‹ZÓØØ7ð	ð 	ˆ�	‰	‹Ù‰U�3‹ZÓØØ7ð	ð 	ˆ�	‰	‹Ù‰U�3‹ZÓØØ7ð	ð 	ˆ�‰‹	Ù‰U�3‹ZÓØØ5ð	ð 	ˆ�‰‹
Ù‰U�3‹ZÓØØ6ð	ð 	ˆ�‰‹
Ù‰U�3‹ZÓØØ6ð	ð 	ˆ�‰‹
Ù‰U�3‹ZÓØØ6ð	ð 	ˆ�
‰
‹Ù‰U�3‹ZÓØØ7ð	ð 	ˆ�
‰
‹Ù‰U�3‹ZÓØØ7ð	ð 	ˆ�‰�SÓÙ‰U�3‹ZÓØØ>ð	ð 	ˆ�‰�TÓÙ‰U�3‹ZÓØØCð	ð 	ˆ�‰�TÓÙ‰U�3‹ZÓØØCð	ð 	ˆ�‰�TÓÙ‰U�3‹ZÓØØBð	ð 	ˆ�	‰	‹Ù‰U�3‹ZÓØØ&ð	ð 	ˆ�	‰	‹Ù‰U�3‹ZÓØØ.ð	ðGj?ó jñV$4óWjðV$4òNð$ ‡�×Ñð 1Ðó 2ñ&ó2ñ&r<   