Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade go-sqlite3 to v1.14.22 #142

Merged
merged 1 commit into from
Feb 16, 2024
Merged

Conversation

erikdw
Copy link
Collaborator

@erikdw erikdw commented Feb 16, 2024

Description

Update the go-sqlite3 dependency for Ctlstore to get to the latest upstream version from https://github.com/mattn/go-sqlite3.

Notably we depend on a Segment-specific fork that includes a patch which enables preupdate hooks for our code without requiring a build-time flag to be manually put into place by all users of the ctlstore library.

Details

This depends on segmentio/go-sqlite3#9 to allow the go get to succeed.

Once that is merged, we deleted the segment-v1.14.22 tag in that repo and recreated it as v1.14.22-segment.

Tip

Despite fixing the master of go-sqlite3 to update module path, I was getting errors doing go get after deleting and recreating the segment-v1.14.22 tag like so:

% go get github.com/segmentio/[email protected]
go: github.com/segmentio/[email protected] (v1.14.23-0.20240208202956-73b5bef61db6) > requires github.com/segmentio/[email protected]: parsing go.mod:
	module declares its path as: github.com/mattn/go-sqlite3
	        but was required as: github.com/segmentio/go-sqlite3

@kevinburkesegment explained this was likely due to the Go package cache, so we decided to just delete that previous tag and not try to recreate it. Instead we created a tag with a different name.

Testing completed successfully:

Note

Replacement for PR #140 which had the wrong version number in its branch name.

@erikdw erikdw requested a review from a team as a code owner February 16, 2024 19:42
@erikdw erikdw merged commit f41aec0 into master Feb 16, 2024
8 checks passed
@erikdw erikdw deleted the erikdw/upgrade-go-sqlite3-to-v1.14.22 branch February 16, 2024 20:24
zhou-hongyu pushed a commit that referenced this pull request Feb 20, 2024
## Description

Update the `go-sqlite3` dependency for Ctlstore to get to the latest upstream version from https://github.com/mattn/go-sqlite3.

Notably we depend on a Segment-specific fork that includes a patch which enables preupdate hooks for our code without requiring a build-time flag to be manually put into place by all users of the ctlstore library.

## Details

This depends on segmentio/go-sqlite3#9 to allow the `go get` to succeed.

Once that is merged, we deleted the [segment-v1.14.22](https://github.com/segmentio/go-sqlite3/releases/tag/segment-v1.14.22) tag in that repo and recreated it as [v1.14.22-segment](https://github.com/segmentio/go-sqlite3/releases/tag/v1.14.22-segment).

> [!TIP]
> Despite fixing the `master` of go-sqlite3 to [update module path](https://github.com/segmentio/go-sqlite3/blob/b9c49a6eaf4ca03f2515c9ef9334d20741363b3b/go.mod#L1), I was getting errors doing `go get` after deleting and recreating the `segment-v1.14.22` tag like so:
> ```
> % go get github.com/segmentio/[email protected]
> go: github.com/segmentio/[email protected] (v1.14.23-0.20240208202956-73b5bef61db6) > requires github.com/segmentio/[email protected]: parsing go.mod:
> 	module declares its path as: github.com/mattn/go-sqlite3
> 	        but was required as: github.com/segmentio/go-sqlite3
> ```
>
> @kevinburkesegment explained this was likely due to the Go package cache, so we decided to just delete that previous tag and not try to recreate it. Instead we created a tag with a different name.

Testing completed successfully: 
* [x] ensure CI runs
* [x] verify on other services that include ctlstore client, when those services are updated. https://segment.atlassian.net/browse/IO-1695

> [!NOTE]  
> Replacement for PR #140 which had the wrong version number in its branch name.
erikdw added a commit that referenced this pull request Feb 27, 2024
…s (families, tables) (#141)

* Upgrade go-sqlite3 to v1.14.22 (#142)

## Description

Update the `go-sqlite3` dependency for Ctlstore to get to the latest upstream version from https://github.com/mattn/go-sqlite3.

Notably we depend on a Segment-specific fork that includes a patch which enables preupdate hooks for our code without requiring a build-time flag to be manually put into place by all users of the ctlstore library.

## Details

This depends on segmentio/go-sqlite3#9 to allow the `go get` to succeed.

Once that is merged, we deleted the [segment-v1.14.22](https://github.com/segmentio/go-sqlite3/releases/tag/segment-v1.14.22) tag in that repo and recreated it as [v1.14.22-segment](https://github.com/segmentio/go-sqlite3/releases/tag/v1.14.22-segment).

> [!TIP]
> Despite fixing the `master` of go-sqlite3 to [update module path](https://github.com/segmentio/go-sqlite3/blob/b9c49a6eaf4ca03f2515c9ef9334d20741363b3b/go.mod#L1), I was getting errors doing `go get` after deleting and recreating the `segment-v1.14.22` tag like so:
> ```
> % go get github.com/segmentio/[email protected]
> go: github.com/segmentio/[email protected] (v1.14.23-0.20240208202956-73b5bef61db6) > requires github.com/segmentio/[email protected]: parsing go.mod:
> 	module declares its path as: github.com/mattn/go-sqlite3
> 	        but was required as: github.com/segmentio/go-sqlite3
> ```
>
> @kevinburkesegment explained this was likely due to the Go package cache, so we decided to just delete that previous tag and not try to recreate it. Instead we created a tag with a different name.

Testing completed successfully: 
* [x] ensure CI runs
* [x] verify on other services that include ctlstore client, when those services are updated. https://segment.atlassian.net/browse/IO-1695

> [!NOTE]  
> Replacement for PR #140 which had the wrong version number in its branch name.

* first pass of adding family name and table name to reflector side

* query statement filters by family name

* add UTs to cover DML entries filtering by family

* Fix UTs

* query statement filters by table name

* Add comprehensive UTs

* query should be able to filter by whole family and cherry pickable tables

---------

Co-authored-by: Erik Weathers <[email protected]>
Co-authored-by: Hongyu Zhou <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants