Repository navigation
protocol: Query Table startingVersion, endingVersion, and historical protocol - #114
Draft
littlegrasscao wants to merge 1 commit into
Draft
littlegrasscao wants to merge 1 commit into
littlegrasscao wants to merge 1 commit into
Conversation
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 7, 2026 01:13
1172cf8 to
f79c4a4
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 7, 2026 01:21
4907551 to
88c5f4d
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 7, 2026 01:56
f79c4a4 to
0b6b3ea
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
2 times, most recently
from
October 7, 2026 02:05
de7eacb to
5dd60cf
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 7, 2026 17:28
0b6b3ea to
fd4dfa1
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 7, 2026 17:28
5dd60cf to
0134c26
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 14, 2026 17:31
fd4dfa1 to
81ab161
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
2 times, most recently
from
October 14, 2026 17:38
70c4977 to
fbdbf5f
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 14, 2026 19:25
81ab161 to
9ccea3e
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 14, 2026 19:25
fbdbf5f to
51f652b
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 15, 2026 16:47
9ccea3e to
9e15672
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 15, 2026 16:47
51f652b to
40ceb7e
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 15, 2026 18:14
9e15672 to
77177a1
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 15, 2026 18:14
40ceb7e to
095395e
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 15, 2026 18:30
77177a1 to
5ec2957
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 15, 2026 18:30
095395e to
53e5e9c
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 15, 2026 23:35
5ec2957 to
af34658
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 15, 2026 23:35
53e5e9c to
cf2759e
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 15, 2026 23:38
af34658 to
7d57a1e
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 15, 2026 23:38
cf2759e to
052fed4
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 15, 2026 23:54
7d57a1e to
2e26c60
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 15, 2026 23:54
052fed4 to
29222a5
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 16, 2026 00:18
2e26c60 to
819be21
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 16, 2026 00:18
29222a5 to
0d8789f
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 16, 2026 00:41
819be21 to
162317e
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 16, 2026 00:41
0d8789f to
e1d55ac
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 19, 2026 17:13
162317e to
d82395a
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 19, 2026 17:13
e1d55ac to
f10c878
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 19, 2026 21:44
d82395a to
f7be628
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 19, 2026 21:44
f10c878 to
db0a270
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 19, 2026 22:35
f7be628 to
76ed426
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 19, 2026 22:35
db0a270 to
3bcd860
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 19, 2026 22:37
76ed426 to
d30057f
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 19, 2026 22:37
3bcd860 to
f2152d8
Compare
littlegrasscao
force-pushed
the
server/split2/21-protocol-query-pushdown
branch
from
October 20, 2026 00:31
d30057f to
515fd94
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 20, 2026 00:31
f2152d8 to
fbbbb98
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
startingVersion(with optionalendingVersion) on Query Table now returns data change files instead of 501, following the OSS server'squeryDataChangeSinceStartVersiongetChangesand returnsaddandremovefiles that havedataChange=true, each with itsversionandtimestamp; compaction rewrites are skippedstartingVersion, andDelta-Table-VersionisstartingVersionversionadd/removelines; delta responses wrap them infile.deltaSingleAction, with on-disk deletion vectors signed as in snapshot queriesincludeHistoricalProtocol=trueadds later protocol changes, with theirversion, to delta responses. Parquet responses ignore it, matching the client, which sends it only when it accepts deltadelta-sharing-capabilitiesreader features, so a parquet query across a deletion vector upgrade returns 400endingVersionwithoutstartingVersion, a negativestartingVersion,endingVersion < startingVersion, versions after the latest, and combiningstartingVersionwithversion,timestamp,includeRefreshToken, orrefreshTokenreturn 400INVALID_PARAMETER_VALUEstartingVersionqueries, as in the OSS serverincludeendstreamaction=trueappends anendStreamActionwithout a refresh tokenTesting
mvn clean install: 227 tests passedDeltaTableQueryReaderTest: a local Delta log with delete-and-insert, metaData change, deletion vector protocol upgrade, and compaction commits shows add/remove files with versions, historical metaData,endingVersionbounds, skipped compaction files, historical protocol only when requested, parquet rejection after the upgrade, and versions after the latest rejectedProtocolTableStartingVersionTest: astartingVersionquery on a local Delta log returnsDelta-Table-Versionset tostartingVersionand anendStreamAction; every invalid version combination returns 400ProtocolTableStartingVersionIntegrationTest: change files on the S3, Azure, and GCS test tables in both formats; each case is skipped without credentialsStacked on #113.