Database being truncated in the middle of a request (with :truncation enabled instead of :transaction)

During a simple spec that visits a page, updates an attribute, and checks that the attribute was updated on page reload, my database is being truncated during the page reload. This ONLY ever happens with Poltergeist, never with Selenium, so I believe it to be a Poltergeist issue rather than a database_cleaner or Selenium issue. Here is the trace, simply look at the bottom of the trace for the 500 error. A few lines up, the truncation is visible.
 FROM "roles" WHERE "roles"."name" = 'Subscription Admin' LIMIT 1
   (0.2ms)  BEGIN
  Role Exists (0.3ms)  SELECT 1 AS one FROM "roles" WHERE "roles"."name" = 'Subscription Admin' LIMIT 1
  SQL (2.1ms)  INSERT INTO "roles" ("created_at", "name", "updated_at") VALUES ($1, $2, $3) RETURNING "id"  [["created_at", Tue, 10 Jun 2014 16:44:10 CDT -05:00], ["name", "Subscription Admin"], ["updated_at", Tue, 10 Jun 2014 16:44:10 CDT -05:00]]
   (5.6ms)  COMMIT
   (0.2ms)  BEGIN
  SQL (2.4ms)  INSERT INTO "subscriptions" ("account_type_id", "active", "created_at", "deleted_at", "free", "trial_expiry", "updated_at") VALUES ($1, $2, $3, $4, $5, $6, $7) RETURNING "id"  [["account_type_id", nil], ["active", true], ["created_at", Tue, 10 Jun 2014 16:44:10 CDT -05:00], ["deleted_at", nil], ["free", true], ["trial_expiry", Thu, 10 Jul 2014 16:44:07 CDT -05:00], ["updated_at", Tue, 10 Jun 2014 16:44:10 CDT -05:00]]
   (0.3ms)  COMMIT
  AccountType Load (0.4ms)  SELECT "account_types".* FROM "account_types" WHERE "account_types"."name" = 'Free' LIMIT 1
   (0.2ms)  BEGIN
  AccountType Exists (0.2ms)  SELECT 1 AS one FROM "account_types" WHERE "account_types"."name" = 'Free' LIMIT 1
  SQL (2.2ms)  INSERT INTO "account_types" ("contributors", "created_at", "name", "price", "trial_period_days", "updated_at", "videos") VALUES ($1, $2, $3, $4, $5, $6, $7) RETURNING "id"  [["contributors", 15], ["created_at", Tue, 10 Jun 2014 16:44:10 CDT -05:00], ["name", "Free"], ["price", 0.0], ["trial_period_days", 0], ["updated_at", Tue, 10 Jun 2014 16:44:10 CDT -05:00], ["videos", 20]]
   (0.5ms)  COMMIT
   (0.2ms)  BEGIN
  User Load (1.6ms)  SELECT "users".*   FROM "friendly_id_slugs" WHERE "friendly_id_slugs"."sluggable_type" = 'Tournament' AND (slug = 'tourney-test-uri' OR slug LIKE 'tourney-test-uri--%') ORDER BY LENGTH(slug) DESC, slug DESC LIMIT 1
  SQL (4.0ms)  INSERT INTO "tournaments" ("challonge_id", "created_at", "description", "division", "elimination_type", "ends_at", "event_id", "example_bracket_challonge_id", "example_bracket_number_of_teams", "location", "name", "pool_size", "pooled", "slug", "started", "starts_at", "tournament_admin_id", "updated_at", "uri", "winner_id") VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14, $15, $16, $17, $18, $19, $20) RETURNING "id"  [["challonge_id", nil], ["created_at", Tue, 10 Jun 2014 16:44:11 CDT -05:00], ["description", "Test tournament description"], ["division", "15U"], ["elimination_type", "single elimination"], ["ends_at", Wed, 25 Jun 2014 16:44:07 CDT -05:00], ["event_id", nil], ["example_bracket_challonge_id", nil], ["example_bracket_number_of_teams", nil], ["location", "Test tournament land"], ["name", "Test tournament"], ["pool_size", 3], ["pooled", nil], ["slug", "tourney-test-uri"], ["started", false], ["starts_at", Tue, 10 Jun 2014 16:44:07 CDT -05:00], ["tournament_admin_id", nil], ["updated_at", Tue, 10 Jun 2014 16:44:11 CDT -05:00], ["uri", "tourney-test-uri"], ["winner_id", nil]]
  FriendlyId::Slug Load (0.4ms)  SELECT "friendly_id_slugs".*  FROM "friendly_id_slugs" WHERE "friendly_id_slugs"."sluggable_id" = 1 AND "friendly_id_slugs"."sluggable_type" = 'Tournament' ORDER BY "friendly_id_slugs".id DESC LIMIT 1
   (0.3ms)  COMMIT
   (0.3ms)  BEGIN
   (0.3ms)  UPDATE "tournaments" SET "challonge_id" = 1027130, "updated_at" = '2014-06-10 16:44:11.718942' WHERE "tournaments"."id" = 1
  FriendlyId::Slug Load (0.3ms)  SELECT "friendly_id_slugs".* FROM "friendly_id_slugs" WHERE "friendly_id_slugs"."sluggable_id" = 1 AND "friendly_id_slugs"."sluggable_type" = 'Tournament' ORDER BY "friendly_id_slugs".id DESC LIMIT 1
   (6.5ms)  COMMIT
Started GET "/events/1/edit?tournament_id=1" for <IP_ADDRESS> at 2014-06-10 16:44:14 -0500
   (0.2ms)  BEGIN
   (1.2ms)  UPDATE "users" SET "last_sign_in_at" = '2014-06-10 16:44:14.152080', "current_sign_in_at" = '2014-06-10 16:44:14.152080', "last_sign_in_ip" = '<IP_ADDRESS>', "current_sign_in_ip" = '<IP_ADDRESS>', "sign_in_count" = 1, "updated_at" = '2014-06-10 16:44:14.154384' WHERE "users"."type" IN ('EventAdmin') AND "users"."id" = 1
   (0.3ms)  UPDATE "subscriptions" SET "account_type_id" = 1, "updated_at" = '2014-06-10 16:44:14.166127' WHERE "subscriptions"."id" = 1
   (0.3ms)  COMMIT
Processing by EventsController#edit as HTML
  Parameters: {"tournament_id"=>"1", "id"=>"1"}
  Event Load (0.9ms)  SELECT "events".* FROM "events" WHERE "events"."id" = $1 LIMIT 1  [["id", "1"]]
Creating scope :non_free_accounts. Overwriting existing method Athlete.non_free_accounts.
  SQL (0.6ms)  SELECT "tournaments".id FROM "tournaments" INNER JOIN "events" ON "tournaments"."event_id" = "events"."id" WHERE "events"."event_admin_id" = 1
  Tournament Load (0.6ms)  SELECT "tournaments".* FROM "tournaments" WHERE "tournaments"."event_id" = 1 ORDER BY name ASC
  Tournament Load (0.4ms)  SELECT "tournaments".*  FROM "tournaments" WHERE "tournaments"."event_id" = 1 AND "tournaments"."id" = $1 ORDER BY name ASC LIMIT 1  [["id", "1"]]
  TournamentMatch Load (1.1ms)  SELECT "tournament_matches".*   FROM "tournament_match_locations" WHERE "tournament_match_locations"."event_id" = 1 ORDER BY name ASC
  Rendered tournament_match_locations/_edit.html.erb (0.0ms)
  Rendered tournament_match_locations/_form.html.erb (12.1ms)
  Rendered tournament_match_locations/_index.html.erb (16.4ms)
  Rendered tournaments/_tournament_admin.html.erb (1.4ms)
  Rendered tournaments/_edit.html.erb (8.8ms)
  Team Load (0.7ms)  SELECT "teams".* FROM "teams" WHERE "teams"."division" = '15U'
  Team Load (0.5ms)  SELECT "teams".*  FROM "teams" INNER JOIN "tournament_teams" ON "teams"."id" = "tournament_teams"."team_id" WHERE "tournament_teams"."tournament_id" = 1 AND (tournament_teams.aasm_state = 'approved')
  CACHE (0.0ms)  SELECT COUNT(*) FROM "teams" INNER JOIN "tournament_teams" ON "teams"."id" = "tournament_teams"."team_id" WHERE "tournament_teams"."tournament_id" = 1 AND (tournament_teams.aasm_state = 'approved')
  Rendered tournament_matches/_seed_teams.html.erb (12.4ms)
  Rendered tournament_matches/_index_for_tournament.html.erb (14.5ms)
  Rendered tournament_matches/_enter_match_locations.html.erb (1.0ms)
  Rendered tournament_matches/_enter_scores.html.erb (0.7ms)
  Rendered tournaments/_form.html.erb (7.8ms)
  Rendered shared/modals/_new_tournament.html.erb (9.2ms)
  Rendered shared/modals/_new_tournament_admin.html.erb (0.3ms)
  Rendered shared/modals/_new_team.html.erb (0.3ms)
  Rendered shared/modals/_new_custom_message.html.erb (0.3ms)
  Rendered shared/modals/_edit_scores.html.erb (0.3ms)
  Rendered events/edit.html.erb within layouts/application (814.0ms)
  Rendered shared/_head.html.erb (2.1ms)
  Rendered shared/_errors.html.erb (0.5ms)
  Rendered shared/navigations/_eventadmin_nav.html.erb (1.6ms)
  Rendered shared/navigations/_mobile_event_admin_nav.html.erb (1.2ms)
  Rendered shared/_logged_in_nav.html.erb (7.4ms)
  Rendered shared/modals/_edit_event.html.erb (0.3ms)
  Rendered shared/modals/_privacy_settings.html.erb (0.9ms)
  Rendered shared/modals/_video_player.html.erb (0.3ms)
  Rendered shared/modals/_stats_chart.html.erb (0.3ms)
  Rendered shared/_modals.html.erb (5.7ms)
  Rendered shared/_social_icons.html.erb (1.1ms)
  Rendered shared/_signed_in_footer.html.erb (6.5ms)
