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

[python] Allow specification of X names on ingest [release-1.6] #1996

Merged
merged 6 commits into from
Jan 8, 2024

Conversation

johnkerl
Copy link
Member

@johnkerl johnkerl commented Jan 4, 2024

Issue and/or context: #1993 for the release-1.6 branch

Changes:

Notes for Reviewer:

Copy link

codecov bot commented Jan 4, 2024

Codecov Report

Merging #1996 (2afbd8c) into release-1.6 (8a7b523) will not change coverage.
The diff coverage is 100.00%.

Additional details and impacted files
@@             Coverage Diff              @@
##           release-1.6    #1996   +/-   ##
============================================
  Coverage        63.11%   63.11%           
============================================
  Files              106      106           
  Lines            10062    10062           
============================================
  Hits              6351     6351           
  Misses            3711     3711           
Flag Coverage Δ
python 89.77% <100.00%> (ø)
r 48.28% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Components Coverage Δ
python_api 89.77% <100.00%> (ø)
libtiledbsoma ∅ <ø> (∅)

@johnkerl
Copy link
Member Author

johnkerl commented Jan 8, 2024

Note: the 2nd commit be8c808 on this PR is a port of #1972's pin of TileDB-R from release-1.5 (which it is known-good) to release-1.6.

cd apis/r
wget https://github.com/TileDB-Inc/TileDB-R/archive/refs/tags/0.22.0.tar.gz
Rscript -e 'remotes::install_deps("0.22.0.tar.gz")'
R CMD INSTALL 0.22.0.tar.gz # as 0.22.0 is needed by SOMA 1.6
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The idea of 'controlled download' was to do just this, but via binaries. Paul and I put some work into this. But let's see if brute works.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eddelbuettel in fact this has already worked on release-1.5.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eddelbuettel regarding controlled downgrades -- last week on #1993 despite multiple debug commits over a full day of debugging I was unable to decipher why the controlled-downgrades approach from #1994 was not working on MacOS. Since I was unable to get the pattern from #1994 applied successfully, I am now attempting to apply the successful pattern from #1972.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I did the same in December, believe it or not, but stopped when I saw no light on either end of any tunnel.

cd apis/r
wget https://github.com/TileDB-Inc/TileDB-R/archive/refs/tags/0.22.0.tar.gz
Rscript -e 'remotes::install_deps("0.22.0.tar.gz")'
R CMD INSTALL 0.22.0.tar.gz # as 0.22.0 is needed by SOMA 1.6
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You should not need to do it twice, you can can skip the update.packages(ask=FALSE) too. That was from a different time fixing a different issue.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eddelbuettel I went through multiple CI iterations on #1972 on the release-1.5 branch to find, and use, a known-good pattern which we could then apply for subsequent PRs on subsequent branches.

This PR is a such a subsequent PR on a subsequent branch (release-1.6).

@johnkerl johnkerl marked this pull request as ready for review January 8, 2024 15:08
@johnkerl johnkerl requested a review from eddelbuettel January 8, 2024 15:10
Copy link
Contributor

@eddelbuettel eddelbuettel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the comment inline. @mojaveazure raised the same point, correctly, and may want to chime in.

It's good that it builds now -- big step forward. But we don't need to build it twice.

@@ -91,6 +87,13 @@ jobs:
- name: Update Packages
run: Rscript -e 'update.packages(ask=FALSE)'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I recommend to remove this block. It would allow you to remove the next block (ie lines 90 to 95 as well). And cut CI time down by a few minutes.

/CC @mojaveazure

Copy link
Member Author

@johnkerl johnkerl Jan 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eddelbuettel trying commit number 3: de92e13

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eddelbuettel:

  • Commit 2 be8c808 had green CI
  • There were 3 of 3 CI fails with commit number 3: de92e13
  • Commit 4 5a76da1 reverts to commit 2 and has green CI

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I look at the correct page not three for three. One, plus two cancels. We know coverage is more fragile.

https://github.com/single-cell-data/TileDB-SOMA/actions/runs/7449708671/job/20267723363

Copy link
Member Author

@johnkerl johnkerl Jan 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eddelbuettel I watched each one as I ran them.

  • Commit 3 had three fails
  • Commit 4 had a cancel (I don't know why), then a successful re-run

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@eddelbuettel I am happy to re-run the already-green CI another time for commit number 4.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Am I looking in the wrong place?

image

And

image

Anyway, I have no beef with this but it may be a good idea to get someone else to look at this.

@johnkerl
Copy link
Member Author

johnkerl commented Jan 8, 2024

@mojaveazure CI fail with

Symbol not found: (_tiledb_group_get_member_by_index_v2)

(2.18 vs 2.19) on commit number 5: 3ce3836

I am again reverting to commits 4 and 2 (which are identical) -- this will be a commit number 6 -- 2afbd8c -- using the proven-good approach for those commits.

Copy link
Member

@mojaveazure mojaveazure left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dissapointing that the controlled update didn't work; it seems like our best bet is the update + reinstall

@eddelbuettel
Copy link
Contributor

😿 Sometimes blunt tools are all we have.

Also worth reiterating that AFAICT all this work 'merely' lets us get by in CI, and may do little for users of SOMA who still fight similar battles.

@johnkerl
Copy link
Member Author

johnkerl commented Jan 8, 2024

Also worth reiterating that AFAICT all this work 'merely' lets us get by in CI, and may do little for users of SOMA who still fight similar battles.

@eddelbuettel indeed: as per our established procedure there are three things:

This PR addresses only the first of these three; as it is intended to do.

@johnkerl johnkerl merged commit 8728744 into release-1.6 Jan 8, 2024
14 checks passed
@johnkerl johnkerl deleted the kerl/X-name-release-1.6 branch January 8, 2024 19:33
@eddelbuettel
Copy link
Contributor

I just reiterated things internally in a conversartion, it is not ideal how things are set up because it makes builds from source harder than they maybe could be. You are fighting a heroic battle with the build system, yet there are still more possible build permutations behind other curtains. It's hard and complex ...

Thanks for getting this one finished!

@johnkerl johnkerl changed the title Allow specification of X names on ingest [release-1.6] [python] Allow specification of X names on ingest [release-1.6] Jan 8, 2024
@johnkerl johnkerl mentioned this pull request Jan 9, 2024
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