mirror of
https://github.com/go-vikunja/vikunja.git
synced 2026-08-31 12:45:51 -05:00
createTask redid the same work for every task of a batch: fetching the project, the doer, the project's views, each kanban view's default bucket, the highest task index, and updating the project's last-updated timestamp. A 20 task batch measured 207 statements against 22 for a single create, and 100 sequential updates of one projects row serialize every other writer touching that project. createTasks now does the n tasks case and createTask is the n=1 call into it, so the contract of a single create is unchanged. Project duplication, the other caller creating tasks in a loop, goes through it as well. Claude-Session: https://claude.ai/code/session_01GR9u1EFvq994jqGoeJqYSX