Completed 200 OK in 1981.1ms (Views: 923.5ms | ActiveRecord: 20.0ms | Solr: 0.0ms)
Started GET "/assets/application.css" for <IP_ADDRESS> at 2014-06-10 16:44:16 -0500
Served asset /application.css - 200 OK (90ms)
Started GET "/assets/stripe.js" for <IP_ADDRESS> at 2014-06-10 16:44:16 -0500
Served asset /stripe.js - 200 OK (10ms)
Started GET "/assets/rt-logo-icon.png" for <IP_ADDRESS> at 2014-06-10 16:44:16 -0500
Served asset /rt-logo-icon.png - 200 OK (5ms)
Started GET "/assets/application.js" for <IP_ADDRESS> at 2014-06-10 16:44:16 -0500
Served asset /application.js - 200 OK (317ms)
Started GET "/assets/jquery.bracket.min.css" for <IP_ADDRESS> at 2014-06-10 16:44:16 -0500
Served asset /jquery.bracket.min.css - 200 OK (7ms)
Started GET "/assets/fontawesome-webfont.woff" for <IP_ADDRESS> at 2014-06-10 16:44:17 -0500
Served asset /fontawesome-webfont.woff - 200 OK (8ms)
Started GET "/assets/chosen-sprite.png" for <IP_ADDRESS> at 2014-06-10 16:44:17 -0500
Served asset /chosen-sprite.png - 200 OK (5ms)
Started PUT "/events/1" for <IP_ADDRESS> at 2014-06-10 16:44:18 -0500
Processing by EventsController#update as HTML
  Parameters: {"utf8"=>"✓", "event"=>{"name"=>"Edited event name", "location"=>"Test land", "starts_at"=>"06/10/2014  9:44 PM", "ends_at"=>"06/25/2014  9:44 PM", "description"=>"Test event description"}, "commit"=>"Update Event", "id"=>"1"}
  User Load (3.0ms)  SELECT "users".* FROM "users" WHERE "users"."id" = 1 LIMIT 1
  TournamentPool Load (0.6ms)  SELECT "tournament_pools".* FROM "tournament_pools"
  Tournament Load (1.2ms)  SELECT "tournaments".* FROM "tournaments"
  Role Load (0.9ms)  SELECT "roles".* FROM "roles" INNER JOIN "roles_users" ON "roles"."id" = "roles_users"."role_id" WHERE "roles_users"."user_id" = 1
  Subscription Load (1.0ms)  SELECT "subscriptions".* FROM "subscriptions" INNER JOIN "subscriptions_users" ON "subscriptions"."id" = "subscriptions_users"."subscription_id" WHERE "subscriptions_users"."user_id" = 1 ORDER BY "subscriptions"."id" DESC LIMIT 1
  Event Load (0.9ms)  SELECT "events".* FROM "events" WHERE "events"."event_admin_id" = 1 AND "events"."id" = $1 LIMIT 1  [["id", "1"]]
   (0.2ms)  BEGIN
   (0.5ms)  UPDATE "events" SET "name" = 'Edited event name', "starts_at" = '2014-06-10 16:44:00.000000', "ends_at" = '2014-06-25 16:44:00.000000', "updated_at" = '2014-06-10 16:44:18.425235' WHERE "events"."id" = 1
   (6.4ms)  COMMIT
Redirected to http://<IP_ADDRESS>:56936/events/1/edit
Completed 302 Found in 60.5ms (ActiveRecord: 19.9ms)
Started GET "/events/1/edit" for <IP_ADDRESS> at 2014-06-10 16:44:18 -0500
Processing by EventsController#edit as HTML
  Parameters: {"id"=>"1"}
  User Load (1.1ms)  SELECT "users".* FROM "users" WHERE "users"."id" = 1 LIMIT 1
  Role Load (0.6ms)  SELECT "roles".* FROM "roles" INNER JOIN "roles_users" ON "roles"."id" = "roles_users"."role_id" WHERE "roles_users"."user_id" = 1
  Subscription Load (0.7ms)  SELECT "subscriptions".* FROM "subscriptions" INNER JOIN "subscriptions_users" ON "subscriptions"."id" = "subscriptions_users"."subscription_id" WHERE "subscriptions_users"."user_id" = 1 ORDER BY "subscriptions"."id" DESC LIMIT 1
  Event Load (0.8ms)  SELECT "events".*  FROM "tournaments" WHERE "tournaments"."event_id" = 1 ORDER BY name ASC
  TournamentMatch Load (0.8ms)  SELECT "tournament_matches".*  FROM "events" WHERE "events"."id" = 1 LIMIT 1
   (0.2ms)  SELECT COUNT(*) FROM "tournament_match_locations" WHERE "tournament_match_locations"."event_id" = 1
  Rendered events/_progress_bar.html.erb (16.4ms)
   (1.3ms)  ALTER TABLE "account_types" DISABLE TRIGGER ALL;ALTER TABLE "external_services" DISABLE TRIGGER ALL;ALTER TABLE "versions" DISABLE TRIGGER ALL;ALTER TABLE "stats" DISABLE TRIGGER ALL;ALTER TABLE "honor_types" DISABLE TRIGGER ALL;ALTER TABLE "seo_colleges" DISABLE TRIGGER ALL;ALTER TABLE "goals" DISABLE TRIGGER ALL;ALTER TABLE "coach_contacts" DISABLE TRIGGER ALL;ALTER TABLE "reports" DISABLE TRIGGER ALL;ALTER TABLE "subscriptions" DISABLE TRIGGER ALL;ALTER TABLE "colleges" DISABLE TRIGGER ALL;ALTER TABLE "tournament_pools" DISABLE TRIGGER ALL;ALTER TABLE "honors" DISABLE TRIGGER ALL;ALTER TABLE "invitations" DISABLE TRIGGER ALL;ALTER TABLE "contributorships" DISABLE TRIGGER ALL;ALTER TABLE "activities" DISABLE TRIGGER ALL;ALTER TABLE "athlete_notes" DISABLE TRIGGER ALL;ALTER TABLE "kept_athletes" DISABLE TRIGGER ALL;ALTER TABLE "tournament_teams" DISABLE TRIGGER ALL;ALTER TABLE "tournaments" DISABLE TRIGGER ALL;ALTER TABLE "user_types" DISABLE TRIGGER ALL;ALTER TABLE "users" DISABLE TRIGGER ALL;ALTER TABLE "subscriptions_users" DISABLE TRIGGER ALL;ALTER TABLE "games" DISABLE TRIGGER ALL;ALTER TABLE "coached_teams" DISABLE TRIGGER ALL;ALTER TABLE "tip_topics" DISABLE TRIGGER ALL;ALTER TABLE "future_games" DISABLE TRIGGER ALL;ALTER TABLE "roles" DISABLE TRIGGER ALL;ALTER TABLE "sports" DISABLE TRIGGER ALL;ALTER TABLE "seo_random_strings" DISABLE TRIGGER ALL;ALTER TABLE "seo_sport_assoc" DISABLE TRIGGER ALL;ALTER TABLE "seo_sports" DISABLE TRIGGER ALL;ALTER TABLE "courses" DISABLE TRIGGER ALL;ALTER TABLE "tournament_matches" DISABLE TRIGGER ALL;ALTER TABLE "stat_types" DISABLE TRIGGER ALL;ALTER TABLE "athletes_draftboards" DISABLE TRIGGER ALL;ALTER TABLE "twilio_counters" DISABLE TRIGGER ALL;ALTER TABLE "user_sport_positions" DISABLE TRIGGER ALL;ALTER TABLE "schema_migrations" DISABLE TRIGGER ALL;ALTER TABLE "draftboards" DISABLE TRIGGER ALL;ALTER TABLE "drafted_athletes" DISABLE TRIGGER ALL;ALTER TABLE "event_followers" DISABLE TRIGGER ALL;ALTER TABLE "events" DISABLE TRIGGER ALL;ALTER TABLE "gpas" DISABLE TRIGGER ALL;ALTER TABLE "college_coach_contacts" DISABLE TRIGGER ALL;ALTER TABLE "stat_type_categories" DISABLE TRIGGER ALL;ALTER TABLE "contacts" DISABLE TRIGGER ALL;ALTER TABLE "tags" DISABLE TRIGGER ALL;ALTER TABLE "tasks" DISABLE TRIGGER ALL;ALTER TABLE "team_athletes" DISABLE TRIGGER ALL;ALTER TABLE "teams" DISABLE TRIGGER ALL;ALTER TABLE "tournament_match_locations" DISABLE TRIGGER ALL;ALTER TABLE "tournament_match_teams" DISABLE TRIGGER ALL;ALTER TABLE "schools" DISABLE TRIGGER ALL;ALTER TABLE "athlete_tasks" DISABLE TRIGGER ALL;ALTER TABLE "video_types" DISABLE TRIGGER ALL;ALTER TABLE "videos" DISABLE TRIGGER ALL;ALTER TABLE "walkthroughs" DISABLE TRIGGER ALL;ALTER TABLE "athlete_searches" DISABLE TRIGGER ALL;ALTER TABLE "tips" DISABLE TRIGGER ALL;ALTER TABLE "cities" DISABLE TRIGGER ALL;ALTER TABLE "taggings" DISABLE TRIGGER ALL;ALTER TABLE "tournament_pool_teams" DISABLE TRIGGER ALL;ALTER TABLE "athletes_primary_sport_positions" DISABLE TRIGGER ALL;ALTER TABLE "athletes_secondary_sport_positions" DISABLE TRIGGER ALL;ALTER TABLE "active_admin_comments" DISABLE TRIGGER ALL;ALTER TABLE "preferred_colleges" DISABLE TRIGGER ALL;ALTER TABLE "press_releases" DISABLE TRIGGER ALL;ALTER TABLE "user_sports" DISABLE TRIGGER ALL;ALTER TABLE "privacy_settings" DISABLE TRIGGER ALL;ALTER TABLE "referrals" DISABLE TRIGGER ALL;ALTER TABLE "teams_users" DISABLE TRIGGER ALL;ALTER TABLE "tip_categories" DISABLE TRIGGER ALL;ALTER TABLE "authorizations" DISABLE TRIGGER ALL;ALTER TABLE "promo_codes" DISABLE TRIGGER ALL;ALTER TABLE "friendly_id_slugs" DISABLE TRIGGER ALL;ALTER TABLE "roles_users" DISABLE TRIGGER ALL;ALTER TABLE "seo_college_sports" DISABLE TRIGGER ALL;ALTER TABLE "highlight_videos" DISABLE TRIGGER ALL;ALTER TABLE "leading_scorers" DISABLE TRIGGER ALL;ALTER TABLE "news_items" DISABLE TRIGGER ALL;ALTER TABLE "resources" DISABLE TRIGGER ALL;ALTER TABLE "recruit_statuses" DISABLE TRIGGER ALL;ALTER TABLE "referrers" DISABLE TRIGGER ALL;ALTER TABLE "sessions" DISABLE TRIGGER ALL;ALTER TABLE "social_actions" DISABLE TRIGGER ALL;ALTER TABLE "sport_positions" DISABLE TRIGGER ALL
   (337.6ms)  TRUNCATE TABLE "account_types", "external_services", "versions", "stats", "honor_types", "seo_colleges", "goals", "coach_contacts", "reports", "subscriptions", "colleges", "tournament_pools", "honors", "invitations", "contributorships", "activities", "athlete_notes", "kept_athletes", "tournament_teams", "tournaments", "user_types", "users", "subscriptions_users", "games", "coached_teams", "tip_topics", "future_games", "roles", "sports", "seo_random_strings", "seo_sport_assoc", "seo_sports", "courses", "tournament_matches", "stat_types", "athletes_draftboards", "twilio_counters", "user_sport_positions", "draftboards", "drafted_athletes", "event_followers", "events", "gpas", "college_coach_contacts", "stat_type_categories", "contacts", "tags", "tasks", "team_athletes", "teams", "tournament_match_locations", "tournament_match_teams", "schools", "athlete_tasks", "video_types", "videos", "walkthroughs", "athlete_searches", "tips", "cities", "taggings", "tournament_pool_teams", "athletes_primary_sport_positions", "athletes_secondary_sport_positions", "active_admin_comments", "preferred_colleges", "press_releases", "user_sports", "privacy_settings", "referrals", "teams_users", "tip_categories", "authorizations", "promo_codes", "friendly_id_slugs", "roles_users", "seo_college_sports", "highlight_videos", "leading_scorers", "news_items", "resources", "recruit_statuses", "referrers", "sessions", "social_actions", "sport_positions" RESTART IDENTITY CASCADE;
  Rendered events/_tabs.html.erb (351.5ms)
  Rendered events/edit.html.erb within layouts/application (372.1ms)
Completed 500 Internal Server Error in 831.3ms

