Repository navigation
protocol: Query Table Changes (Change Data Feed) - #115
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/22-protocol-query-versions
branch
from
October 7, 2026 01:21
4907551 to
88c5f4d
Compare
littlegrasscao
force-pushed
the
server/split2/23-protocol-query-changes
branch
from
October 7, 2026 01:21
a787a38 to
821b13a
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 7, 2026 01:56
88c5f4d to
de7eacb
Compare
littlegrasscao
force-pushed
the
server/split2/23-protocol-query-changes
branch
from
October 7, 2026 01:56
821b13a to
73fb9d3
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 7, 2026 02:05
de7eacb to
5dd60cf
Compare
littlegrasscao
force-pushed
the
server/split2/23-protocol-query-changes
branch
from
October 7, 2026 02:05
73fb9d3 to
0cf65cd
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/23-protocol-query-changes
branch
3 times, most recently
from
October 8, 2026 18:26
9fa2cbe to
062bf43
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/23-protocol-query-changes
branch
from
October 14, 2026 17:42
a4eae87 to
f2d88f1
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/23-protocol-query-changes
branch
from
October 14, 2026 19:25
f2d88f1 to
bbda0ee
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/23-protocol-query-changes
branch
from
October 15, 2026 16:47
bbda0ee to
125450b
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/23-protocol-query-changes
branch
from
October 15, 2026 18:14
125450b to
da6e0e2
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/23-protocol-query-changes
branch
from
October 15, 2026 18:30
da6e0e2 to
b41b977
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/23-protocol-query-changes
branch
from
October 15, 2026 23:35
b41b977 to
71c7ebc
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/23-protocol-query-changes
branch
from
October 15, 2026 23:39
71c7ebc to
861c956
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/23-protocol-query-changes
branch
from
October 15, 2026 23:54
861c956 to
e4ae196
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/23-protocol-query-changes
branch
from
October 16, 2026 00:18
e4ae196 to
efacab7
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/23-protocol-query-changes
branch
from
October 16, 2026 00:41
efacab7 to
9cba40d
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/23-protocol-query-changes
branch
from
October 19, 2026 17:13
9cba40d to
bd93636
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/23-protocol-query-changes
branch
from
October 19, 2026 21:44
bd93636 to
c441a2f
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/23-protocol-query-changes
branch
from
October 19, 2026 22:35
c441a2f to
74d6edd
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/23-protocol-query-changes
branch
from
October 19, 2026 22:37
74d6edd to
502f0fc
Compare
littlegrasscao
force-pushed
the
server/split2/22-protocol-query-versions
branch
from
October 20, 2026 00:32
f2152d8 to
fbbbb98
Compare
littlegrasscao
force-pushed
the
server/split2/23-protocol-query-changes
branch
from
October 20, 2026 00:32
502f0fc to
7a4ee80
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
GET {prefix}/shares/{share}/schemas/{schema}/tables/{table}/changes(Read Change Data Feed) toOpenSharingProtocolService, following the OSS server'squeryCDFandDeltaSharingCDCReaderstartingVersionorstartingTimestamp(first version at or after it); the end fromendingVersionorendingTimestamp(last version at or before it), or the latest version. Versions take precedence over timestamps, and an end after the latest version is cappedcdcfiles returns only those; otherwise it returnsaddandremovefiles withdataChange=true. MERGE commits whose metrics report no inserted, updated, or deleted rows return no filesincludeHistoricalMetadata=true, which also returns later metaData with theirversion; otherwise they come from the latest version.Delta-Table-Versionis the start versionincludeHistoricalProtocol=trueadds later protocols to delta responses, as forstartingVersionqueries in protocol: Query Table startingVersion, endingVersion, and historical protocol #114add,cdf, andremovelines; delta responses wrap them infile.deltaSingleActionasadd,cdc, andremovefileidhash,includeendstreamaction, url access checks, and reader feature checks behave as in Query TableProtocolTables.changes, with the parameters inTableChangesRequeststartingVersionQuery Table and the Change Data Feed now share one per-commit readerTesting
mvn clean install: 235 tests passedDeltaTableQueryReaderTest: a local CDF-enabled Delta log (insert, update with cdc files, delete without cdc, no-op MERGE, CDF disabled) checks that cdc files win, no-op MERGEs are skipped, parquet and delta lines are correct, timestamps resolve to versions, header metaData followsincludeHistoricalMetadata, and a missing start, an end before the start, a start after the latest, and ranges without the Change Data Feed are rejected; the existingstartingVersiontests still passProtocolTableChangesTest: on a local Delta log without a Change Data Feed,/changesreturns 400INVALID_PARAMETER_VALUE; a missing start, a malformed timestamp, or a malformed version returns 400, and an ungranted share returns 404ProtocolTableChangesIntegrationTest: the S3 CDF test table returns change files in both formats, rejects a range through the version that disables the Change Data Feed, caps an end after the latest version, and rejects an end before the start; table1 on S3, Azure, and GCS rejects the Change Data Feed. Each case is skipped without credentialsStacked on #114.