
SlowburnAZ
Ash Framework: Chapter 1
I’m trying to reset the database and reseed… at some point shortly after the “Defining A Read Action” where you add the “primary? true”, I get the following error when trying to reseed with “mix seed”:
** (Ash.Error.Invalid)
Invalid Error
* Tunez.Music.Artist.read had no matching bulk strategy that could be used.
Requested strategies: [:stream]
Could not use `:stream`: could not stream the query
Could not use `:atomic_batches`: Not in requested strategies
Could not use `:atomic`: Not in requested strategies
Non stream reason:
Action Tunez.Music.Artist.read does not support streaming with one of [:keyset].
There are two ways to handle this.
1.) Use the `allow_stream_with` or `stream_with` options to control what strategies are allowed.
2.) Enable the respective required pagination type on the action read, for example:
# allow keyset
pagination keyset?: true, required?: false
# allow offset
pagination offset?: true, required?: false
# allow both
pagination offset?: true, keyset?: true, required?: false
(ash 3.5.24) lib/ash/error/invalid/no_matching_bulk_strategy.ex:4: Ash.Error.Invalid.NoMatchingBulkStrategy.exception/1
(ash 3.5.24) lib/ash/actions/destroy/bulk.ex:184: Ash.Actions.Destroy.Bulk.run/6
(ash 3.5.24) lib/ash.ex:3421: Ash.bulk_destroy!/4
priv/repo/seeds/01-artists.exs:16: (file)
(elixir 1.18.4) src/elixir_compiler.erl:77: :elixir_compiler.dispatch/4
(elixir 1.18.4) src/elixir_compiler.erl:52: :elixir_compiler.compile/4
(elixir 1.18.4) src/elixir_compiler.erl:39: :elixir_compiler.maybe_fast_compile/2
(elixir 1.18.4) src/elixir_lexical.erl:13: :elixir_lexical.run/3
(elixir 1.18.4) src/elixir_compiler.erl:17: :elixir_compiler.quoted/3
(elixir 1.18.4) lib/module/parallel_checker.ex:120: Module.ParallelChecker.verify/1
(elixir 1.18.4) lib/code.ex:1525: Code.require_file/2
(mix 1.18.4) lib/mix/tasks/run.ex:148: Mix.Tasks.Run.run/5
(mix 1.18.4) lib/mix/tasks/run.ex:87: Mix.Tasks.Run.run/1
(mix 1.18.4) lib/mix/task.ex:495: anonymous fn/3 in Mix.Task.run_task/5
(mix 1.18.4) lib/mix/task.ex:561: Mix.Task.run_alias/6
(mix 1.18.4) lib/mix/cli.ex:107: Mix.CLI.run_task/2
/usr/bin/mix:2: (file)
(elixir 1.18.4) src/elixir_compiler.erl:77: :elixir_compiler.dispatch/4
(elixir 1.18.4) src/elixir_compiler.erl:52: :elixir_compiler.compile/4
(ash 3.5.24) lib/ash.ex:3441: Ash.bulk_destroy!/4
priv/repo/seeds/01-artists.exs:16: (file)
(elixir 1.18.4) lib/code.ex:1525: Code.require_file/2
(mix 1.18.4) lib/mix/tasks/run.ex:148: Mix.Tasks.Run.run/5
(mix 1.18.4) lib/mix/tasks/run.ex:87: Mix.Tasks.Run.run/1
(mix 1.18.4) lib/mix/task.ex:495: anonymous fn/3 in Mix.Task.run_task/5
(mix 1.18.4) lib/mix/task.ex:561: Mix.Task.run_alias/6
(mix 1.18.4) lib/mix/cli.ex:107: Mix.CLI.run_task/2
/usr/bin/mix:2: (file)
Any suggestions on how to get around this?
First Post!

snitz70
in the priv/repo/seeds/01-artists.exs file, I had to remove the strategy: :stream for the the ASH.bulk_destroy line. This will make it default to :atomic. According to the docs, Atomic bulk destroys are used when the subject of the bulk destroy is a query, which this is.
Popular Pragmatic Bookshelf topics

page 37
ANTLRInputStream input = new ANTLRInputStream(is);
as of ANTLR 4 .8 should be:
CharStream stream = CharStreams.fromStream(i...
New

Python Testing With Pytest - Chapter 2, warnings for “unregistered custom marks”
While running the smoke tests in Chapter 2, I get these...
New

Many tasks_proj/tests directories exist in chapters 2, 3, 5 that have tests that use the custom markers smoke and get, which are not decl...
New

Hi everyone!
There is an error on the page 71 in the book “Programming machine learning from coding to depp learning” P. Perrotta. You c...
New

First, the code resources:
Page 237: rumbl_umbrella/apps/rumbl/mix.exs
Note: That this file is missing.
Page 238: rumbl_umbrella/app...
New

I ran this command after installing the sample application:
$ cards add do something --owner Brian
And got a file not found error:
Fil...
New

I think I might have found a problem involving SwitchCompat, thumbTint, and trackTint.
As entered, the SwitchCompat changes color to hol...
New

“The ProductLive.Index template calls a helper function, live_component/3, that in turn calls on the modal component. ”
Excerpt From: Br...
New

When running tox for the first time, I got the following error:
ERROR: InterpreterNotFound: python3.10
I realised that I was running ...
New

The markup used to display the uploaded image results in a Phoenix.LiveView.HTMLTokenizer.ParseError error.
lib/pento_web/live/product_l...
New
Other popular topics

No chair. I have a standing desk.
This post was split into a dedicated thread from our thread about chairs :slight_smile:
New

I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New

API 4
Path:
/user/following/
Method:
GET
Description:
Returns the list of all names of people whom the user follows
Response
[
{ ...
New

Saw this on TikTok of all places! :lol:
Anyone heard of them before?
Lite:
New

We’ve talked about his book briefly here but it is quickly becoming obsolete - so he’s decided to create a series of 7 podcasts, the firs...
New

Build efficient applications that exploit the unique benefits of a pure functional language, learning from an engineer who uses Haskell t...
New

Author Spotlight
Erin Dees
@undees
Welcome to our new author spotlight! We had the pleasure of chatting with Erin Dees, co-author of ...
New

Inside our android webview app, we are trying to paste the copied content from another app eg (notes) using navigator.clipboard.readtext ...
New

If you’re getting errors like this:
psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New

Background
Lately I am in a quest to find a good quality TTS ai generation tool to run locally in order to create audio for some videos I...
New
Categories:
Sub Categories:
Popular Portals
- /elixir
- /rust
- /wasm
- /ruby
- /erlang
- /phoenix
- /keyboards
- /rails
- /js
- /python
- /security
- /go
- /swift
- /vim
- /clojure
- /emacs
- /haskell
- /java
- /onivim
- /typescript
- /svelte
- /crystal
- /kotlin
- /c-plus-plus
- /tailwind
- /gleam
- /react
- /ocaml
- /elm
- /flutter
- /vscode
- /ash
- /html
- /opensuse
- /centos
- /php
- /deepseek
- /zig
- /scala
- /lisp
- /textmate
- /sublime-text
- /nixos
- /debian
- /react-native
- /agda
- /kubuntu
- /arch-linux
- /django
- /revery
- /ubuntu
- /spring
- /manjaro
- /nodejs
- /diversity
- /lua
- /julia
- /slackware
- /c
- /neovim