Here is how database cleaner is configured in my spec_helper:
    config.before(:suite) do
      DatabaseCleaner.clean_with(:truncation)
    end

    config.before(:each) do
      DatabaseCleaner.strategy = :transaction
    end

    config.before(:each, js: true) do
      DatabaseCleaner.strategy = :truncation
    end

    config.before(:each) do
      DatabaseCleaner.start
    end

    config.after(:each) do
      DatabaseCleaner.clean
    end

Here is the spec:
describe "events#edit" do
    before(:each) do
      event_admin
      event
      event.update_attribute :event_admin_id, event_admin.id
      tournament
      tournament.update_attribute :event_id, event.id
      challonge_tournament = Challonge::Tournament.create(name: tournament.name, url: "recruittalk_#{tournament.slug.underscore}", tournament_type: tournament.elimination_type)
      tournament.update_attribute :challonge_id, challonge_tournament.id
      login_as(event_admin, :scope => :user)
      visit edit_event_path(id: tournament.event_id, tournament_id: tournament.id)
    end

    it "can edit event details" do
      within ".edit_event" do
        fill_in "event_name", with: "Edited event name"
      end
      js_click_button "Update Event"
      find_field("event_name").value.should eq "Edited event name"
    end

    it "can add event match locations" do
      find(:css, "a[href='#event_match_locations']").click
      within ".new_tournament_match_location" do
        fill_in "tournament_match_location_name", with: "Test location"
        fill_in "tournament_match_location_address", with: "123 Super St, Nashville, TN 37201"
      end
      js_click_button "Add Location"
      page.has_css?(".abracadabra")
    end
  end

