From 644142a4196dec7c33b72bf87fcddb3e4ced7d2a Mon Sep 17 00:00:00 2001 From: David Sisson Date: Mon, 27 Jan 2025 19:05:41 -0800 Subject: [PATCH 1/2] initial implementation --- ...4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc | Bin 0 -> 36 bytes ...4632-8a07-49e46b4afe29-0-00001.parquet.crc | Bin 0 -> 36 bytes ...4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc | Bin 0 -> 36 bytes ...d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet | Bin 0 -> 3454 bytes ...0ea-4632-8a07-49e46b4afe29-0-00001.parquet | Bin 0 -> 3117 bytes ...d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet | Bin 0 -> 3115 bytes ...15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc | Bin 0 -> 68 bytes ...4f-8535-4e3c-bddf-7745b6e24ecd-m0.avro.crc | Bin 0 -> 68 bytes ...7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc | Bin 0 -> 44 bytes ...a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc | Bin 0 -> 44 bytes data/fruit/metadata/.v1.metadata.json.crc | Bin 0 -> 28 bytes data/fruit/metadata/.v2.metadata.json.crc | Bin 0 -> 36 bytes data/fruit/metadata/.v3.metadata.json.crc | Bin 0 -> 48 bytes data/fruit/metadata/.version-hint.text.crc | Bin 0 -> 12 bytes ...7a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro | Bin 0 -> 7584 bytes ...c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro | Bin 0 -> 7467 bytes ...-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro | Bin 0 -> 4491 bytes ...-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro | Bin 0 -> 4417 bytes data/fruit/metadata/v1.metadata.json | 111 +++++++++++ data/fruit/metadata/v2.metadata.json | 146 +++++++++++++++ data/fruit/metadata/v3.metadata.json | 177 ++++++++++++++++++ data/fruit/metadata/version-hint.text | 1 + test/sql/local/iceberg_scan.test | 45 +++++ 23 files changed, 480 insertions(+) create mode 100644 data/fruit/data/.00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc create mode 100644 data/fruit/data/.00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet.crc create mode 100644 data/fruit/data/.00001-1-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc create mode 100644 data/fruit/data/00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet create mode 100644 data/fruit/data/00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet create mode 100644 data/fruit/data/00001-1-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet create mode 100644 data/fruit/metadata/.037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc create mode 100644 data/fruit/metadata/.89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro.crc create mode 100644 data/fruit/metadata/.snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc create mode 100644 data/fruit/metadata/.snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc create mode 100644 data/fruit/metadata/.v1.metadata.json.crc create mode 100644 data/fruit/metadata/.v2.metadata.json.crc create mode 100644 data/fruit/metadata/.v3.metadata.json.crc create mode 100644 data/fruit/metadata/.version-hint.text.crc create mode 100644 data/fruit/metadata/037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro create mode 100644 data/fruit/metadata/89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro create mode 100644 data/fruit/metadata/snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro create mode 100644 data/fruit/metadata/snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro create mode 100644 data/fruit/metadata/v1.metadata.json create mode 100644 data/fruit/metadata/v2.metadata.json create mode 100644 data/fruit/metadata/v3.metadata.json create mode 100644 data/fruit/metadata/version-hint.text diff --git a/data/fruit/data/.00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc b/data/fruit/data/.00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc new file mode 100644 index 0000000000000000000000000000000000000000..3711d96425a7de363b54b805cf30652babacc72b GIT binary patch literal 36 scmYc;N@ieSU}Bj6@y+vP=RWQbiCR53yv+Th!QDsdsd5Z$dP04B!}bpQYW literal 0 HcmV?d00001 diff --git a/data/fruit/data/.00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet.crc b/data/fruit/data/.00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet.crc new file mode 100644 index 0000000000000000000000000000000000000000..d5b28f6643028cd4277036c2360f18827fbf3e11 GIT binary patch literal 36 ucmV+<0Nej#a$^7h00IEkXycGwgLo1rb_ME7FIypwNPr7Mg;UR?w$H1^eQQEiIL{_+&+)=l<->9hdZH+05K? z@A2n$4}!+x4$A8tbvroNrZ+kJ^KhPyomfygs-f{XTQ6(9PLni zis{w1NUk%dZhzg~p#x-b(6Z`vmx5v%ufx}W`)qlQP)r0?O@uU1j3Us|@Blt_?BT6+ z2VDxGwogBO@X23Y9SY#n$sLH1jNr}qn@8_oPj;C4f|-Fo4W;2_j*Sn_xmKADzT^Qc zk2m4BSKhhO3H#KC^#E*(<1OX^VtH&|1P|k*M}NI09a8r7ijRuk;(pEIm+=o*Puxvq za14+MoM;C=6%irOxOd$M7LZ-5TCUAT6{q|LT?E84xQPEa^W{n3mQV0;JBD(5F@Slr zQU_2LPv8qnCqD0ON5cob^%!UyfQ%tHa(PENj*>9l%6h8_|XwI1a}3|*BJr5HN|Fu~6v*hxZ!+0YX* z%E3~M1rQKCj>z$Y1U?{#ce-$i4Z)Fz{afRnRf1ycN4O7)9O;^44|PKd zlhb*^6vD|YMW&oFII{-1^>+|an(Tt37BL{7u&lpNV&OjJ(nrLJb znad@MN_8khf`)^tQRX2fAn*`0gviBSJV3rp;#rhi$l#A3o?F^oNF`L2@6G8it+_?qBNzf65i~^gj`PHF_gQ<2@46f zcaaF3a)xY&rQ#$Maj>Vm4E9S3uS2;N4W@-3LBeq4D4B)TBGf#5!3q9WS(f{Nwu;#?ZuV8;f=V&eutEYDRhwC8O*MIynf$N^Z$r8B zaTdMsPTQ5mjXqCyff9s}^+EAuAq*sy_(w+kdk+iYeISM;OCVz^s7+pt?J5NN7^#!x z2iB(b&GLNMxDVr| zSG5W|aH{)#*n|(`S4GI$KFe(e?v|XY)mZd_1s~|&Dj{%atEF1arB>AkPx@fx0$Lqz z!*4VnyV1wWODcp5`P_MIj~^7AojfVtM^>j|C$GlM49=L}g8u^<9I(7A{{ib%;e_`b zY3Ih2@2-Ebt`7Eh&n{a~lh-WISrgJl$|9@T-u$Tz;f(doPy6QO_52@UxE+T{1OScIJ75-S|oxRg4)*>eQx+v-;1V2gSiDviNI@cY84RR_%xb9}@c94@sS z*B-P>6Xw*oIXZ0@N*l)~Xt^*wK59>G94*@xH789vF*;@2C2PHL1AZ_4>ldAd9|m*q GpV!}TSoTB! literal 0 HcmV?d00001 diff --git a/data/fruit/data/00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet b/data/fruit/data/00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet new file mode 100644 index 0000000000000000000000000000000000000000..2e73f2ef900dcf9e8d9e5afe83f5ad7ed5d0b849 GIT binary patch literal 3117 zcmcInU1%Id9G~0!$X;?r4Vh&(Ea6mrPuJghnro&)vnE0kXvPs}Nx=BQ z)yLmvy7!Z(~ z3j71_d03smztHsmq^vzFX(|MYf8xkscpc)=fT$A#`e z954COy@VJZhQnJ)yy`3Lro`~bAA*OE2Nsi_Rdxv;pyf7zkt#X%NH0`X4omu*^bI@2 z@(5Csm3q78tt6lYV3w#^RWgE#DP5-unGs1%I#p|(tjJKhppdpUEXSqXE4>hOko37$ z%e&ZcDwl{ok|}0%7m!6s?XhgTNm?zOdb!_ca-AA6fqgK-PGu7yQ@Bh5i#=~UjY{1n zD=Otlx7v+{>yTy(+AmdnMlVtRgqm=jmWL%y-9ubbB{dI-h8PjuK$Un+r$S*;aX`;= zSo#v#ytrYxZGwHD;~)W?9&RAX)>np+B5AsIkdt-XuZ_r1Ll8!sQ6%L>WjQC8BE=jT zDrht;@`xNN0s;>~LrB@_!-L9~J$M1-R&^|Ma-IstKdmh0R!h7I_&2b!mf*7}*T-5!UNl2?*iHuE-=wKy zdx=xv69T@M=z#B2_%VYY0$l2_9#p&_IP4_2O$pxbrS@;ZZ3anBA#FD74b}}o7ciPd zWffFA_HmEWTxT@9aB=!HL8pYhL3={5?4~+c9#WS3jOB=4zkD;@EWD2d&rv7O@090f z%A-6?DpF2XzUUdGC#Tx)R7jaL*T-9M>{l)ITF({3+iVbH-e`HvcEvOD245O;Y-7HV zH`W~D+AU-LjVlI~n0bR9WuOnUywN0=+fI|f0-#Ag;Ic^tPB(YdoXckmXN;{p2Tuqv zI~-5Pueo*06R=4EW2R5F3LZGMbpe|aFm}?Ou(oEot#G?#r)D)b1+XZ9;!r*TKH+M) zUU!LA6X0n9j-218!)?nW0y`tH{uzG)cVf@oY3ocBo`L`6SSrf{|pYy7wz6sG-Sg|ag!v37F z?_Y2K!g|$efEKhgHw*;_ICy8#!p zQ?F&sadUFq%#N1Zj%#P_@{~C{X%^<}VtHnAid2eolLdQrrckjhVosZ6sxWKYW$TP~ S0RM3O#UmbcLhE&Z_HS7aaPgZOg=kdXBkM2I@ z`v=~;VYPh!0@eSMu=1>+$TU#w)iK6`A|b>CVl;P(%pRfTgqtcw_6Gh|M3E7^=~QqD zA~27z1)q@y9vE5tJw;uxCpT3k5if%;NKvI#yy%VgBKVRwJdNNB-teA)7rfzil*=AO z@shW?8{@;{V0b5vS3QB91RtJwLx{wmgNt#;DBA=N(mEQ%NER$J+Xq#Z!-D!2eS(Ep z%py5nskdv+N(@>6X0e)4C0SHVs45jmX9YQKRgHDBB0_nCK+4!KESqw#^g)barQbGM z&XtB$xk}7zx|mjNKo$i#X_#h{v|2dv(tyWgTQ#Bs`%s9Tu1&z27$uZk%IaqM*P7<3`NzDPGVMas^s1m1XRVYj-4yt(< zmbywduWT50n_$o9D69ZZ^$mcSu>F-0BngVD9OOh54=7m?Y6!xJ(~=;amzHy4DOAj% zp@c?*A`h)YML^&oXb4F+`|*%;KZzGmZdJviOYWwE@lQ*Oxz&=}1nxJmvX*dXVXhA; z*Lxx!N4dR-iqkF`%OvAkkS@VS$!{G034~rN`72@4+x=LQZi{#t;Q2T44^2`c)cdwaI8p(h`VtId(G*@E=pu zvEA4i@Cgpzjdj8IDEyScj{z=pY4J2JSW{ee^8!Z zD35d$mxP=seV!bmC#O7MRY;jM*T-9xw@KBIcaqmNXR|@Hd9CF%+Z9L4Ywp&VWoq+< zytZZ$+iYp`Z(i5vik{c#Q3mob%WF+?t!*_4Yyg_%eJ+z!;B>P`^|^eea8BFGyWj~9 zW{2b1_%*w3I2<;~VNCUzTEPRWw$5Qw9L7%C4sC0O-3rVtTQ#G($$>=<1hu#=+AZ96G^M^EX(l1{uD*<=4h6H<#Z_XM?%-^sWLi@0MaUt3$bXbGNFgZ+vO2vtqgWIj-Kj z-TsC0s?h)`=xA3j)EkV$I@xvSZbD758EqVJ+?(}Sb9oENuQrV4wKj3as?E#>T+dd$ zmeI%c$#Fe1T5emmnK8>#`s}1$m@|vznaL?qDb7t6%-NYj#WaXMt&^$3tZ9~wbIJky RyYY{2bO^r%F2c`*zW_7;oPPiS literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/.037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc b/data/fruit/metadata/.037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc new file mode 100644 index 0000000000000000000000000000000000000000..831d74e31230147858f2ed14ca831f4c08e17667 GIT binary patch literal 68 zcmV-K0K5NVa$^7h00IC5g#d!#Z7xCnx>}Vrs%aA*6*pM}Vrs%aA*6*pMnI* literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/.snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc b/data/fruit/metadata/.snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc new file mode 100644 index 0000000000000000000000000000000000000000..b5d66c0cb395fe6af0407850d94be12fb1184847 GIT binary patch literal 44 zcmYc;N@ieSU}AW$X2iLtAXYM*Y2oyLZ3bsGRb&!U!^^#Ay#2{Jshpu~Rn(hg07p*{ A-v9sr literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/.snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc b/data/fruit/metadata/.snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc new file mode 100644 index 0000000000000000000000000000000000000000..33014f181a5c615732fc087c56045d7c9f4f4f31 GIT binary patch literal 44 zcmV+{0Mq|ta$^7h00IE-CNc@Ua9tT!0-=}whA_=_h3T4QS9eR8?fD6kcK~+0zX#N2 C)Do5e literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/.v1.metadata.json.crc b/data/fruit/metadata/.v1.metadata.json.crc new file mode 100644 index 0000000000000000000000000000000000000000..bf863e188dda5593c609e62a800249270b5697d5 GIT binary patch literal 28 kcmYc;N@ieSU}D(x<_w2vp0v5q8STF=|9NkDZtpq<0EPYwLI3~& literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/.v2.metadata.json.crc b/data/fruit/metadata/.v2.metadata.json.crc new file mode 100644 index 0000000000000000000000000000000000000000..1e3c13b4209d375ea72c544f8f4aa22c02d90dd2 GIT binary patch literal 36 scmYc;N@ieSU}CtdY}ag>Cv9$YM*FYJf8JYjc)TvAT{kHSIUzI`0N9ERv;Y7A literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/.v3.metadata.json.crc b/data/fruit/metadata/.v3.metadata.json.crc new file mode 100644 index 0000000000000000000000000000000000000000..99e39305c7713e8420af6f7f9c8ecafe2d8e6008 GIT binary patch literal 48 zcmYc;N@ieSU}BhJFRgBxCv9$YM*FYJf8JYJ$Nd(jT{kK5598Z$L71P7KRDvhmFTs% E0f3(pFaQ7m literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/.version-hint.text.crc b/data/fruit/metadata/.version-hint.text.crc new file mode 100644 index 0000000000000000000000000000000000000000..65f9819238e06650c68dfc2c38312ffb2725055f GIT binary patch literal 12 TcmYc;N@ieSU}DI<)HfRd6JZ0R literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro b/data/fruit/metadata/037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro new file mode 100644 index 0000000000000000000000000000000000000000..c4209af123c7ec4920136998835c686488e9ff03 GIT binary patch literal 7584 zcmb_hU1%KF6_#zKEwwSKq^5GCxR=3RyYV{g%*c{f#A)Lw#v+a#Ecd~<+s)nCyV69n zGn<)Ng>?|*$ASE`5E_!`C16Z&)3-bXl28)dq-jcf zx%bZO&U$wxFvh!k&);{xbM86UCo2zc8QBq7%cPDk?R-oNTMeSkX+h{Wtx(Hr{Fj4v zRhuj1wVF+wYM{-XeN3a@=y}b>b$T8?! z&xH*kY5}*pv_hUzSM1S`9mabhl!=*l!8JLqZU* zV%xzLCn=l=wc>dW!LAUV7Qzk=!g9m5RsbH==cMf_4v7$+5yH4y^+^z93%2Jiohe9O zlq$z|iJq;Brd|b3mr16QMjw(g!{_XVjdh-JscMI5zQniQcgT z$|K^CI&nirS{?Wjede^Lv5Bt^O3E>Jg#DthUnhWv)r<8yZh+<$(&C1Jaqw@|=qh%a zg#QSvVxMT~Fz)l;+T1Cv-HKOz?@nHZKRqN8?GwxMDV3tE*0F2X2yhGn2lggPH98W6 zIBe2Dq8jIh8ButBQ}E-nE^Y+NURY*@%>~YCZqso<-thp#QeLZ)8g4qFHb=jYEb{PF zP0$pGYmu_stXGIH%=fO%RJ7G>hm?a2tDI6)Le1ea)hk@f1lgzTS1Kz4%ktb1U>EXH zN~@j)>Ajc#7$C2P!exS}r8!hMOwHzzez@TUc4&Jpssc?z66BF_7~;c@9k$}{Vyhfn zQ}vz!(!k-ev>p{OsqJN5XBUQ z&4xqrJVJ~rI3QI7@KWrBITSRAmGa9_{NmMBjxVODU>NUXt0x$pX;%5+0NLCKMJ}bf zox%1wQnuZ4r3D!mvGc-;4V?Bu>@d2Z0FG1j@o^PSl?;~WH0y4e9+z6T-%{C3LAim@i`AnvYciWE;a#OAu#y|ivq?mHxARkw=nWn3q)WzRZr^` zc!d~hqCN5o?n*XOZ61#IDDle`z#JBjxQA?@ry0|fXEOspXG~`oYKP8j%nXDbix;tY zyMkmKQoMl~d2>Oc-OL=Mn;B}ONEKrTkj%l_8H=|UkW{uq7b(LukLi@q#w3k9C+?g3 zT+44Y*xUqiD3(JN$E$SBi>Y>_09KcmJZz)53H6~hat-j;67&eJ6f2hR=W76(m3#ZK+CTJmpknp z)CrNGMK}vXCY%KuT}@1Jj>&n0-T>olt)fe*wG+H^VDX;hqwK*|ST?o>?to#rgTcKU!9e0{yG*T3oDaYz!@~r zB9`GtYJKXqm`Mxr`Gr{!D_L(gj`p~sNqaI)g8fikovn3A(k z&7u3ECXGl!ah9i6v|dbQu58kZeAr4YYf^urlm*18*CicZ2kBUxd_Q8nLI)fC=ADa? zU>}voE?R4_aP_rX$r$A07}G14fPP~DMHw*|P*|H2L-(CW1f|PL?zG+?`_!o3ulw00V=5&xxclm4E!;QdB?Q>1Lv)7wns9)(n6A^bG$Zex z^x&LfM|8)IFaL?B|L7?t9$}@zL@(?xSxfgM2UA0|RMxq7ck~X37&#-F_)VPaK4l9( zr(`Qj57ZfsCMKlhU=5=({FxN90Got|&z5#ZQ`gt%FgNtl`FlS9;unA4`kO1e{`R{+ zeYt=5U&B`Av-NYIe0=c>??=~2^`VDuSjP|C@%#KAPA=pZuFec?DQ&wpzIf%e>+{>j zN>|1g?=QW$$J~Bx{?qxflJ)8Qe_y*kWp2O!`8^km7aqR%-6wx_@%=wu9er=;qYIZG z{PW1A?_D}RdVEWMw{y?r-9J2W*KVy^db5HeRO%~>b5<@>+2I|W+x{8^XgyU z9^L+R|I|C{6Rp|YmwMruV-w%rbzu1Vp4`vw7=GoMXNyZOpZ;v<%(HucK05jF%&z@c zcf9$X*T-%g*@~B5UpaQ>FC}y6D@R5OpC7q^|GDoU`##zC&AnrLzxDLt8|!b}a{F`R ovp3#ee|+kzPi=eaw%bmgs_Y)|b^YIs^Z(OFUO3;ny$#9#0~V#%4*&oF literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro b/data/fruit/metadata/89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro new file mode 100644 index 0000000000000000000000000000000000000000..88165fa08949113b5c564080d7d96279d5e32d3d GIT binary patch literal 7467 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 E0bQce2LJ#7 literal 0 HcmV?d00001 diff --git a/data/fruit/metadata/v1.metadata.json b/data/fruit/metadata/v1.metadata.json new file mode 100644 index 0000000..13da3db --- /dev/null +++ b/data/fruit/metadata/v1.metadata.json @@ -0,0 +1,111 @@ +{ + "format-version" : 2, + "table-uuid" : "03adfbd9-7e0f-4041-b891-7d439694b20c", + "location" : "fruit", + "last-sequence-number" : 0, + "last-updated-ms" : 1738031850786, + "last-column-id" : 15, + "current-schema-id" : 0, + "schemas" : [ { + "type" : "struct", + "schema-id" : 0, + "fields" : [ { + "id" : 1, + "name" : "id", + "required" : true, + "type" : "decimal(19, 0)" + }, { + "id" : 2, + "name" : "count", + "required" : true, + "type" : "float" + }, { + "id" : 3, + "name" : "name", + "required" : true, + "type" : "string" + }, { + "id" : 4, + "name" : "image", + "required" : false, + "type" : "binary" + }, { + "id" : 5, + "name" : "available", + "required" : true, + "type" : "boolean" + }, { + "id" : 6, + "name" : "last_picked", + "required" : false, + "type" : "date" + }, { + "id" : 7, + "name" : "address", + "required" : false, + "type" : { + "type" : "struct", + "fields" : [ { + "id" : 10, + "name" : "line1", + "required" : false, + "type" : "string" + }, { + "id" : 11, + "name" : "line2", + "required" : false, + "type" : "string" + }, { + "id" : 12, + "name" : "zipcode", + "required" : false, + "type" : "int" + } ] + } + }, { + "id" : 8, + "name" : "suppliers", + "required" : false, + "type" : { + "type" : "list", + "element-id" : 13, + "element" : "string", + "element-required" : false + } + }, { + "id" : 9, + "name" : "metrics", + "required" : false, + "type" : { + "type" : "map", + "key-id" : 14, + "key" : "string", + "value-id" : 15, + "value" : "int", + "value-required" : false + } + } ] + } ], + "default-spec-id" : 0, + "partition-specs" : [ { + "spec-id" : 0, + "fields" : [ ] + } ], + "last-partition-id" : 999, + "default-sort-order-id" : 0, + "sort-orders" : [ { + "order-id" : 0, + "fields" : [ ] + } ], + "properties" : { + "owner" : "david", + "write.parquet.compression-codec" : "zstd" + }, + "current-snapshot-id" : -1, + "refs" : { }, + "snapshots" : [ ], + "statistics" : [ ], + "partition-statistics" : [ ], + "snapshot-log" : [ ], + "metadata-log" : [ ] +} \ No newline at end of file diff --git a/data/fruit/metadata/v2.metadata.json b/data/fruit/metadata/v2.metadata.json new file mode 100644 index 0000000..fa864bf --- /dev/null +++ b/data/fruit/metadata/v2.metadata.json @@ -0,0 +1,146 @@ +{ + "format-version" : 2, + "table-uuid" : "03adfbd9-7e0f-4041-b891-7d439694b20c", + "location" : "fruit", + "last-sequence-number" : 1, + "last-updated-ms" : 1738032330405, + "last-column-id" : 15, + "current-schema-id" : 0, + "schemas" : [ { + "type" : "struct", + "schema-id" : 0, + "fields" : [ { + "id" : 1, + "name" : "id", + "required" : true, + "type" : "decimal(19, 0)" + }, { + "id" : 2, + "name" : "count", + "required" : true, + "type" : "float" + }, { + "id" : 3, + "name" : "name", + "required" : true, + "type" : "string" + }, { + "id" : 4, + "name" : "image", + "required" : false, + "type" : "binary" + }, { + "id" : 5, + "name" : "available", + "required" : true, + "type" : "boolean" + }, { + "id" : 6, + "name" : "last_picked", + "required" : false, + "type" : "date" + }, { + "id" : 7, + "name" : "address", + "required" : false, + "type" : { + "type" : "struct", + "fields" : [ { + "id" : 10, + "name" : "line1", + "required" : false, + "type" : "string" + }, { + "id" : 11, + "name" : "line2", + "required" : false, + "type" : "string" + }, { + "id" : 12, + "name" : "zipcode", + "required" : false, + "type" : "int" + } ] + } + }, { + "id" : 8, + "name" : "suppliers", + "required" : false, + "type" : { + "type" : "list", + "element-id" : 13, + "element" : "string", + "element-required" : false + } + }, { + "id" : 9, + "name" : "metrics", + "required" : false, + "type" : { + "type" : "map", + "key-id" : 14, + "key" : "string", + "value-id" : 15, + "value" : "int", + "value-required" : false + } + } ] + } ], + "default-spec-id" : 0, + "partition-specs" : [ { + "spec-id" : 0, + "fields" : [ ] + } ], + "last-partition-id" : 999, + "default-sort-order-id" : 0, + "sort-orders" : [ { + "order-id" : 0, + "fields" : [ ] + } ], + "properties" : { + "owner" : "david", + "write.parquet.compression-codec" : "zstd" + }, + "current-snapshot-id" : 7992439894843196740, + "refs" : { + "main" : { + "snapshot-id" : 7992439894843196740, + "type" : "branch" + } + }, + "snapshots" : [ { + "sequence-number" : 1, + "snapshot-id" : 7992439894843196740, + "timestamp-ms" : 1738032330405, + "summary" : { + "operation" : "append", + "spark.app.id" : "local-1738030711824", + "added-data-files" : "2", + "added-records" : "2", + "added-files-size" : "6569", + "changed-partition-count" : "1", + "total-records" : "2", + "total-files-size" : "6569", + "total-data-files" : "2", + "total-delete-files" : "0", + "total-position-deletes" : "0", + "total-equality-deletes" : "0", + "engine-version" : "3.5.4", + "app-id" : "local-1738030711824", + "engine-name" : "spark", + "iceberg-version" : "Apache Iceberg 1.7.1 (commit 4a432839233f2343a9eae8255532f911f06358ef)" + }, + "manifest-list" : "fruit/metadata/snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro", + "schema-id" : 0 + } ], + "statistics" : [ ], + "partition-statistics" : [ ], + "snapshot-log" : [ { + "timestamp-ms" : 1738032330405, + "snapshot-id" : 7992439894843196740 + } ], + "metadata-log" : [ { + "timestamp-ms" : 1738031850786, + "metadata-file" : "fruit/metadata/v1.metadata.json" + } ] +} \ No newline at end of file diff --git a/data/fruit/metadata/v3.metadata.json b/data/fruit/metadata/v3.metadata.json new file mode 100644 index 0000000..eaa4927 --- /dev/null +++ b/data/fruit/metadata/v3.metadata.json @@ -0,0 +1,177 @@ +{ + "format-version" : 2, + "table-uuid" : "03adfbd9-7e0f-4041-b891-7d439694b20c", + "location" : "fruit", + "last-sequence-number" : 2, + "last-updated-ms" : 1738032335502, + "last-column-id" : 15, + "current-schema-id" : 0, + "schemas" : [ { + "type" : "struct", + "schema-id" : 0, + "fields" : [ { + "id" : 1, + "name" : "id", + "required" : true, + "type" : "decimal(19, 0)" + }, { + "id" : 2, + "name" : "count", + "required" : true, + "type" : "float" + }, { + "id" : 3, + "name" : "name", + "required" : true, + "type" : "string" + }, { + "id" : 4, + "name" : "image", + "required" : false, + "type" : "binary" + }, { + "id" : 5, + "name" : "available", + "required" : true, + "type" : "boolean" + }, { + "id" : 6, + "name" : "last_picked", + "required" : false, + "type" : "date" + }, { + "id" : 7, + "name" : "address", + "required" : false, + "type" : { + "type" : "struct", + "fields" : [ { + "id" : 10, + "name" : "line1", + "required" : false, + "type" : "string" + }, { + "id" : 11, + "name" : "line2", + "required" : false, + "type" : "string" + }, { + "id" : 12, + "name" : "zipcode", + "required" : false, + "type" : "int" + } ] + } + }, { + "id" : 8, + "name" : "suppliers", + "required" : false, + "type" : { + "type" : "list", + "element-id" : 13, + "element" : "string", + "element-required" : false + } + }, { + "id" : 9, + "name" : "metrics", + "required" : false, + "type" : { + "type" : "map", + "key-id" : 14, + "key" : "string", + "value-id" : 15, + "value" : "int", + "value-required" : false + } + } ] + } ], + "default-spec-id" : 0, + "partition-specs" : [ { + "spec-id" : 0, + "fields" : [ ] + } ], + "last-partition-id" : 999, + "default-sort-order-id" : 0, + "sort-orders" : [ { + "order-id" : 0, + "fields" : [ ] + } ], + "properties" : { + "owner" : "david", + "write.parquet.compression-codec" : "zstd" + }, + "current-snapshot-id" : 3790395430840981108, + "refs" : { + "main" : { + "snapshot-id" : 3790395430840981108, + "type" : "branch" + } + }, + "snapshots" : [ { + "sequence-number" : 1, + "snapshot-id" : 7992439894843196740, + "timestamp-ms" : 1738032330405, + "summary" : { + "operation" : "append", + "spark.app.id" : "local-1738030711824", + "added-data-files" : "2", + "added-records" : "2", + "added-files-size" : "6569", + "changed-partition-count" : "1", + "total-records" : "2", + "total-files-size" : "6569", + "total-data-files" : "2", + "total-delete-files" : "0", + "total-position-deletes" : "0", + "total-equality-deletes" : "0", + "engine-version" : "3.5.4", + "app-id" : "local-1738030711824", + "engine-name" : "spark", + "iceberg-version" : "Apache Iceberg 1.7.1 (commit 4a432839233f2343a9eae8255532f911f06358ef)" + }, + "manifest-list" : "fruit/metadata/snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro", + "schema-id" : 0 + }, { + "sequence-number" : 2, + "snapshot-id" : 3790395430840981108, + "parent-snapshot-id" : 7992439894843196740, + "timestamp-ms" : 1738032335502, + "summary" : { + "operation" : "append", + "spark.app.id" : "local-1738030711824", + "added-data-files" : "1", + "added-records" : "1", + "added-files-size" : "3117", + "changed-partition-count" : "1", + "total-records" : "3", + "total-files-size" : "9686", + "total-data-files" : "3", + "total-delete-files" : "0", + "total-position-deletes" : "0", + "total-equality-deletes" : "0", + "engine-version" : "3.5.4", + "app-id" : "local-1738030711824", + "engine-name" : "spark", + "iceberg-version" : "Apache Iceberg 1.7.1 (commit 4a432839233f2343a9eae8255532f911f06358ef)" + }, + "manifest-list" : "fruit/metadata/snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro", + "schema-id" : 0 + } ], + "statistics" : [ ], + "partition-statistics" : [ ], + "snapshot-log" : [ { + "timestamp-ms" : 1738032330405, + "snapshot-id" : 7992439894843196740 + }, { + "timestamp-ms" : 1738032335502, + "snapshot-id" : 3790395430840981108 + } ], + "metadata-log" : [ { + "timestamp-ms" : 1738031850786, + "metadata-file" : "fruit/metadata/v1.metadata.json" + }, { + "timestamp-ms" : 1738032330405, + "metadata-file" : "fruit/metadata/v2.metadata.json" + } ] +} \ No newline at end of file diff --git a/data/fruit/metadata/version-hint.text b/data/fruit/metadata/version-hint.text new file mode 100644 index 0000000..e440e5c --- /dev/null +++ b/data/fruit/metadata/version-hint.text @@ -0,0 +1 @@ +3 \ No newline at end of file diff --git a/test/sql/local/iceberg_scan.test b/test/sql/local/iceberg_scan.test index 5c2a7ec..f45ae6f 100644 --- a/test/sql/local/iceberg_scan.test +++ b/test/sql/local/iceberg_scan.test @@ -118,3 +118,48 @@ query I SELECT count(*) FROM ICEBERG_SCAN('data/iceberg/lineitem_iceberg_gz_no_hint', ALLOW_MOVED_PATHS=TRUE, METADATA_COMPRESSION_CODEC="gzip", version='2', version_name_format='v%s%s.metadata.json'); ---- 111968 + +query I +SELECT typeof(id) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +DECIMAL(19,0) + +query I +SELECT typeof(count) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +FLOAT + +query I +SELECT typeof(name) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +VARCHAR + +query I +SELECT typeof(image) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +BLOB + +query I +SELECT typeof(available) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +BOOLEAN + +query I +SELECT typeof(last_picked) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +DATE + +query I +SELECT typeof(address) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +STRUCT(line1 VARCHAR, line2 VARCHAR, zipcode INTEGER) + +query I +SELECT typeof(suppliers) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +VARCHAR[] + +query I +SELECT typeof(metrics) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +MAP(VARCHAR, INTEGER) From c8f54766ba92202a80c0cf3e1bff83b2726ded28 Mon Sep 17 00:00:00 2001 From: David Sisson Date: Wed, 29 Jan 2025 12:41:41 -0800 Subject: [PATCH 2/2] Uses an existing table instead. --- ...4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc | Bin 36 -> 0 bytes ...4632-8a07-49e46b4afe29-0-00001.parquet.crc | Bin 36 -> 0 bytes ...4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc | Bin 36 -> 0 bytes ...d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet | Bin 3454 -> 0 bytes ...0ea-4632-8a07-49e46b4afe29-0-00001.parquet | Bin 3117 -> 0 bytes ...d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet | Bin 3115 -> 0 bytes ...15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc | Bin 68 -> 0 bytes ...4f-8535-4e3c-bddf-7745b6e24ecd-m0.avro.crc | Bin 68 -> 0 bytes ...7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc | Bin 44 -> 0 bytes ...a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc | Bin 44 -> 0 bytes data/fruit/metadata/.v1.metadata.json.crc | Bin 28 -> 0 bytes data/fruit/metadata/.v2.metadata.json.crc | Bin 36 -> 0 bytes data/fruit/metadata/.v3.metadata.json.crc | Bin 48 -> 0 bytes data/fruit/metadata/.version-hint.text.crc | Bin 12 -> 0 bytes ...7a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro | Bin 7584 -> 0 bytes ...c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro | Bin 7467 -> 0 bytes ...-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro | Bin 4491 -> 0 bytes ...-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro | Bin 4417 -> 0 bytes data/fruit/metadata/v1.metadata.json | 111 ----------- data/fruit/metadata/v2.metadata.json | 146 --------------- data/fruit/metadata/v3.metadata.json | 177 ------------------ data/fruit/metadata/version-hint.text | 1 - test/sql/local/iceberg_scan.test | 49 +++-- 23 files changed, 32 insertions(+), 452 deletions(-) delete mode 100644 data/fruit/data/.00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc delete mode 100644 data/fruit/data/.00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet.crc delete mode 100644 data/fruit/data/.00001-1-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc delete mode 100644 data/fruit/data/00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet delete mode 100644 data/fruit/data/00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet delete mode 100644 data/fruit/data/00001-1-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet delete mode 100644 data/fruit/metadata/.037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc delete mode 100644 data/fruit/metadata/.89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro.crc delete mode 100644 data/fruit/metadata/.snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc delete mode 100644 data/fruit/metadata/.snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc delete mode 100644 data/fruit/metadata/.v1.metadata.json.crc delete mode 100644 data/fruit/metadata/.v2.metadata.json.crc delete mode 100644 data/fruit/metadata/.v3.metadata.json.crc delete mode 100644 data/fruit/metadata/.version-hint.text.crc delete mode 100644 data/fruit/metadata/037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro delete mode 100644 data/fruit/metadata/89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro delete mode 100644 data/fruit/metadata/snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro delete mode 100644 data/fruit/metadata/snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro delete mode 100644 data/fruit/metadata/v1.metadata.json delete mode 100644 data/fruit/metadata/v2.metadata.json delete mode 100644 data/fruit/metadata/v3.metadata.json delete mode 100644 data/fruit/metadata/version-hint.text diff --git a/data/fruit/data/.00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc b/data/fruit/data/.00000-0-d55bca04-5d59-4b68-a3a4-33a7bcf6898b-0-00001.parquet.crc deleted file mode 100644 index 3711d96425a7de363b54b805cf30652babacc72b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36 scmYc;N@ieSU}Bj6@y+vP=RWQbiCR53yv+Th!QDsdsd5Z$dP04B!}bpQYW diff --git a/data/fruit/data/.00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet.crc b/data/fruit/data/.00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet.crc deleted file mode 100644 index d5b28f6643028cd4277036c2360f18827fbf3e11..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36 ucmV+<0Nej#a$^7h00IEkXycGwgLo1rb_ME7FIypwNPr7Mg;UR?w$H1^eQQEiIL{_+&+)=l<->9hdZH+05K? z@A2n$4}!+x4$A8tbvroNrZ+kJ^KhPyomfygs-f{XTQ6(9PLni zis{w1NUk%dZhzg~p#x-b(6Z`vmx5v%ufx}W`)qlQP)r0?O@uU1j3Us|@Blt_?BT6+ z2VDxGwogBO@X23Y9SY#n$sLH1jNr}qn@8_oPj;C4f|-Fo4W;2_j*Sn_xmKADzT^Qc zk2m4BSKhhO3H#KC^#E*(<1OX^VtH&|1P|k*M}NI09a8r7ijRuk;(pEIm+=o*Puxvq za14+MoM;C=6%irOxOd$M7LZ-5TCUAT6{q|LT?E84xQPEa^W{n3mQV0;JBD(5F@Slr zQU_2LPv8qnCqD0ON5cob^%!UyfQ%tHa(PENj*>9l%6h8_|XwI1a}3|*BJr5HN|Fu~6v*hxZ!+0YX* z%E3~M1rQKCj>z$Y1U?{#ce-$i4Z)Fz{afRnRf1ycN4O7)9O;^44|PKd zlhb*^6vD|YMW&oFII{-1^>+|an(Tt37BL{7u&lpNV&OjJ(nrLJb znad@MN_8khf`)^tQRX2fAn*`0gviBSJV3rp;#rhi$l#A3o?F^oNF`L2@6G8it+_?qBNzf65i~^gj`PHF_gQ<2@46f zcaaF3a)xY&rQ#$Maj>Vm4E9S3uS2;N4W@-3LBeq4D4B)TBGf#5!3q9WS(f{Nwu;#?ZuV8;f=V&eutEYDRhwC8O*MIynf$N^Z$r8B zaTdMsPTQ5mjXqCyff9s}^+EAuAq*sy_(w+kdk+iYeISM;OCVz^s7+pt?J5NN7^#!x z2iB(b&GLNMxDVr| zSG5W|aH{)#*n|(`S4GI$KFe(e?v|XY)mZd_1s~|&Dj{%atEF1arB>AkPx@fx0$Lqz z!*4VnyV1wWODcp5`P_MIj~^7AojfVtM^>j|C$GlM49=L}g8u^<9I(7A{{ib%;e_`b zY3Ih2@2-Ebt`7Eh&n{a~lh-WISrgJl$|9@T-u$Tz;f(doPy6QO_52@UxE+T{1OScIJ75-S|oxRg4)*>eQx+v-;1V2gSiDviNI@cY84RR_%xb9}@c94@sS z*B-P>6Xw*oIXZ0@N*l)~Xt^*wK59>G94*@xH789vF*;@2C2PHL1AZ_4>ldAd9|m*q GpV!}TSoTB! diff --git a/data/fruit/data/00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet b/data/fruit/data/00000-2-dc313a93-20ea-4632-8a07-49e46b4afe29-0-00001.parquet deleted file mode 100644 index 2e73f2ef900dcf9e8d9e5afe83f5ad7ed5d0b849..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3117 zcmcInU1%Id9G~0!$X;?r4Vh&(Ea6mrPuJghnro&)vnE0kXvPs}Nx=BQ z)yLmvy7!Z(~ z3j71_d03smztHsmq^vzFX(|MYf8xkscpc)=fT$A#`e z954COy@VJZhQnJ)yy`3Lro`~bAA*OE2Nsi_Rdxv;pyf7zkt#X%NH0`X4omu*^bI@2 z@(5Csm3q78tt6lYV3w#^RWgE#DP5-unGs1%I#p|(tjJKhppdpUEXSqXE4>hOko37$ z%e&ZcDwl{ok|}0%7m!6s?XhgTNm?zOdb!_ca-AA6fqgK-PGu7yQ@Bh5i#=~UjY{1n zD=Otlx7v+{>yTy(+AmdnMlVtRgqm=jmWL%y-9ubbB{dI-h8PjuK$Un+r$S*;aX`;= zSo#v#ytrYxZGwHD;~)W?9&RAX)>np+B5AsIkdt-XuZ_r1Ll8!sQ6%L>WjQC8BE=jT zDrht;@`xNN0s;>~LrB@_!-L9~J$M1-R&^|Ma-IstKdmh0R!h7I_&2b!mf*7}*T-5!UNl2?*iHuE-=wKy zdx=xv69T@M=z#B2_%VYY0$l2_9#p&_IP4_2O$pxbrS@;ZZ3anBA#FD74b}}o7ciPd zWffFA_HmEWTxT@9aB=!HL8pYhL3={5?4~+c9#WS3jOB=4zkD;@EWD2d&rv7O@090f z%A-6?DpF2XzUUdGC#Tx)R7jaL*T-9M>{l)ITF({3+iVbH-e`HvcEvOD245O;Y-7HV zH`W~D+AU-LjVlI~n0bR9WuOnUywN0=+fI|f0-#Ag;Ic^tPB(YdoXckmXN;{p2Tuqv zI~-5Pueo*06R=4EW2R5F3LZGMbpe|aFm}?Ou(oEot#G?#r)D)b1+XZ9;!r*TKH+M) zUU!LA6X0n9j-218!)?nW0y`tH{uzG)cVf@oY3ocBo`L`6SSrf{|pYy7wz6sG-Sg|ag!v37F z?_Y2K!g|$efEKhgHw*;_ICy8#!p zQ?F&sadUFq%#N1Zj%#P_@{~C{X%^<}VtHnAid2eolLdQrrckjhVosZ6sxWKYW$TP~ S0RM3O#UmbcLhE&Z_HS7aaPgZOg=kdXBkM2I@ z`v=~;VYPh!0@eSMu=1>+$TU#w)iK6`A|b>CVl;P(%pRfTgqtcw_6Gh|M3E7^=~QqD zA~27z1)q@y9vE5tJw;uxCpT3k5if%;NKvI#yy%VgBKVRwJdNNB-teA)7rfzil*=AO z@shW?8{@;{V0b5vS3QB91RtJwLx{wmgNt#;DBA=N(mEQ%NER$J+Xq#Z!-D!2eS(Ep z%py5nskdv+N(@>6X0e)4C0SHVs45jmX9YQKRgHDBB0_nCK+4!KESqw#^g)barQbGM z&XtB$xk}7zx|mjNKo$i#X_#h{v|2dv(tyWgTQ#Bs`%s9Tu1&z27$uZk%IaqM*P7<3`NzDPGVMas^s1m1XRVYj-4yt(< zmbywduWT50n_$o9D69ZZ^$mcSu>F-0BngVD9OOh54=7m?Y6!xJ(~=;amzHy4DOAj% zp@c?*A`h)YML^&oXb4F+`|*%;KZzGmZdJviOYWwE@lQ*Oxz&=}1nxJmvX*dXVXhA; z*Lxx!N4dR-iqkF`%OvAkkS@VS$!{G034~rN`72@4+x=LQZi{#t;Q2T44^2`c)cdwaI8p(h`VtId(G*@E=pu zvEA4i@Cgpzjdj8IDEyScj{z=pY4J2JSW{ee^8!Z zD35d$mxP=seV!bmC#O7MRY;jM*T-9xw@KBIcaqmNXR|@Hd9CF%+Z9L4Ywp&VWoq+< zytZZ$+iYp`Z(i5vik{c#Q3mob%WF+?t!*_4Yyg_%eJ+z!;B>P`^|^eea8BFGyWj~9 zW{2b1_%*w3I2<;~VNCUzTEPRWw$5Qw9L7%C4sC0O-3rVtTQ#G($$>=<1hu#=+AZ96G^M^EX(l1{uD*<=4h6H<#Z_XM?%-^sWLi@0MaUt3$bXbGNFgZ+vO2vtqgWIj-Kj z-TsC0s?h)`=xA3j)EkV$I@xvSZbD758EqVJ+?(}Sb9oENuQrV4wKj3as?E#>T+dd$ zmeI%c$#Fe1T5emmnK8>#`s}1$m@|vznaL?qDb7t6%-NYj#WaXMt&^$3tZ9~wbIJky RyYY{2bO^r%F2c`*zW_7;oPPiS diff --git a/data/fruit/metadata/.037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc b/data/fruit/metadata/.037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro.crc deleted file mode 100644 index 831d74e31230147858f2ed14ca831f4c08e17667..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68 zcmV-K0K5NVa$^7h00IC5g#d!#Z7xCnx>}Vrs%aA*6*pM}Vrs%aA*6*pMnI* diff --git a/data/fruit/metadata/.snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc b/data/fruit/metadata/.snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro.crc deleted file mode 100644 index b5d66c0cb395fe6af0407850d94be12fb1184847..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44 zcmYc;N@ieSU}AW$X2iLtAXYM*Y2oyLZ3bsGRb&!U!^^#Ay#2{Jshpu~Rn(hg07p*{ A-v9sr diff --git a/data/fruit/metadata/.snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc b/data/fruit/metadata/.snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro.crc deleted file mode 100644 index 33014f181a5c615732fc087c56045d7c9f4f4f31..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44 zcmV+{0Mq|ta$^7h00IE-CNc@Ua9tT!0-=}whA_=_h3T4QS9eR8?fD6kcK~+0zX#N2 C)Do5e diff --git a/data/fruit/metadata/.v1.metadata.json.crc b/data/fruit/metadata/.v1.metadata.json.crc deleted file mode 100644 index bf863e188dda5593c609e62a800249270b5697d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28 kcmYc;N@ieSU}D(x<_w2vp0v5q8STF=|9NkDZtpq<0EPYwLI3~& diff --git a/data/fruit/metadata/.v2.metadata.json.crc b/data/fruit/metadata/.v2.metadata.json.crc deleted file mode 100644 index 1e3c13b4209d375ea72c544f8f4aa22c02d90dd2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36 scmYc;N@ieSU}CtdY}ag>Cv9$YM*FYJf8JYjc)TvAT{kHSIUzI`0N9ERv;Y7A diff --git a/data/fruit/metadata/.v3.metadata.json.crc b/data/fruit/metadata/.v3.metadata.json.crc deleted file mode 100644 index 99e39305c7713e8420af6f7f9c8ecafe2d8e6008..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48 zcmYc;N@ieSU}BhJFRgBxCv9$YM*FYJf8JYJ$Nd(jT{kK5598Z$L71P7KRDvhmFTs% E0f3(pFaQ7m diff --git a/data/fruit/metadata/.version-hint.text.crc b/data/fruit/metadata/.version-hint.text.crc deleted file mode 100644 index 65f9819238e06650c68dfc2c38312ffb2725055f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12 TcmYc;N@ieSU}DI<)HfRd6JZ0R diff --git a/data/fruit/metadata/037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro b/data/fruit/metadata/037a9f15-fd4c-4950-80a9-fd6b257fc886-m0.avro deleted file mode 100644 index c4209af123c7ec4920136998835c686488e9ff03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7584 zcmb_hU1%KF6_#zKEwwSKq^5GCxR=3RyYV{g%*c{f#A)Lw#v+a#Ecd~<+s)nCyV69n zGn<)Ng>?|*$ASE`5E_!`C16Z&)3-bXl28)dq-jcf zx%bZO&U$wxFvh!k&);{xbM86UCo2zc8QBq7%cPDk?R-oNTMeSkX+h{Wtx(Hr{Fj4v zRhuj1wVF+wYM{-XeN3a@=y}b>b$T8?! z&xH*kY5}*pv_hUzSM1S`9mabhl!=*l!8JLqZU* zV%xzLCn=l=wc>dW!LAUV7Qzk=!g9m5RsbH==cMf_4v7$+5yH4y^+^z93%2Jiohe9O zlq$z|iJq;Brd|b3mr16QMjw(g!{_XVjdh-JscMI5zQniQcgT z$|K^CI&nirS{?Wjede^Lv5Bt^O3E>Jg#DthUnhWv)r<8yZh+<$(&C1Jaqw@|=qh%a zg#QSvVxMT~Fz)l;+T1Cv-HKOz?@nHZKRqN8?GwxMDV3tE*0F2X2yhGn2lggPH98W6 zIBe2Dq8jIh8ButBQ}E-nE^Y+NURY*@%>~YCZqso<-thp#QeLZ)8g4qFHb=jYEb{PF zP0$pGYmu_stXGIH%=fO%RJ7G>hm?a2tDI6)Le1ea)hk@f1lgzTS1Kz4%ktb1U>EXH zN~@j)>Ajc#7$C2P!exS}r8!hMOwHzzez@TUc4&Jpssc?z66BF_7~;c@9k$}{Vyhfn zQ}vz!(!k-ev>p{OsqJN5XBUQ z&4xqrJVJ~rI3QI7@KWrBITSRAmGa9_{NmMBjxVODU>NUXt0x$pX;%5+0NLCKMJ}bf zox%1wQnuZ4r3D!mvGc-;4V?Bu>@d2Z0FG1j@o^PSl?;~WH0y4e9+z6T-%{C3LAim@i`AnvYciWE;a#OAu#y|ivq?mHxARkw=nWn3q)WzRZr^` zc!d~hqCN5o?n*XOZ61#IDDle`z#JBjxQA?@ry0|fXEOspXG~`oYKP8j%nXDbix;tY zyMkmKQoMl~d2>Oc-OL=Mn;B}ONEKrTkj%l_8H=|UkW{uq7b(LukLi@q#w3k9C+?g3 zT+44Y*xUqiD3(JN$E$SBi>Y>_09KcmJZz)53H6~hat-j;67&eJ6f2hR=W76(m3#ZK+CTJmpknp z)CrNGMK}vXCY%KuT}@1Jj>&n0-T>olt)fe*wG+H^VDX;hqwK*|ST?o>?to#rgTcKU!9e0{yG*T3oDaYz!@~r zB9`GtYJKXqm`Mxr`Gr{!D_L(gj`p~sNqaI)g8fikovn3A(k z&7u3ECXGl!ah9i6v|dbQu58kZeAr4YYf^urlm*18*CicZ2kBUxd_Q8nLI)fC=ADa? zU>}voE?R4_aP_rX$r$A07}G14fPP~DMHw*|P*|H2L-(CW1f|PL?zG+?`_!o3ulw00V=5&xxclm4E!;QdB?Q>1Lv)7wns9)(n6A^bG$Zex z^x&LfM|8)IFaL?B|L7?t9$}@zL@(?xSxfgM2UA0|RMxq7ck~X37&#-F_)VPaK4l9( zr(`Qj57ZfsCMKlhU=5=({FxN90Got|&z5#ZQ`gt%FgNtl`FlS9;unA4`kO1e{`R{+ zeYt=5U&B`Av-NYIe0=c>??=~2^`VDuSjP|C@%#KAPA=pZuFec?DQ&wpzIf%e>+{>j zN>|1g?=QW$$J~Bx{?qxflJ)8Qe_y*kWp2O!`8^km7aqR%-6wx_@%=wu9er=;qYIZG z{PW1A?_D}RdVEWMw{y?r-9J2W*KVy^db5HeRO%~>b5<@>+2I|W+x{8^XgyU z9^L+R|I|C{6Rp|YmwMruV-w%rbzu1Vp4`vw7=GoMXNyZOpZ;v<%(HucK05jF%&z@c zcf9$X*T-%g*@~B5UpaQ>FC}y6D@R5OpC7q^|GDoU`##zC&AnrLzxDLt8|!b}a{F`R ovp3#ee|+kzPi=eaw%bmgs_Y)|b^YIs^Z(OFUO3;ny$#9#0~V#%4*&oF diff --git a/data/fruit/metadata/89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro b/data/fruit/metadata/89c7144f-8535-4e3c-bddf-7745b6e24ecd-m0.avro deleted file mode 100644 index 88165fa08949113b5c564080d7d96279d5e32d3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7467 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 E0bQce2LJ#7 diff --git a/data/fruit/metadata/v1.metadata.json b/data/fruit/metadata/v1.metadata.json deleted file mode 100644 index 13da3db..0000000 --- a/data/fruit/metadata/v1.metadata.json +++ /dev/null @@ -1,111 +0,0 @@ -{ - "format-version" : 2, - "table-uuid" : "03adfbd9-7e0f-4041-b891-7d439694b20c", - "location" : "fruit", - "last-sequence-number" : 0, - "last-updated-ms" : 1738031850786, - "last-column-id" : 15, - "current-schema-id" : 0, - "schemas" : [ { - "type" : "struct", - "schema-id" : 0, - "fields" : [ { - "id" : 1, - "name" : "id", - "required" : true, - "type" : "decimal(19, 0)" - }, { - "id" : 2, - "name" : "count", - "required" : true, - "type" : "float" - }, { - "id" : 3, - "name" : "name", - "required" : true, - "type" : "string" - }, { - "id" : 4, - "name" : "image", - "required" : false, - "type" : "binary" - }, { - "id" : 5, - "name" : "available", - "required" : true, - "type" : "boolean" - }, { - "id" : 6, - "name" : "last_picked", - "required" : false, - "type" : "date" - }, { - "id" : 7, - "name" : "address", - "required" : false, - "type" : { - "type" : "struct", - "fields" : [ { - "id" : 10, - "name" : "line1", - "required" : false, - "type" : "string" - }, { - "id" : 11, - "name" : "line2", - "required" : false, - "type" : "string" - }, { - "id" : 12, - "name" : "zipcode", - "required" : false, - "type" : "int" - } ] - } - }, { - "id" : 8, - "name" : "suppliers", - "required" : false, - "type" : { - "type" : "list", - "element-id" : 13, - "element" : "string", - "element-required" : false - } - }, { - "id" : 9, - "name" : "metrics", - "required" : false, - "type" : { - "type" : "map", - "key-id" : 14, - "key" : "string", - "value-id" : 15, - "value" : "int", - "value-required" : false - } - } ] - } ], - "default-spec-id" : 0, - "partition-specs" : [ { - "spec-id" : 0, - "fields" : [ ] - } ], - "last-partition-id" : 999, - "default-sort-order-id" : 0, - "sort-orders" : [ { - "order-id" : 0, - "fields" : [ ] - } ], - "properties" : { - "owner" : "david", - "write.parquet.compression-codec" : "zstd" - }, - "current-snapshot-id" : -1, - "refs" : { }, - "snapshots" : [ ], - "statistics" : [ ], - "partition-statistics" : [ ], - "snapshot-log" : [ ], - "metadata-log" : [ ] -} \ No newline at end of file diff --git a/data/fruit/metadata/v2.metadata.json b/data/fruit/metadata/v2.metadata.json deleted file mode 100644 index fa864bf..0000000 --- a/data/fruit/metadata/v2.metadata.json +++ /dev/null @@ -1,146 +0,0 @@ -{ - "format-version" : 2, - "table-uuid" : "03adfbd9-7e0f-4041-b891-7d439694b20c", - "location" : "fruit", - "last-sequence-number" : 1, - "last-updated-ms" : 1738032330405, - "last-column-id" : 15, - "current-schema-id" : 0, - "schemas" : [ { - "type" : "struct", - "schema-id" : 0, - "fields" : [ { - "id" : 1, - "name" : "id", - "required" : true, - "type" : "decimal(19, 0)" - }, { - "id" : 2, - "name" : "count", - "required" : true, - "type" : "float" - }, { - "id" : 3, - "name" : "name", - "required" : true, - "type" : "string" - }, { - "id" : 4, - "name" : "image", - "required" : false, - "type" : "binary" - }, { - "id" : 5, - "name" : "available", - "required" : true, - "type" : "boolean" - }, { - "id" : 6, - "name" : "last_picked", - "required" : false, - "type" : "date" - }, { - "id" : 7, - "name" : "address", - "required" : false, - "type" : { - "type" : "struct", - "fields" : [ { - "id" : 10, - "name" : "line1", - "required" : false, - "type" : "string" - }, { - "id" : 11, - "name" : "line2", - "required" : false, - "type" : "string" - }, { - "id" : 12, - "name" : "zipcode", - "required" : false, - "type" : "int" - } ] - } - }, { - "id" : 8, - "name" : "suppliers", - "required" : false, - "type" : { - "type" : "list", - "element-id" : 13, - "element" : "string", - "element-required" : false - } - }, { - "id" : 9, - "name" : "metrics", - "required" : false, - "type" : { - "type" : "map", - "key-id" : 14, - "key" : "string", - "value-id" : 15, - "value" : "int", - "value-required" : false - } - } ] - } ], - "default-spec-id" : 0, - "partition-specs" : [ { - "spec-id" : 0, - "fields" : [ ] - } ], - "last-partition-id" : 999, - "default-sort-order-id" : 0, - "sort-orders" : [ { - "order-id" : 0, - "fields" : [ ] - } ], - "properties" : { - "owner" : "david", - "write.parquet.compression-codec" : "zstd" - }, - "current-snapshot-id" : 7992439894843196740, - "refs" : { - "main" : { - "snapshot-id" : 7992439894843196740, - "type" : "branch" - } - }, - "snapshots" : [ { - "sequence-number" : 1, - "snapshot-id" : 7992439894843196740, - "timestamp-ms" : 1738032330405, - "summary" : { - "operation" : "append", - "spark.app.id" : "local-1738030711824", - "added-data-files" : "2", - "added-records" : "2", - "added-files-size" : "6569", - "changed-partition-count" : "1", - "total-records" : "2", - "total-files-size" : "6569", - "total-data-files" : "2", - "total-delete-files" : "0", - "total-position-deletes" : "0", - "total-equality-deletes" : "0", - "engine-version" : "3.5.4", - "app-id" : "local-1738030711824", - "engine-name" : "spark", - "iceberg-version" : "Apache Iceberg 1.7.1 (commit 4a432839233f2343a9eae8255532f911f06358ef)" - }, - "manifest-list" : "fruit/metadata/snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro", - "schema-id" : 0 - } ], - "statistics" : [ ], - "partition-statistics" : [ ], - "snapshot-log" : [ { - "timestamp-ms" : 1738032330405, - "snapshot-id" : 7992439894843196740 - } ], - "metadata-log" : [ { - "timestamp-ms" : 1738031850786, - "metadata-file" : "fruit/metadata/v1.metadata.json" - } ] -} \ No newline at end of file diff --git a/data/fruit/metadata/v3.metadata.json b/data/fruit/metadata/v3.metadata.json deleted file mode 100644 index eaa4927..0000000 --- a/data/fruit/metadata/v3.metadata.json +++ /dev/null @@ -1,177 +0,0 @@ -{ - "format-version" : 2, - "table-uuid" : "03adfbd9-7e0f-4041-b891-7d439694b20c", - "location" : "fruit", - "last-sequence-number" : 2, - "last-updated-ms" : 1738032335502, - "last-column-id" : 15, - "current-schema-id" : 0, - "schemas" : [ { - "type" : "struct", - "schema-id" : 0, - "fields" : [ { - "id" : 1, - "name" : "id", - "required" : true, - "type" : "decimal(19, 0)" - }, { - "id" : 2, - "name" : "count", - "required" : true, - "type" : "float" - }, { - "id" : 3, - "name" : "name", - "required" : true, - "type" : "string" - }, { - "id" : 4, - "name" : "image", - "required" : false, - "type" : "binary" - }, { - "id" : 5, - "name" : "available", - "required" : true, - "type" : "boolean" - }, { - "id" : 6, - "name" : "last_picked", - "required" : false, - "type" : "date" - }, { - "id" : 7, - "name" : "address", - "required" : false, - "type" : { - "type" : "struct", - "fields" : [ { - "id" : 10, - "name" : "line1", - "required" : false, - "type" : "string" - }, { - "id" : 11, - "name" : "line2", - "required" : false, - "type" : "string" - }, { - "id" : 12, - "name" : "zipcode", - "required" : false, - "type" : "int" - } ] - } - }, { - "id" : 8, - "name" : "suppliers", - "required" : false, - "type" : { - "type" : "list", - "element-id" : 13, - "element" : "string", - "element-required" : false - } - }, { - "id" : 9, - "name" : "metrics", - "required" : false, - "type" : { - "type" : "map", - "key-id" : 14, - "key" : "string", - "value-id" : 15, - "value" : "int", - "value-required" : false - } - } ] - } ], - "default-spec-id" : 0, - "partition-specs" : [ { - "spec-id" : 0, - "fields" : [ ] - } ], - "last-partition-id" : 999, - "default-sort-order-id" : 0, - "sort-orders" : [ { - "order-id" : 0, - "fields" : [ ] - } ], - "properties" : { - "owner" : "david", - "write.parquet.compression-codec" : "zstd" - }, - "current-snapshot-id" : 3790395430840981108, - "refs" : { - "main" : { - "snapshot-id" : 3790395430840981108, - "type" : "branch" - } - }, - "snapshots" : [ { - "sequence-number" : 1, - "snapshot-id" : 7992439894843196740, - "timestamp-ms" : 1738032330405, - "summary" : { - "operation" : "append", - "spark.app.id" : "local-1738030711824", - "added-data-files" : "2", - "added-records" : "2", - "added-files-size" : "6569", - "changed-partition-count" : "1", - "total-records" : "2", - "total-files-size" : "6569", - "total-data-files" : "2", - "total-delete-files" : "0", - "total-position-deletes" : "0", - "total-equality-deletes" : "0", - "engine-version" : "3.5.4", - "app-id" : "local-1738030711824", - "engine-name" : "spark", - "iceberg-version" : "Apache Iceberg 1.7.1 (commit 4a432839233f2343a9eae8255532f911f06358ef)" - }, - "manifest-list" : "fruit/metadata/snap-7992439894843196740-1-037a9f15-fd4c-4950-80a9-fd6b257fc886.avro", - "schema-id" : 0 - }, { - "sequence-number" : 2, - "snapshot-id" : 3790395430840981108, - "parent-snapshot-id" : 7992439894843196740, - "timestamp-ms" : 1738032335502, - "summary" : { - "operation" : "append", - "spark.app.id" : "local-1738030711824", - "added-data-files" : "1", - "added-records" : "1", - "added-files-size" : "3117", - "changed-partition-count" : "1", - "total-records" : "3", - "total-files-size" : "9686", - "total-data-files" : "3", - "total-delete-files" : "0", - "total-position-deletes" : "0", - "total-equality-deletes" : "0", - "engine-version" : "3.5.4", - "app-id" : "local-1738030711824", - "engine-name" : "spark", - "iceberg-version" : "Apache Iceberg 1.7.1 (commit 4a432839233f2343a9eae8255532f911f06358ef)" - }, - "manifest-list" : "fruit/metadata/snap-3790395430840981108-1-89c7144f-8535-4e3c-bddf-7745b6e24ecd.avro", - "schema-id" : 0 - } ], - "statistics" : [ ], - "partition-statistics" : [ ], - "snapshot-log" : [ { - "timestamp-ms" : 1738032330405, - "snapshot-id" : 7992439894843196740 - }, { - "timestamp-ms" : 1738032335502, - "snapshot-id" : 3790395430840981108 - } ], - "metadata-log" : [ { - "timestamp-ms" : 1738031850786, - "metadata-file" : "fruit/metadata/v1.metadata.json" - }, { - "timestamp-ms" : 1738032330405, - "metadata-file" : "fruit/metadata/v2.metadata.json" - } ] -} \ No newline at end of file diff --git a/data/fruit/metadata/version-hint.text b/data/fruit/metadata/version-hint.text deleted file mode 100644 index e440e5c..0000000 --- a/data/fruit/metadata/version-hint.text +++ /dev/null @@ -1 +0,0 @@ -3 \ No newline at end of file diff --git a/test/sql/local/iceberg_scan.test b/test/sql/local/iceberg_scan.test index f45ae6f..73610f7 100644 --- a/test/sql/local/iceberg_scan.test +++ b/test/sql/local/iceberg_scan.test @@ -120,46 +120,61 @@ SELECT count(*) FROM ICEBERG_SCAN('data/iceberg/lineitem_iceberg_gz_no_hint', AL 111968 query I -SELECT typeof(id) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_orderkey_bool) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -DECIMAL(19,0) +BOOLEAN query I -SELECT typeof(count) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_partkey_int) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -FLOAT +INTEGER query I -SELECT typeof(name) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_suppkey_long) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -VARCHAR +BIGINT query I -SELECT typeof(image) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_extendedprice_float) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -BLOB +FLOAT query I -SELECT typeof(available) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_extendedprice_double) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -BOOLEAN +DOUBLE + +query I +SELECT typeof(l_extendedprice_dec9_2) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +DECIMAL(9,2) query I -SELECT typeof(last_picked) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_shipdate_date) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- DATE query I -SELECT typeof(address) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_partkey_time) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -STRUCT(line1 VARCHAR, line2 VARCHAR, zipcode INTEGER) +INTEGER query I -SELECT typeof(suppliers) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_commitdate_timestamp) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -VARCHAR[] +TIMESTAMP query I -SELECT typeof(metrics) FROM ICEBERG_SCAN('data/fruit', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +SELECT typeof(l_commitdate_timestamp_tz) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; ---- -MAP(VARCHAR, INTEGER) +TIMESTAMP WITH TIME ZONE + +query I +SELECT typeof(l_comment_string) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +VARCHAR + +query I +SELECT typeof(l_comment_blob) FROM ICEBERG_SCAN('data/iceberg/generated_spec1_0_001/pyspark_iceberg_table', ALLOW_MOVED_PATHS=TRUE) LIMIT 1; +---- +BLOB