I would post each of my factories involved in the spec and such, but as you can see from the above code, the 500 error has nothing to do with the database setup (or the database_cleaner setup considering I've followed every how-to there is). Hopefully someone can chime in.

I'm seeing this behavior too, but I have a little more information.  When the click happens, the page will re-render, but for me, poltergeist fails to successfully find elements that are indeed on the page (I did a save_and_open_{page,screenshot}). As a result, the check times out.  It only looks like a database cleaner issue, because when the spec fails, the cleaner is kicked off, and overwrite the real underlying failure.

Note that my version of this problem has nothing to do with the Click Failed error (https://github.com/teampoltergeist/poltergeist/issues/60).  Mine is a css find that is failing (but not failing in selenium).

@jeffdeville Try your code with Poltergeist 1.8.0 and if it still has issues open a new issue with enough details to debug/replicate


[Consensus] State Sync - Define Block By Block Interface

Objective
Update the interface in consensus/state_sync/state_sync.go so it is well-defined enough for the implementation to be picked up by anyone.
Origin Document
This is a follow-up to #125 per the comments & discussion in #342.
The list of changes this encompasses includes (but is not limited to):

Remove callback functions and use the application-specific bus for everything
Adding protobuf definitions
Splitting the different Run functions into separate modules
Updating terminology if applicable

Goals

Finalize the block-by-block state sync design
Make the interface clear enough such that it is implementable by anyone

Deliverable

[ ] Updated interface internal to the consensus module
[ ] Updated interface in the shared directory
[ ] Updated protobufs where applicable

Non-goals / Non-deliverables

Implement State Sync

General issue deliverables

[ ] Update the appropriate CHANGELOG
[ ] Update any relevant READMEs (local and/or global)
[ ] Update any relevant global documentation & references
[ ] If applicable, update the source code tree explanation
[ ] If applicable, add or update a state, sequence or flowchart diagram using mermaid

Testing Methodology

All tests: make test_all
LocalNet: verify a LocalNet is still functioning correctly by following the instructions at docs/development/README.md

Creator: @Olshansk

Follow up ticket: Implement Block by Block design (assign to Gokhan)

Have Gokhan review this ticket to give input/feedback on interface design

@gokutheengineer Just a heads up that I plan to tackle this ticket in the coming week.

Thanks @Olshansk please keep us informed about your progress to determine if the implementation will be feasible by 12/14 when iteration 6 begins, and if not, what the next best priority is.
We have https://github.com/pokt-network/pocket/issues/336 and you already said that you want to take the read.me.
What about handing off this research https://github.com/pokt-network/pocket/issues/283 to @gokutheengineer?

What about handing off this research https://github.com/pokt-network/pocket/issues/283 to @gokutheengineer?

I think understanding the utility context management requires a little more context (no pun intended) before @gokutheengineer should take it on.

We have https://github.com/pokt-network/pocket/issues/336 and you already said that you want to take the read.me.

@gokutheengineer will help with the consensus readme as he familiarizes himself with the consensus codebase.
There is also a side-task (no issue tracking it yet) that'll involve refactoring how the consensus module and pacemaker interact.

Thanks @Olshansk please keep us informed about your progress to determine if the implementation will be feasible by 12/14 when iteration 6 begins, and if not, what the next best priority is.

I want finish this in this sprint but do plan to start working on it. At the very least, we can define parts of it (e.g. advertising height and block) which can be implemented independently of the other state sync parts while those interfaces are being defined.
tl;dr Will focus on defining interfaces to advertise height + block first, which can be done in parallel as a separate issue.

At the very least, we can define parts of it (e.g. advertising height and block) which can be implemented independently of the other state sync parts while those interfaces are being defined.

Thanks @Olshansk! We have this WIP drafts planned for Iteration 7:

Do you want "request download blocks" moved to Iteration 6 and https://github.com/pokt-network/pocket/issues/336 removed? Or keep as is?

At the very least, we can define parts of it (e.g. advertising height and block) which can be implemented independently of the other state sync parts while those interfaces are being defined.

Thanks @Olshansk! We have this WIP drafts planned for Iteration 7:

Do you want "request download blocks" moved to Iteration 6 and #336 removed? Or keep as is?

Sorry for the late response. Design is up for review now (iteration 6): https://github.com/pokt-network/pocket/pull/413
In iteration 7, we'll only work on implementing the advertisement of block & height.


Add Indonesian Language

Please approve if you don't mind with my contribution :D .

Looks good 👌 Thank you for your contribution!

Your welcome 😁


Shrink thread pools used for WAL receivers and background tasks.

I noticed that the pageserver has a very large virtual memory size,
several GB, even though it doesn't actually use that much
memory. That's not much of a problem normally, but I hit it because I
wanted to run tests with a limited virtual memory size, by calling
setrlimit(RLIMIT_AS), but the highest limit you can set is 2 GB. I was
not able to start pageserver with a limit of 2 GB.
On Linux, each thread allocates 32 MB of virtual memory. I read this
on some random forum on the Internet, but unfortunately could not find
the source again now. Empirically, reducing the number of threads clearly
helps to bring down the virtual memory size.
Aside from the virtual memory usage, it seems excessive to launch 40
threads in both of those thread pools. The tokio default is to have as
many worker threads as there are CPU cores in the system. That seems
like a fine heuristic for us, too, so remove the explicit setting of
the pool size and rely on the default. Note that the GC and compaction
tasks are actually run with tokio spawn_blocking, so the threads that
are actually doing the work, and possibly waiting on I/O, are not
consuming threads from the thread pool. The WAL receiver work is done
in the tokio worker threads, but the WAL receivers are more CPU bound
so that seems OK.
Also remove the explicit maxinum on blocking tasks. I'm not sure what
the right value for that would be, or whether the value we set (100)
would be better than the tokio default (512). Since the value was
arbitrary, let's just rely on the tokio default for that, too.

What's a bit concerning is that worker_threads default is rather volatile:

The default value is the number of cores available to the system.

https://docs.rs/tokio/latest/tokio/runtime/struct.Builder.html#default
Could that cause some funny unexpected side effects ...

Hmm. Not sure what such side effects might be. One potential scenario I see is a deadlock, if you have two async tasks that run some blocking code - even though they probably shouldn't - so that the worker thread is blocked waiting for the other task, and the other task never runs because it's occupied by the blocked task. We had a deadlock like that long time ago (see commit 303a546abaaf8e0d8b19fb71f9b3a4b1ea401a0e). If we're worried about it, it would actually be better to force the number of worker threads to 1, to make such problems happen more easily in testing. Having more threads available makes it less likely to happen, hiding the bug. But we really shouldn't have such issues currently anyway.

and should we rather back it up with some smallest possible value we want to have for either runtime?

Sounds complicated. Unless we have a clear idea what the value should be, I'd like to just leave it at the default. Less code, and if tokio comes up with a different, presumably better, heuristic for the number of threads, we'll pick it up automatically.
I think the idea of having one thread per core is that you keep all cores busy, but at the same time, don't need to have the OS doing thread scheduling when the system is busy. We have more threads anyway, and two independent tokio thread pools too, so it doesn't quite work like that for us. But that's fine, let's just keep it simple for now.

In case of walreceiver, the main consumer of those woker_threads are etcd logic and related: all actual wal streaming tasks are spawned in a separate thread as a blocking task.

+1


Add search via voice option in app

Summary:
Voice Searching can be added for searching categories/images.
Link: https://developer.android.com/guide/topics/search/search-dialog#VoiceSearch

Done in #1716

Umm, This option isn't implemented in #1716

Yep you're correct, my bad. I think I initially thought it had because of the voiceSearchMode attribute (see https://github.com/commons-app/apps-android-commons/pull/1716/files#diff-aa7791505fe0795bce32c5176a32c707R42), but it doesn't seem to actually work yet.


multiple tabs

When you have multiple tabs open, multiple IPFS nodes with the same id are opened, which causes havoc.
Agreed steps (with @diasdavid) to solve this:

don't automatically start IPFS on boot
if IPFS lock file is present, ask user to close tabs if they're opened, and opt to continue
"continue" will start IPFS
when closing the browser tab, close IPFS, which removes the file

I experimented with wrapping peer-base with logux for use within an iframe (using nanostate for a state machine), and it worked out really, really well for multiple tabs.
https://github.com/jimpick/multiple-tabs-logux-peer-base/blob/master/index.js
Here is a demo that uses it (via the iframe):
https://bafybeid7pdb56figg7hv6uxyt4tnovb4zw54vmtqcu2oc6nkzz2mf6r2s4.lunet.v6z.me/

@jimpick That's super! 😍


Programmatic documentation for schema tables

https://dbdocs.io/
https://www.dbml.org/home/#what-can-i-do-now
https://github.com/osquery/osquery/blob/master/specs/darwin/account_policy_data.table

Got it working with DBML and https://dbdocs.io https://dbdocs.io/iasql/iasql. !!
I had to massage the pg_dump output by hand after a pg_dump --schema-only --no-owner with all modules installed and then running it though https://www.dbml.org/cli/#convert-a-sql-file-to-dbml.


[Feature Request]:Reread configs and TLS certificates on SIGHUP

It would be convinient to update node configuration without full restart.

I think we can only do that for TLS certificates as configuration contains some protocol definitions that couldn't be changed on synchronized node.


Logrotate

Hi,
Cam we have inotify support, so that when a file is rotated we pick up the new one? thanks

grok_exporter uses inotify already, so this should work (except you configure poll_interval_seconds, which explicitly disables inotify).

Strangely enough this working in my test but not the real prod logs

PS: on the graph above I restart grok_exporter at 4:30

So logrotate runs around 01:20, then grok_exporter doesn't get any new log lines until you restart it? This is strange, it should work. Is there any way to reproduce the error (like a test setup with the same OS and same filesystem)?

I have that accross all the servers -- 5 servers. All RHEL6.
Running logotate -f works...

I tried to reproduce it on a vagrant box but that did not work.

Also, I have that every day. it is consistent.
not sur how I can get logs??
Also I see that the fd (/proc/xx/fd) is not open for the new file.

So ..  works when I test it but not in prod. Maybe in prod the file is not created as fast as it should be? any idea?

It should not depend on how fast the logfile is created. After the logfile is moved, grok_exporter waits for an inotify IN_CREATE event, and then opens the file again. Maybe there is a reason that the event is not triggered? Are you using another filesystem in prod than in your tests, or a network fileystem on prod but a local filesystem on test?

Filesystems are ext4.
logrotate file:
/var/log/httpd/*log {
    rotate 30
    daily
    missingok
    dateext
    compress
    notifempty
    sharedscripts
    delaycompress
    postrotate
        /sbin/service httpd reload > /dev/null 2>/dev/null || true
    endscript
}

grok_exporter config:
global:
    config_version: 2
input:
    type: file
    path: /var/log/httpd/prd_request_ws_log
    readall: false
grok:
    patterns_dir: /var/lib/prometheus/grok_exporter
    additional_patterns:
    - 'APACHE_MESSAGE none'
metrics:
    - type: histogram
      name: nippin_http_requests_duration_microseconds
      help: Number of http requests
      buckets: [1000000, 3000000, 5000000]
      value: '{{.response_microsecond}}'
      match: '%{SYSLOG5424SD} %{IP} %{NOTSPACE} %{NOTSPACE} %{QS} %{QS} %{NUMBER:status} %{NUMBER:size} %{NUMBER:response_microsecond}'
      labels:
        environment: 'prod'
        status: '{{.status}}'
server:
    host: <IP_ADDRESS>
    port: 9144

@fstab is it possible that it is a bug with readall?

So...
Nov 02 03:37:01 /var/log/httpd/ CREATE logrotate_temp.8BKUr2
Nov 02 03:37:01 /var/log/httpd/ OPEN logrotate_temp.8BKUr2
Nov 02 03:37:01 /var/log/httpd/ ATTRIB logrotate_temp.8BKUr2
Nov 02 03:37:01 /var/log/httpd/ MOVED_FROM logrotate_temp.8BKUr2
Nov 02 03:37:01 /var/log/httpd/ MOVED_TO dev_updates_error_log


EDS: Ignore pods in deleting status

This will not allow new requests to arrive at the deleting pods.

@hzxuzhonghu: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-multicluster-k8s-tests_istio
dbee9812af9cc6244077280de7d337913e05137f
link
/test integ-multicluster-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Yes, i need to add a test.

@hzxuzhonghu: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-pilot-k8s-tests_istio
84416c0c2d257c67acfd6f163f173481d37d1953
link
/test integ-pilot-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@hzxuzhonghu: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-pilot-k8s-tests_istio
84416c0c2d257c67acfd6f163f173481d37d1953
link
/test integ-pilot-k8s-tests_istio

integ-security-k8s-tests_istio
84416c0c2d257c67acfd6f163f173481d37d1953
link
/test integ-security-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@hzxuzhonghu: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-security-k8s-tests_istio
84416c0c2d257c67acfd6f163f173481d37d1953
link
/test integ-security-k8s-tests_istio

integ-pilot-k8s-tests_istio
84416c0c2d257c67acfd6f163f173481d37d1953
link
/test integ-pilot-k8s-tests_istio

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest


[SPARK-19009][DOC] Add streaming rest api doc

What changes were proposed in this pull request?
add streaming rest api doc
related to pr #16253
cc @saturday-shi @srowen
How was this patch tested?

Test build #70628 has started for PR 16414 at commit c4acccc.

Test build #70628 has finished for PR 16414 at commit c4acccc.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
case class CatalogStatistics(
abstract class AggregateFunction extends Expression
trait TypedAggregateExpression extends AggregateFunction
case class SimpleTypedAggregateExpression(
case class ComplexTypedAggregateExpression(

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/70628/
Test PASSed.

Test build #70694 has started for PR 16414 at commit 234cbf0.

Test build #70694 has finished for PR 16414 at commit 234cbf0.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/70694/
Test PASSed.

cc @srowen

I don't know about this change, so can't really review it. It's always best to ping people who wrote the original PR you're following on. @vanzin or @saturday-shi ?

cc @vanzin @saturday-shi

@vanzin Take a review again please!

Test build #70850 has started for PR 16414 at commit ebbac0f.

Test build #70850 has finished for PR 16414 at commit ebbac0f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/70850/
Test PASSed.

Merged build finished. Test PASSed.

Merging to master.


introduce maybePure

This actually already exists as the more general justZ function (since MaybeT is an instance of MonadPlus)

Ah! I was looking in the wrong module. Thanks!  :)


route :any doesn't catch everything in a namespace

    namespace :super do
      get :ping do
        pong = params[:pong] || 'pong'
        { ping: "#{pong.upcase}!!!" }
      end

      route :any, '*path' do
        { path: params[:path] }
      end
    end

GET /super/ping works but GET /super errors. However, I am able to do POST /super/ping and have it get picked up by the route :any. I would expect that nothing to /super would error.

Yes, this seems wrong. Try writing a test that reproduces this, and lets fix it.

See: https://github.com/wagenet/grape-on-rails/commit/11f1e5828a90202693000239dab460fcac5a334c
curl http://localhost:3000/api/super - Fails, expected {"path":"fail"}.
curl http://localhost:3000/api/super/ping - Returns {"ping":"PONG!!!"} as expected.
curl http://localhost:3000/api/super/ping/fail - Returns {"path":"ping/fail"}. I think this is expected.
curl http://localhost:3000/api/super/ping -X POST -d "pong=bar" - Returns {"path":"ping"}. Expected since only get is defined.

Can you try to turn this into a Grape test. The demo is definitely good, but if we want to fix it we need a proper spec here.

Understood, I'll see what I can do. I've actually never written a real Grape app yet :) Just been working on writing a plugin for Skylight (https://skylight.io).

See #1089.


use edsCliet instead of adsClient building the StreamEndpoints

use edsCliet instead of adsClient building the StreamEndpoints.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: idouba
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: andraxylia
If they are not already assigned, you can assign the PR to them by writing /assign @andraxylia in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

Hi @idouba. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

/assign @rshriram

/ok-to-test

Typo.
/lgtm

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: idouba, ymesika
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: rshriram
If they are not already assigned, you can assign the PR to them by writing /assign @rshriram in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@idouba: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
dd8dc11945aa6bd9c6e0aca10a2b98d902af7da5
link
/test e2e-simple

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@idouba: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-simpleTests.sh
dd8dc11945aa6bd9c6e0aca10a2b98d902af7da5
link
/test e2e-simple

prow/e2e-mixer-no_auth.sh
dd8dc11945aa6bd9c6e0aca10a2b98d902af7da5
link
/test e2e-mixer-no_auth

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

You need to remove the project from your personal CircleCI account as the tests are currently running there instead of within the Istio workspace.

@idouba: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
dd8dc11945aa6bd9c6e0aca10a2b98d902af7da5
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

CircleCI tests are not following the /retest commands.
Can you merge master and push just to trigger CircleCI retest in Istio's workspace this time?

New changes are detected. LGTM label has been removed.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: ymesika
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: rshriram
If they are not already assigned, you can assign the PR to them by writing /assign @rshriram in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/lgtm

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: ymesika
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: rshriram
If they are not already assigned, you can assign the PR to them by writing /assign @rshriram in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

New changes are detected. LGTM label has been removed.

racetest  failed again, after I trigger another CI by another merge.
I cannot understand why renaming a variable cause such CI problem. @ymesika

You can ignore the racetest failure.
/lgtm

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: ymesika
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: rshriram
If they are not already assigned, you can assign the PR to them by writing /assign @rshriram in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pilot/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

And multicluster e2e also failed..


eksctl plan cluster upgrade command reports incorrect current versions

What happened:
when running eksctl anywhere upgrade plan cluster -f eksa-cluster.yaml the returned current versions are incorrect
What you expected to happen:
eksctl anywhere upgrade plan cluster -f eksa-cluster.yaml should report correct current and next versions
How to reproduce it (as minimally and precisely as possible):
run eksctl anywhere upgrade plan cluster -f eksa-cluster.yaml twice and you will see the 2nd run will report the same old versions under current
Anything else we need to know?:
$ eksctl anywhere upgrade plan cluster -f eksa-cluster.yaml
Warning: VSphereDatacenterConfig configured in insecure mode
Checking new release availability...
NAME                 CURRENT VERSION   NEXT VERSION
EKS-A                v0.10.1+c59d2cc   v0.11.2+cd46e1d
Flux                 v0.29.4+e670ae4   v0.31.3+5738265
cert-manager         v1.7.2+d4fa7e0    v1.8.2+543ab1d
cluster-api          v1.1.3+d32ac08    v1.2.0+172e2ab
kubeadm              v1.1.3+973f8a2    v1.2.0+525dbd6
vsphere              v1.1.1+628bf01    v1.1.1+2fc04d0
kubeadm              v1.1.3+9094d93    v1.2.0+115b0d5
etcdadm-bootstrap    v1.0.3+bfb8d15    v1.0.5+77e4d45
etcdadm-controller   v1.0.1+842bc86    v1.0.4+05b4294
cilium               v1.10.11-eksa.2   v1.10.14-eksa.1
$ flux version
flux: v0.31.5
helm-controller: v0.22.2-eks-a-16
kustomize-controller: v0.26.3-eks-a-16
notification-controller: v0.24.1-eks-a-16
source-controller: v0.25.9-eks-a-16

Environment:

EKS Anywhere Release: 0.11.2
EKS Distro Release: 1.23

Thanks for raising this issue, will check in with the CLI team on this.

Hi @echel0n, when you are referring to the current versions, are you referring to the flux binary that is installed on your local machine? We use different dependencies to install flux, packaged within a docker container, so the versions that we use may not match the ones that are located on your local machine.

@vivek-koppuru I have done the upgrade command several times and those values under the current column never change and remain the same,
Here is the flux version from gotk-components.yaml
---
# This manifest was generated by flux. DO NOT EDIT.
# Flux Version: v0.31.3
# Components: source-controller,kustomize-controller,helm-controller,notification-controller
apiVersion: v1
kind: Namespace
metadata:
  labels:
    app.kubernetes.io/instance: flux-system
    app.kubernetes.io/part-of: flux
    app.kubernetes.io/version: v0.31.3
    pod-security.kubernetes.io/warn: restricted
    pod-security.kubernetes.io/warn-version: latest
  name: flux-system

Oh I see what you are saying, after running an upgrade it still shows the wrong current versions. Let me do some investigation on that.

@echel0n A couple of things I might need from you:

Can you run kubectl get cluster <cluster-name> -o yaml and see what name is listed under the bundlesRef?
Then, can you run 'kubectl get bundles  -o yamland see what version is listed underflux`?
Do you have GitOps enabled? If so, is there a bundles ref specified in the repository that might be overriding what is in the cluster? I am wondering if this is a bug that you are facing which I can try to reproduce as well as currently without GitOps enabled it seems like I am not able to repro it on my end.

Let's see what this information gets us to see where the issue might be.

kubectl get cluster prod -o yaml
spec:
  bundlesRef:
    apiVersion: anywhere.eks.amazonaws.com/v1alpha1
    name: bundles-12

$ kubectl get bundles bundles-12 -o yaml
Error from server (NotFound): bundles.anywhere.eks.amazonaws.com "bundles-12" not found

bundlesRef in our git repo is same as what is in our cluster, bundles-12

Any chance you would be able to provide me the yaml for what bundles-12 should contain so I can re-create it, if that is the issue here as it appears to be missing.

I think it is under the eksa-system namespace, you should already have it

Well this is interesting, I see other bundles under that namespace, so why am I still on bundles-12 when bundles-16 is the latest?
$ kubectl get bundles -n eksa-system
NAME         AGE
bundles-12   37d
bundles-14   22d
bundles-16   5d17h

bundles-12
    flux:
      helmController:
        arch:
        - amd64
        description: Container image for helm-controller image
        imageDigest: sha256:4b7e5046cc1e3ff18278b179ded1d6adc5172f33827162f5cc7bcf3608746871
        name: helm-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/helm-controller:v0.20.1-eks-a-12
      kustomizeController:
        arch:
        - amd64
        description: Container image for kustomize-controller image
        imageDigest: sha256:136d4866cebcd3f9d2a4d357cea0650511f6dc74c706266986fd2a814a17bf20
        name: kustomize-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/kustomize-controller:v0.24.3-eks-a-12
      notificationController:
        arch:
        - amd64
        description: Container image for notification-controller image
        imageDigest: sha256:30c7ec3d1f181225b8e3ebd725bc0018b39b95af35f5dc5f351a0aaf233cc9c5
        name: notification-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/notification-controller:v0.23.4-eks-a-12
      sourceController:
        arch:
        - amd64
        description: Container image for source-controller image
        imageDigest: sha256:c13491f03c03bb4805ce98cb62c6e9e28654a83f7f3b1321be0df0581d80009f
        name: source-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/source-controller:v0.24.2-eks-a-12
      version: v0.29.4+e670ae4

bundles-16
    flux:
      helmController:
        arch:
        - amd64
        - arm64
        description: Container image for helm-controller image
        imageDigest: sha256:623fc35cb4cb66e01030646e4223ad1b1963d3197ece0617c12d3006261b5e25
        name: helm-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/helm-controller:v0.22.2-eks-a-16
      kustomizeController:
        arch:
        - amd64
        - arm64
        description: Container image for kustomize-controller image
        imageDigest: sha256:c2e45dc2879bb1d5e9a001beff9e87953aae9a357d4309db204d87774fc3cc8b
        name: kustomize-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/kustomize-controller:v0.26.3-eks-a-16
      notificationController:
        arch:
        - amd64
        - arm64
        description: Container image for notification-controller image
        imageDigest: sha256:72fde2cd2a8f0df7cee37650300e87a9248b8d93686cffbbf61a8449aa274711
        name: notification-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/notification-controller:v0.24.1-eks-a-16
      sourceController:
        arch:
        - amd64
        - arm64
        description: Container image for source-controller image
        imageDigest: sha256:788a2d2580869c7ec7ba6cf5d8dbf3938c5892ce13ea16a052ea2759a5e4f031
        name: source-controller
        os: linux
        uri: public.ecr.aws/eks-anywhere/fluxcd/source-controller:v0.25.9-eks-a-16
      version: v0.31.3+5738265

Right, which is why I am wondering whether you have GitOps enabled or not. I am wondering if something is overriding the values.

I do have GitOps enabled, but I perform the cluster upgrade from cli, I've reviewed commit history specifically for the eksa-cluster.yaml and the bundles-12 ref has never been updated or changed for any commits marked "Update commit of cluster configuration; generated by EKS-A CLI", so it appears eksctl is not updating the bundles ref at all

What does the yaml spec look like in the repo?

Below is contents from the cluster yaml in the repo, it does include a bundleRef as well
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: Cluster
metadata:
  name: prod
  namespace: default
spec:
  bundlesRef:
    apiVersion: anywhere.eks.amazonaws.com/v1alpha1
    name: bundles-12
    namespace: eksa-system
  clusterNetwork:
    cniConfig:
      cilium: {}
    pods:
      cidrBlocks:
      - <IP_ADDRESS>/16
    services:
      cidrBlocks:
      - <IP_ADDRESS>/12
  controlPlaneConfiguration:
    count: 2
    endpoint:
      host: <IP_ADDRESS>
    machineGroupRef:
      kind: VSphereMachineConfig
      name: prod-cp
  datacenterRef:
    kind: VSphereDatacenterConfig
    name: prod
  externalEtcdConfiguration:
    count: 3
    machineGroupRef:
      kind: VSphereMachineConfig
      name: prod-etcd
  gitOpsRef:
    kind: FluxConfig
    name: gitlab
  identityProviderRefs:
  - kind: OIDCConfig
    name: prod
  kubernetesVersion: "1.23"
  managementCluster:
    name: prod
  workerNodeGroupConfigurations:
  - count: 4
    machineGroupRef:
      kind: VSphereMachineConfig
      name: prod
    name: md-0

---
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: VSphereDatacenterConfig
metadata:
  name: prod
  namespace: default
spec:
  datacenter: Dark Systems Datacenter
  insecure: true
  network: /Dark Systems Datacenter/network/DSwitch-10GB-EKS
  server: removed
  thumbprint: ""

---
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: VSphereMachineConfig
metadata:
  annotations:
    anywhere.eks.amazonaws.com/control-plane: "true"
  name: prod-cp
  namespace: default
spec:
  datastore: /Dark Systems Datacenter/datastore/vsanDatastore
  diskGiB: 25
  folder: /Dark Systems Datacenter/vm/EKS Anywhere
  memoryMiB: 8192
  numCPUs: 2
  osFamily: bottlerocket
  resourcePool: /Dark Systems Datacenter/host/Cluster/Resources
  template: /Dark Systems Datacenter/vm/Templates/bottlerocket-vmware-k8s-1.23-x86_64-1.9.0-159e4ced
  users:
  - name: ec2-user
    sshAuthorizedKeys:
    - ""

---
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: VSphereMachineConfig
metadata:
  annotations:
    anywhere.eks.amazonaws.com/etcd: "true"
  name: prod-etcd
  namespace: default
spec:
  datastore: /Dark Systems Datacenter/datastore/vsanDatastore
  diskGiB: 25
  folder: /Dark Systems Datacenter/vm/EKS Anywhere
  memoryMiB: 8192
  numCPUs: 2
  osFamily: bottlerocket
  resourcePool: /Dark Systems Datacenter/host/Cluster/Resources
  template: /Dark Systems Datacenter/vm/Templates/bottlerocket-vmware-k8s-1.23-x86_64-1.9.0-159e4ced
  users:
  - name: ec2-user
    sshAuthorizedKeys:
    - ""

---
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: VSphereMachineConfig
metadata:
  name: prod
  namespace: default
spec:
  datastore: /Dark Systems Datacenter/datastore/vsanDatastore
  diskGiB: 50
  folder: /Dark Systems Datacenter/vm/EKS Anywhere
  memoryMiB: 24576
  numCPUs: 16
  osFamily: bottlerocket
  resourcePool: /Dark Systems Datacenter/host/Cluster/Resources
  template: /Dark Systems Datacenter/vm/Templates/bottlerocket-vmware-k8s-1.23-x86_64-1.9.0-159e4ced
  users:
  - name: ec2-user
    sshAuthorizedKeys:
    - ""

---
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: FluxConfig
metadata:
  name: gitlab
  namespace: default
spec:
  branch: master
  clusterConfigPath: clusters/prod
  git:
    repositoryUrl: removed
    sshKeyAlgorithm: ecdsa
  systemNamespace: flux-system

---
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: OIDCConfig
metadata:
  name: prod
  namespace: default
spec:
  clientId: removed
  groupsClaim: groups
  issuerUrl: removed
  requiredClaims:
  - {}
  usernameClaim: email

---

Yea that is what I am suspecting the issue is. If you update the gitops spec to use the latest bundle ref, I think it should work as expected, and the CLI upgrade plan should reflect the right values. However, I am suspecting that this is a bug because this file should be updated as part of upgrade, which maybe we aren't doing in some cases.

ok, I can confirm that updating the bundleRef to latest available bundle resolved the issue for it displaying up to date components, however, I do believe there still is a bug that prevents this from being updated so request we leave this ticket open till that is sorted out, thanks!
$ eksctl anywhere upgrade plan cluster -f eksa-cluster.yaml
Warning: VSphereDatacenterConfig configured in insecure mode
Checking new release availability...
All the components are up to date with the latest versions

Yes this will be something that we will prioritize. Thank you for raising this issue!

just to confirm, having the bundleRef in my cluster yaml file that I use to upgrade the cluster from cli, that wouldn't cause issues right ?

It shouldn't cause issues as for the CLI we try to retrieve the latest bundle available to that CLI version.

Hey @echel0n, I tried to run this locally but I am not able to repro the error. I run create cluster with a v0.10.1 binary, then ran upgrade plan with v0.11.2 and saw the similar versions to you. Then ran upgrade and it updated the file in github for me, and I see the proper output. Did you see any errors from the first time you ran upgrade when you noticed nothing happening? I will try running with vsphere next.
Before upgrade:
[ec2-user@ip-172-31-8-141 ~]$ eksctl anywhere upgrade plan cluster -f docker.yaml
Checking Github Access Token permissions
✅ Github personal access token has the required repo permissions
Checking new release availability...
NAME                 CURRENT VERSION   NEXT VERSION
EKS-A                v0.10.2+df9011f   v0.11.2+cd46e1d
Flux                 v0.29.4+e7f77a9   v0.31.3+5738265
cert-manager         v1.7.2+322f4aa    v1.8.2+543ab1d
cluster-api          v1.1.3+552494c    v1.2.0+172e2ab
kubeadm              v1.1.3+a8e46f5    v1.2.0+525dbd6
docker               v1.1.3+c7d24d7    v1.2.0+12e373a
kubeadm              v1.1.3+6dc25b3    v1.2.0+115b0d5
etcdadm-bootstrap    v1.0.3+db15860    v1.0.5+77e4d45
etcdadm-controller   v1.0.1+a367e7e    v1.0.4+05b4294
cilium               v1.10.11-eksa.2   v1.10.14-eksa.1

After upgrade:
[ec2-user@ip-172-31-8-141 ~]$ eksctl anywhere upgrade plan cluster -f docker.yaml
Checking Github Access Token permissions
✅ Github personal access token has the required repo permissions
Checking new release availability...
All the components are up to date with the latest versions

yaml file in github after upgrade:
apiVersion: anywhere.eks.amazonaws.com/v1alpha1
kind: Cluster
metadata:
  name: docker-test
  namespace: default
spec:
  bundlesRef:
    apiVersion: anywhere.eks.amazonaws.com/v1alpha1
    name: bundles-16
    namespace: eksa-system
  clusterNetwork:
    cniConfig:
      cilium: {}
    pods:
      cidrBlocks:
      - <IP_ADDRESS>/16
    services:
      cidrBlocks:
      - <IP_ADDRESS>/12
  controlPlaneConfiguration:
    count: 1
  datacenterRef:
    kind: DockerDatacenterConfig
    name: docker-test
  externalEtcdConfiguration:
    count: 1
  gitOpsRef:
    kind: GitOpsConfig
    name: docker-test
  kubernetesVersion: "1.22"
  managementCluster:
    name: docker-test
  workerNodeGroupConfigurations:
  - count: 1
    name: md-0

just 5 days ago I had this issue below
https://github.com/aws/eks-anywhere/issues/3318

Unfortunately not, however, I started out on k8s 1.21 and upgraded to 1.22 without issue, it wasn't till I tried to upgrade to 1.23 that the previous issue happened, but as you can see its never updated the bundleRef so maybe your be able to reproduce this issue testing on vSphere ?

I was able to try vsphere too and it works as expected. Is there any way you are able to replicate this again on your end?

This currently is a production cluster and its using all the resources currently available in the vSphere cluster, so at this moment I can not till I add more RAM to the servers, what I can do however, when v1.24 is released, I can run the cluster upgrade with -v6 and then reply back here, any idea on when that release will happen ?

If you are able to spin up another test cluster, we do have the older releases available here under assets that should allow you to setup your $PATH variable to have the right eksctl-anywhere binary picked up. Let me know if you need help with that here!
Releases: https://github.com/aws/eks-anywhere/releases
v0.10.1: https://github.com/aws/eks-anywhere/releases/tag/v0.10.1

1.24 is slated to release in the next minor release or shortly after, but no specific timeline other than in the upcoming month or so.

@echel0n Just wanted to follow up with you on this to see if you got a chance to try with an older version of the binary to simulate an upgrade.

I've ordered more RAM that won't be in till closer end of month, only then will I have enough resources to spin-up a secondary test cluster

Got it, I would say to try again with the latest v0.11.3 version we released without changing the cluster spec file, which should upgrade just the components of your cluster. Let's see if you run into that issue, if you are willing to that is.

Yes, that will work, how do you want me to run the command ?

I would say to run eksctl anywhere upgrade plan cluster and confirm that the versions are changing, and then to run eksctl anywhere upgrade cluster to see if the bundle ref changes and gets uploaded correctly to your repo. Run it with -v=6 to see if we can see some more logs. Or -v=9 if you don't mind the verbosity.

@vivek-koppuru just wanted to confirm that I was able to upgrade the cluster without issue this time, its now showing on bundles-17
thank you for all your help!

@echel0n that's great, but also it sucks that you actually saw this as an issue.


latest update breaking lora loading

Hi,
the latest update broke inferencing with some LoRA, like: https://huggingface.co/XLabs-AI/flux-RealismLora
error message:
Downloading LoRA weights from - HF path: XLabs-AI/flux-RealismLora Traceback (most recent call last): File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/cog/server/worker.py", line 349, in _predict result = predict(**payload) File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 116, in decorate_context return func(*args, **kwargs) File "/src/predict.py", line 266, in predict pipe = pipe.to("cuda") File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/diffusers/pipelines/pipeline_utils.py", line 435, in to module.to(device, dtype) File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1174, in to return self._apply(convert) File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/torch/nn/modules/module.py", line 780, in _apply module._apply(fn) File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/torch/nn/modules/module.py", line 780, in _apply module._apply(fn) File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/torch/nn/modules/module.py", line 780, in _apply module._apply(fn) [Previous line repeated 3 more times] File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/torch/nn/modules/module.py", line 805, in _apply param_applied = fn(param) File "/root/.pyenv/versions/3.10.15/lib/python3.10/site-packages/torch/nn/modules/module.py", line 1167, in convert raise NotImplementedError( NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty() instead of torch.nn.Module.to() when moving module from meta to a different device.

@lucataco could you help to check this issue?
Your replicate API is broken now with previously working LoRA.
Thanks!

Hey there! Xlabs-AI trained their LoRAs differently so they never worked out of the box like other Huggingface LoRAs. Therefore, I recommend you use their Comfy Converted LoRAs


Update ui-class.md

@pranavkm @Rick-Anderson These changes would clarify that multiple file structures can be used and give an example of one alternative.
Fixes #7550

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: A-Gaston sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@A-Gaston  can you review my commits?

@Rick-Anderson I think you edited it well. It's more concise and professional.

@A-Gaston  much appreciated for bringing this to our attention and creating a PR to address the issue.


Eye tracking support with external camera

Describe the problem
The eye tracking needs to be simulated via different key presses.
Describe the solution you'd like
It would be great to be able to add an external camera to simulate the eye tracking in unity.

@DominicBoettger, do you have any other details on what you'd like to see here? i.e. is this external camera like a real image-camera (which we then maybe do some sort of ML/stuff to figure out what you're looking at on screen?) Or is this a request for maybe some 6dof controller toggle that will enable some "eye gaze pointer thing?"

@wiwei I think it's not needed to have a special ML stuff. It would be sufficient to use eye tracking hardware like TOBII eye tracker or something similar.

Closing as stale.


RealtimeStreaming's Windows Desktop server crashes when I try to stop streamming (winrt::hresult_error)

Hello,
Whenever I try to stop streaming a video from DesktopServerApp the application crashes with a winrt::hresult_error exception.

Looking through the stack trace, this is the call responsible for the crash:

It crashes on a co_await in line 86 (within method winrt::fire_and_forget Connection::RunSocketLoop() in Connection.cpp:73)
     84        // Read in the batch of data (header & payload)
     85        Buffer headerBuffer(sizeof(PayloadHeader));
---> 86        co_await inputStream.ReadAsync(headerBuffer, headerBuffer.Capacity(), InputStreamOptions::None);
     87
     88        HRESULT hr = OnHeaderReceived(headerBuffer);

This seems to be an easy-to-handle problem as the exception is being thrown due to the socket closing.
Exception thrown at 0x00007FF88D8AA839 (KernelBase.dll) in DesktopServerApp.exe: WinRT originate error - 0x800703E3 : 'The I/O operation has been aborted because of either a thread exit or an application request.'.
Exception thrown at 0x00007FF88D8AA839 in DesktopServerApp.exe: Microsoft C++ exception: winrt::hresult_error at memory location 0x000000B89E3FF250

Rookie mistake? This doesn't seem to happen when I don't debug


Custom datamanager + tyro error

Hi there!
I asked a question in discord channel, I want to just follow it up here, my question was following:

I want to implement new datamodules but don't want to include them in the directory of nerfstudio, but rather want to keep them externally. I copied the train.py code, and add my own configs to method_configs dictionary. I call tyro.cli with modified AnnotatedBaseConfigUnion, but tyro gives AssertionError. I realized I have to modify datamanagers.py and my new dataparserconfig but I want to avoid modifying any code in nerfstudio. What is the correct approach to achieve this?

Here is my code:

import pathlib
import sys

current_path = pathlib.Path(__file__).parent.resolve()
sys.path.append(str(current_path.parent / "dependencies/nerfstudio/scripts"))
from scripts.train import main

from dataclasses import dataclass, field
from pathlib import Path
from typing import Type

import tyro
# from nerfstudio.cameras.camera_optimizers import CameraOptimizerConfig
from nerfstudio.configs.base_config import Config
from nerfstudio.data.datamanagers import VanillaDataManagerConfig
from nerfstudio.data.dataparsers.blender_dataparser import BlenderDataParserConfig, Blender
# from nerfstudio.data.dataparsers.friends_dataparser import FriendsDataParserConfig
# from nerfstudio.data.dataparsers.nerfstudio_dataparser import NerfstudioDataParserConfig
from nerfstudio.engine.optimizers import AdamOptimizerConfig, RAdamOptimizerConfig
from nerfstudio.models.base_model import VanillaModelConfig
from nerfstudio.models.vanilla_nerf import NeRFModel
from nerfstudio.pipelines.base_pipeline import VanillaPipelineConfig
# from nerfstudio.pipelines.dynamic_batch import DynamicBatchPipelineConfig
from nerfstudio.configs.config_utils import convert_markup_to_ansi
from nerfstudio.configs.method_configs import method_configs, descriptions
from nerfstudio.data.dataparsers.base_dataparser import DataParserConfig

@dataclass
class TempDataParserConfig(DataParserConfig):
    _target: Type = field(default_factory=lambda: Blender)
    """target class to instantiate"""
    data: Path = Path("data/blender/lego")
    """Directory specifying location of data."""
    scale_factor: float = 1.0
    """How much to scale the camera origins by."""
    alpha_color: str = "white"
    """alpha color of background"""

def entrypoint():
    """Entrypoint for use with pyproject scripts."""
    # Choose a base configuration and override values.
    tyro.extras.set_accent_color("bright_yellow")

    # Add hyperlight models to the method configs and descriptions
    descriptions["temp-model"] = "Temp-model"
    method_configs["temp-model"] = Config(
        method_name="vanilla-nerf",
        pipeline=VanillaPipelineConfig(
            datamanager=VanillaDataManagerConfig(
                dataparser=TempDataParserConfig(),
                # dataparser=BlenderDataParserConfig(),
                train_num_images_to_sample_from = 8,
                train_num_times_to_repeat_images = 4,
                eval_num_images_to_sample_from = 2,
                eval_num_times_to_repeat_images = 1,
            ),
            model=VanillaModelConfig(_target=NeRFModel),
        ),
        optimizers={
            "fields": {
                "optimizer": RAdamOptimizerConfig(lr=5e-4, eps=1e-08),
                "scheduler": None,
            }
        },
    )

    AnnotatedBaseConfigUnion = tyro.conf.SuppressFixed[  # Don't show unparseable (fixed) arguments in helptext.
    tyro.extras.subcommand_type_from_defaults(defaults=method_configs, descriptions=descriptions)
    ]
    main(
        tyro.cli(
            AnnotatedBaseConfigUnion,
            description=convert_markup_to_ansi(__doc__),
        )
    )

if __name__ == "__main__":
    entrypoint()

Here is the error it produces:
Traceback (most recent call last):
  File "/host/scripts/train_temp.py", line 83, in <module>
    entrypoint()
  File "/host/scripts/train_temp.py", line 75, in entrypoint
    tyro.cli(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_cli.py", line 125, in cli
    _cli_impl(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_cli.py", line 275, in _cli_impl
    parser_definition = _parsers.ParserSpecification.from_callable_or_type(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_parsers.py", line 99, in from_callable_or_type
    subparsers_attempt = SubparsersSpecification.from_field(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_parsers.py", line 383, in from_field
    subparser = ParserSpecification.from_callable_or_type(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_parsers.py", line 129, in from_callable_or_type
    nested_parser = ParserSpecification.from_callable_or_type(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_parsers.py", line 129, in from_callable_or_type
    nested_parser = ParserSpecification.from_callable_or_type(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_parsers.py", line 99, in from_callable_or_type
    subparsers_attempt = SubparsersSpecification.from_field(
  File "/opt/conda/lib/python3.9/site-packages/tyro/_parsers.py", line 357, in from_field
    assert default_name is not None
AssertionError

Would appreciate your help to achieve such functionality

As a shorter hack, replacing the last few lines of your script with this will also work:
if __name__ == "__main__":
    from nerfstudio.data.datamanagers import base_datamanager
    from typing import Any
    base_datamanager.AnnotatedDataParserUnion = Any

    entrypoint()

I also encountered the same error when I just wanted to change the default value of nerfstudio built-in dataparser. I was just wondering if we could make type checking more flexible by only checking types instead of types with specific default values?

Same issue here.
Instead of directly modifying the default values defined in XXXDataparser or XXXDatamanager, one usually defines a method_configs instance overwriting the default with arbitrary value.
What's weird is this approach works with nerfstudio's datamanager, but not the dataparser (same as @jianglongye )

Thanks for flagging @jingyibo123  and sorry for missing your comment @jianglongye!
I'm currently swamped can revisit this after March 10~15ish, if you don't find a fix before then and are still interested in this do you mind pinging me again?
One option that might work is to replace this error:
https://github.com/brentyi/tyro/blob/47a211aaa0649f58892934522ac2e0649453bb58/tyro/_parsers.py#L375-L381
with a warning, and then append the type of the provided default to the parsed union type.
There's likely also something we can do upstream in nerfstudio to loosen the static type.

The latest release replaces this assertion error with a warning. If you're still having problems with this feel free to re-open!

Confirmed the exception/error is gone ~
Thanks


Consider moving build machines to their own subscriptions

Fallout from https://dnceng.visualstudio.com/internal/_workitems/edit/5102/

Release Note Category

[ ] Feature changes/additions
[ ] Bug fixes
[ ] Internal Infrastructure Improvements

Release Note Description

/cc @ilyas1974

Can someone clarify what this work is?
I don't see anything in the RCA about moving build machines to different subscriptions as part of the action items .

Will reassess if this catastrophe happens again :)


Supported chains

Please see https://github.com/pokt-foundation/wallet/pull/423 and https://github.com/pokt-foundation/wallet/issues/422


Add an alphabetical index menu and size setting

This menu is too long. It's hard to find the icon you need.
Add an alphabetical index menu that can help us get what we need quickly
add icon/
         A/
           Apple
           ASUS
           Azure
           ...
         B/
           Bob
           BOSS
           ...
         ...

And I think a default size setting (Default scale size) should be added, just like the official created object

These features have been released in v9.8.0, thanks for the suggestions.


[Formatter] Configurable option for inline statement length.

I would like to be able to configure the length of an inline statement before it is split across several lines.
For a query which has a very short subquery, it is much easier to read when it is just on one line.
Current Formatting:
select field0,
    (
        select column3
        from table2
        where column2 = 'qwe'
    ) as field1,
    (
        select column1
        from tableG
    ) as field2,
    (
        select column2
        from tableH
    ) as field3
from table1

Requested Feature:
Example: maxInlineLength: 160
select field0,
    (select column3 from table2 where column2 = 'qwe') as field1,
    (select column1 from tableG) as field2,
    (select column2 from tableH) as field3
from table1

This would make format more flexable and code more readable. DataGrip has option to set wrap lengh like this too.

Is there any update on this, i.e. are there plans to implement this?

No current plans, but if someone wants to have a go at implementing this then we'll look at the PR.


[ko] Update namespaces.md to align with en site

Delete content that doesn't exist in the English version.

Thank you for the reporting! It is due to updating from old translation to sync with updated English content - https://github.com/kubernetes/website/issues/30000
@serithemage  Would you sign in CLA? See https://kubernetes.io/ko/docs/contribute/new-content/#sign-the-cla regarding the context of why CLA is required.

Hi @serithemage ,
Please sign the EasyCLA
https://github.com/kubernetes/community/blob/master/CLA.md
If this PR has no traction, a PR Wrangler may close this PR

Hey there! @serithemage, looks like you haven't signed the CLA yet. Could I please have you do that? https://github.com/kubernetes/community/blob/master/CLA.md

Hi Angel,
I'm sorry for the delay in responding. I completed the requested CLA.
Please Check it.
Thank you.
2022년 4월 28일 (목) 오후 11:14, Jim Angel @.***>님이 작성:

Hey there! @serithemage https://github.com/serithemage, looks like you
haven't signed the CLA yet. Could I please have you do that?
https://github.com/kubernetes/community/blob/master/CLA.md
—
Reply to this email directly, view it on GitHub
https://github.com/kubernetes/website/pull/31734#issuecomment-1112259660,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA2GZSEI2YK7LTLHKP7I2YTVHKMLVANCNFSM5OK7ULJA
.
You are receiving this because you were mentioned.Message ID:
@.***>

영문 링크: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/#:~:text=not a requirement.-,kube-node-lease,-This namespace holds
감사합니다!
/lgtm
/approve


Jesse: Blacklist Gologica

Jesse requests the blacklist of the keyword Gologica. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

Gologica has been seen in 15 true positives, 3 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ


Updated Cassandra unit test library. Test-at were failing

Description
Updated Cassandra unit test library. Test-at were failing
Reviewer
@antonioalf
Test
All passed.
Coverage
No changes
Scalastyle
No info

YEAH +1


Update version

Codecov Report

Merging #92 (0cb1b15) into main (8aa733e) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #92   +/-   ##
=======================================
  Coverage   66.12%   66.12%
=======================================
  Files          21       21
  Lines        1833     1833
=======================================
  Hits         1212     1212
  Misses        458      458
  Partials      163      163

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8aa733e...0cb1b15. Read the comment docs.


Add info callback and fix typos

https://github.com/ant-media/Ant-Media-Server/issues/4000

What needs to be done to get this merged in? I'd love to be able to use this plugin. Thanks!

Thank you @hikeeba ,
We've not reviewed it yet. I hope we can schedule to review in this week.


remove full platform archive from assembly maven artifact

The open-metadata-assemblies maven artifact currently contains the full server platform archive -- these are unnecessary, and indeed undesirable
a) Our docker images pull required files from jfrog
b) within an org it is expected that they will build locally
It is not an intent to ship a binary of ready to run code.
Therefore this large jar can be removed
https://odpi.jfrog.io/odpi/egeria-snapshot/org/odpi/egeria/open-metadata-assemblies/1.1-SNAPSHOT/
This should be done for 1.1 as well as master (compliance)

This is applied to 1.1 & master by reverting ad593e50fca6553a89c75ea6173922e15faa2b4c where the archive was added (to support docker builds - no longer needed)

See ec0aec43bbcfa98920bf850e023a7351d78976a8 (1.1) & f7bb03c10f89fcd4ef4d9cacff3481e307a72ed5 (master)

Assuming we are still assembling the server image?


feat/refactor and tests of check

closes #2
closes #3
closes #10
closes #11

Just a few comments if you can squash WIP commits and remove unused commented code.


JAVA-2280: Driver should be resilient to null rpc_address in peers table

I think that after that fix there is still a problem when one from:
data_center, host_id, rack, tokens contain null - according to 3.x implementation of it
https://datastax-oss.atlassian.net/browse/JAVA-852 those also should be excluded (here we are only filtering out if rpc_address is null)

Is there any way you could separate that better, at least in different commits?

Done, although I frankly don't think that this PR was that hard to review. We've seen much worse :-)

LGTM.

JAVA-2280: Driver should be resilient to invalid peer info: does not accurately describe the fix. Suggestion: "Ignore peer rows with missing host id or RPC address" (same for changelog entry).

Take into account rpc_port column (system.local for C* 4.0+): not true anymore after you squash the follow-up commit.

My bad, the message is still applicable.


Upgrade to Vue 3

Are there plans to upgrade this bot to work with Vue 3?

@davykiash Actually, I've already been developing Vue 3 version in the next branch, but currently it's just a scaffolding.
I will try to keep going but I think it can't be soon because I have less time at this moment.

hi @juzser , any update on a Vue3 version of this?

@noahmercado Sorry mate, I think it cannot be soon. I'm stuck with another UI Library.
But hopefully I can restart the work on this repo on about QII, 2024.

any update on a Vue3 ?

I am currently on a Hackathon and I wanted to use this component of yours but since you didn't upgrade it to Vue3 I couldn't this is Soo unfortunate I hope u upgrade it soon

@fatimazehra1 @Ala404 Thank you for your interest in this package. I will consider continuing the work on this for Vue 3.
I'm just struggling with the project structure, so it's currently stuck at the first steps.


Convert an IRI path to URI before setting as NGINX header

Filepath can contains non-ASCII characters, so we need to convert to a valid URI before setting it as X-Accel-Redirec NGINX header because only ASCII characters are supported.
References,

https://docs.djangoproject.com/en/1.11/ref/unicode/#uri-and-iri-handling
https://github.com/benoitc/gunicorn/issues/1448

Closes https://github.com/rtfd/readthedocs-corporate/issues/409

NOTE: I didn't test this locally because I don't have the setup needed (gunicorn + nginx) properly configured. So, we will need to be careful when deploying this into production.

One example of what this fixes is,
In [1]: from django.utils.encoding import iri_to_uri

In [2]: iri_to_uri('camión.html')
Out[2]: 'cami%C3%B3n.html'

@humitos ^ wrong PR I guess? :laughing:

Nope. It was failing, but I re-triggered the test and it passed :man_shrugging:

Is it worth adding a test here? I assume we already have tests for the send file header that should pass, but if not, that would be good to verify before/after this patch.

Is it worth adding a test here?

Yes.

I assume we already have tests for the send file header that should pass

We did have tests, but of course none of them tested that Unicode was supported. I forget 100% to add a test here :disappointed:
I just pushed a test for this and it's working :smile:


Encapsulate all tabular read/write operations into tabulator

Overview
Implementation of reading and writing tabular data is a error prone process. Especially writing in Python. It could be encapsulated to base library and re-used in many places (now almost the whole stack writes csv manually).
Tasks

[ ] ensure all readings thru tabulator
[ ] https://github.com/frictionlessdata/tabulator-py/issues/36
[ ] update all higher level libraries and tools for writing using tabulator
[ ] mimic this approach in other language implementations where tabulator is available

I don't see why we need this issue here, when we have this here https://github.com/frictionlessdata/tabulator-py/issues/36

I suppose the last usage of raw csv.write will be replaced here - https://github.com/frictionlessdata/datapackage-py/issues/15. So closing the meta issue.


onSet not working

When picking a date the onSet dosent work. It works only on pressing the clear button...

Pls refer: https://github.com/Dogfalo/materialize/issues/870 if that is what you are looking for


Implement rfc7301

Fixes #408
/cc @cohosh @wkrp

If the code is copied from golang/go, https://github.com/golang/go/blob/master/LICENSE must be copied to this repository according to the license.
I'm not sure it is acceptable. @Sean-Der @daenney  What do you think?

I didn't mean that literally.  There's only one function and a comment copied.  If there's a licensing issue, I can rewrite them.

Seems from https://github.com/golang/go/blob/2580d0e08d5e9f979b943758d3c49877fb2324cb/src/crypto/tls/handshake_server.go#L278-L304
I believe it is long enough to be protected by the copyright law of most of the countries, and ways to comply with the golang/go's license would be including the golang/go's license statement or rewriting as a new code.
(am not a copyright or legal professional and not 100% sure)

I rewrote the necessary lines and force pushed

Seems from https://github.com/golang/go/blob/2580d0e08d5e9f979b943758d3c49877fb2324cb/src/crypto/tls/handshake_server.go#L278-L304
I believe it is long enough to be protected by the copyright law of most of the countries, and ways to comply with the golang/go's license would be including the golang/go's license statement or rewriting as a new code. (am not a copyright or legal professional and not 100% sure)

We've resolved this, by essentially dropping the whole HTTP fallback handling code. We never supported ALPN before so the conditions that code were necessary for never occurred, and HTTP 1.1/2.0 doesn't use UDP for a transport anyway.

I rebased, split out a few commits and tried to address the linting issues CI is complaining about

The metadata failure seems odd considering there is no body,
Fix typo in ServerName comment

-------------------------------------------------
The preceding commit message is invalid
it failed 'Separate subject from body with a blank line' of the following checks

Your first commit, the one that fixes the typo, doesn't have a body. We should allow commits without a body, but it currently trips up the linter.

Added the suggested test case and commit message bodies for those commits to appease the metadata linter.  I'll look into the missing coverage in a bit.

I added a test for the case where the protocol lists don't intersect; that should cover a few more lines.  I guess having the client receive the ServerHello (and invalid variations of it) would cover the rest.  Do you want that?

I added a test for the case where the protocol lists don't intersect; that should cover a few more lines. I guess having the client receive the ServerHello (and invalid variations of it) would cover the rest. Do you want that?

If it's not too big of a hassle then yeah, that would be awesome. That said, we're basically maintaining coverage now with this patch so I'm good with merging it either way.

I guess having the client receive the ServerHello (and invalid variations of it) would cover the rest.

Ok, I added a test for that.  The tests feel a bit overloaded and could use some refactoring but hopefully it's a good enough start.

The error Error: File is not gofumpt-ed (gofumpt) seems transient

Mmm indeed. Don't worry about it, I'll fix that up and merge it after.

Mmm indeed. Don't worry about it, I'll fix that up and merge it after.

I amended the first commit with the changes necessary for the main branch, since that commit is already about formatting, and then fixed the complaint on the third patch that I introduced

This is a really amazing PR @arlolra. Really appreciate the high quality code and you cleaning up other stuff you have noticed :)

Tagged dtls/v2 v2.1.1 and webrtc/v3 v3.1.18


Add ability to set halt state on DS1307

This PR adds ability to change halt state on DS1307 using halt() method.

I noticed this PR has a failed check. It is clang-format complaining that RTC_DS1307::halt() does not follow the standard indentation style of this library, which is two spaces per level. You may fix it by hand or run:
clang-format -i src/RTC_DS1307.cpp

@edgar-bonet Thank you. I've fixed it.


isort seems to ignore my known_first_party

I don't know if it's a problem with my config file or something else: (VERSION 4.2.5)
here is my simplified project structure
- mylib
    - __init__.py
    - a.py
    - b.py
- .isort.cfg

here is .isort.cfg
[settings]
forced_separate=django
known_first_party=mylib

and here is a.py
import uuid
from mylib import something
from rest_framework.response import Response
from django.db import models

when I run isort on a.py (command: isort a.py) here is the result
import uuid

from mylib import something
from rest_framework.response import Response

from django.db import models

but I expect something like this:
import uuid

from rest_framework.response import Response

from django.db import models

from mylib import something

is there problem with my config file or it's an issue with isort?

it seems my answer was in readme

@aliva can you be more specific

link is to section Custom Sections and Ordering and I think it's clear, in short define your sections like this:
known_django=django
known_pandas=pandas,numpy

and use a line like this to tell sort order:
sections=FUTURE,STDLIB,DJANGO,THIRDPARTY,PANDAS,FIRSTPARTY,LOCALFOLDER

@aliva I was referring more about FIRSTPARTY than a different section. My issue is that my main app package is being ignored and grouped with thirdparty.


Implement Deref for terminals.

Also, instead of using a type parameter, use Deref::Target to store the
Write type. IMHO, this should be an associated type on Terminal itself
however, that would cause a circular dependency.
[breaking-change]

r? @huonw
(rust_highfive has picked a reviewer for you, use r? to override)

r? @alexcrichton

I think that conventionally this may not be the best use of Deref, for example the Buf{Reader,Writer} types in the standard library don't implement Deref. Implementing Deref is quite powerful as it gives you a whole suite of new methods as well as access to features like deref coercions, not all of which may always be necessary.
I do think, though, that the T type parameter may want to be an associated type.

In general this library hasn't really been reviewed for quality in the same way the standard library has, so I'd also believe that there are many vectors for improvement!

Fair point.


[Fix] Add ignore_key in voc dataset to fix error

Motivation
VOCDataset has DATASET_TYPE key in metainfo which is different in VOC2007 and VOC2012. This will get an error when using ConcatDataset. Hence, we add an ignore_key in ConcatDataset to fix this error.
Modification
add an ignore_key in ConcatDataset to fix this error.
This PR should be merged after https://github.com/open-mmlab/mmengine/pull/556  has been merged in MMEngine.
Before merging this PR, https://github.com/open-mmlab/mmdetection/pull/8847 can be temporarily fixed VOC ConcatDataset error.

The mmengine_minimum_version should be updated to 0.3.0 to avoid bc breaking


Using scylla-ccm without a local Scylla build

How do I use scylla-ccm without building a local Scylla and passing a path to build/release/scylla?
I tried using the docker image flag, but it fails with a timeout error:
(virenv) [username@usernamelap]~/code/test/scylla-ccm$ ccm create docker_test -n 3 --scylla --docker-image=scylladb/scylla
Current cluster is now: docker_test
(virenv) [username@usernamelap]~/code/test/scylla-ccm$ ccm status
Cluster: 'docker_test'
----------------------
node1: DOWN (Not initialized)
node2: DOWN (Not initialized)
node3: DOWN (Not initialized)
(virenv) [username@usernamelap]~/code/test/scylla-ccm$ ccm start
Traceback (most recent call last):
  File "/home/username/code/test/scylla-ccm/virenv/bin/ccm", line 4, in <module>
    __import__('pkg_resources').run_script('ccm==2.0.5', 'ccm')
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/pkg_resources/__init__.py", line 672, in run_script
    self.require(requires)[0].run_script(script_name, ns)
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/pkg_resources/__init__.py", line 1472, in run_script
    exec(code, namespace, namespace)
  File "/home/username/code/test/scylla-ccm/virenv/lib/python3.11/site-packages/ccm-2.0.5-py3.11.egg/EGG-INFO/scripts/ccm", line 75, in <module>
    cmd.run()
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/ccm-2.0.5-py3.11.egg/ccmlib/cmds/cluster_cmds.py", line 687, in run
    if self.cluster.start(no_wait=self.options.no_wait,
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/ccm-2.0.5-py3.11.egg/ccmlib/scylla_cluster.py", line 160, in start
    started = self.start_nodes(**kwargs)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/ccm-2.0.5-py3.11.egg/ccmlib/scylla_cluster.py", line 128, in start_nodes
    p = node.start(update_pid=False, jvm_args=jvm_args,
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/ccm-2.0.5-py3.11.egg/ccmlib/scylla_node.py", line 642, in start
    scylla_process = self._start_scylla(args, marks, update_pid,
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/ccm-2.0.5-py3.11.egg/ccmlib/scylla_docker_cluster.py", line 322, in _start_scylla
    self.create_docker(args)
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/ccm-2.0.5-py3.11.egg/ccmlib/scylla_docker_cluster.py", line 183, in create_docker
    self.watch_log_for("supervisord started with", from_mark=0, timeout=10)
  File "/home/username/code/test/scylla-ccm/virenv/lib64/python3.11/site-packages/ccm-2.0.5-py3.11.egg/ccmlib/node.py", line 492, in watch_log_for
    raise TimeoutError(time.strftime("%d %b %Y %H:%M:%S", time.gmtime()) + " [" + self.name + "] Missing: " + str(
ccmlib.node.TimeoutError: 14 Mar 2023 16:37:34 [node1] Missing: ['supervisord started with']:
Emulate Docker CLI using podman. Create /etc/conta.....
See system.log for remainder

ccm create/start --help doesn't have anything about timeouts
I tried it on next and branch-5.2.
I also saw that there's an option to specify a package .tar.gz (maybe even using a link without downloading (?)), but where do I get these packages from?
I can open a PR to add instructions to the README, but I would need some pointers.

the docker based ccm, isn't really working it was part of 2020 hackathon, but it soon after was broken. and it's not operational since then
you can checkout the files in scripts directory, for examples on how to pull different versions
and update to the README would be great, we mostly update the information in dtest (the main user of ccm), and the docs/readme in this repo wasn't updated since it was forked...

Ahh looking through the issues I see it's possible to do it like this:
ccm create vtest2 -n 3 --scylla -v release:2022.2.1

I will open a PR to add this to the README

Nice. I should one day add such a feature also to scylla.git's test/cql-pytest/run, to run a chosen Scylla version in docker instead of self-compiled build/*/scylla.

Anyhow we are using this in testing for a long long while now, i.e. calling a version by name and finding the artifact needed (docker, RPM, DEB, AMI, or unified relocatable package) it's a bit tricky and can change from time to time, directory structures and filenames, but you have a reference for it CCM :\

Good idea, getting a "relocatable package" (tar of executable and libraries) is much better than a full-blown docker with a lot of other stuff (like JMX) that I don't want.


[Gluten][Spark] Support to pushdown the expression projection of the join kyes to the child wholestage

(you don't have to strictly follow this form)

Support to pushdown the expression projection of the join kyes to the child wholestage.

A clear and concise description of what is the intended usage scenario is.

Describe the solution you'd like

A clear and concise description of what you want to happen.

Describe alternatives you've considered

A clear and concise description of any alternative solutions or features you've considered.

Additional context

Add any other context or screenshots about the feature request here.

We need more detailed information, otherwise no one can help us.


Blog post don't appear in pages

[ ] This is a question about using the theme.
[x] I believe this to be a bug with the theme --- not Jekyll, GitHub Pages or one of the bundled plugins.
[ ] This is a feature request.
[ ] I have updated all gems with bundle update.
[ ] I have tested locally with bundle exec jekyll build.

Environment informations

Minimal Mistakes version: 3.4.8
github-pages or jekyll gem version:
Operating system: Working directly in GitHub

Expected behavior

Blog posts should be fully supported on a page
Steps to reproduce the behavior
I created a page: https://github.com/saguiitay/saguiitay.github.io/blob/master/_pages/blog/index.html
I've also configured `_config.yml' (https://github.com/saguiitay/saguiitay.github.io/blob/master/_config.yml) as follow:

url                      : http://www.saguiitay.com
baseurl                  :
permalink: /:year/:month/:day/:title/
paginate: 5 # amount of posts to show
paginate_path: /blog/page:num/

However, the create page doesn't include any posts: http://www.saguiitay.com/blog/

Not a bug, it's related to how you have Jekyll setup. You're using site.paginator twice and Jekyll Paginate only allows one instance of it.
You're using it on your home page at <site root>/index.html and also in _pages/blog/index.html. I'd suggest changing your home page to:
{% for post in site.posts limit:3 %}
  {% include archive-single.html %}
{% endfor %}

which will show the 3 most recent posts (which you're essentially doing now), and then on your blog page all of the posts will show with pagination.
And then move _pages/blog/index.html to <site root>/blog/index.html. For whatever reason those need to be in the root and not stuffed into a _pages folder.
After that your blog page should appear as you want.

You also have some layout issues with pages in your root folder posts.html and tags.html. They're calling for layout: post-index which doesn't exist. Check the errors Jekyll produces on bundle exec jekyll build for more info.

I've fixed the pagination in the homepage, and moved the blog/index.html page as explained. This indeed results in the posts appearing in the blog page.
However, the posts are always displaying the last page:

Also, the links in the paginator are incorrect - they point to (for example) http://www.saguiitay.com/page22/ instead of http://www.saguiitay.com/blog/page22/ even though I've configured paginate_path to /blog/page:num/

I'd file an issue on jekyll-paginate as it's related to that plugin and not the theme. It has been deprecated though. My understanding is it has some problems.
I've never tried to paginate a non-homepage before so that could explain the strange behavior.

FWIW, I've just tried to achieve something similar, i.e., a site using a splash page at /, and the paginated archive at /blog/, and it works with the following slightly weird setup.

<site-root>/index.html as per default, but added permalink: /blog/ in YAML metadata
_layouts/home.html as per default
_pages/home.md with layout: splash and permalink: /

Works like a spell, so either this is just a less semantic way of achieving this, or the paginate plugin has been fixed.