ArtVentureX / sd-webui-agent-scheduler

605 stars 61 forks source link

ADetailer parameters missing in some queued tasks #187

Open coderCK2 opened 7 months ago

coderCK2 commented 7 months ago

I noticed that my ADetailer parameters were missing from a bunch of images that I created via the scheduler, but I have not figured out the pattern. I unfortunately discovered this when I ran 21 jobs last night (totaling 756 images), and 18 of those jobs were run without the ADetailer parameters that were populated and enabled in the txt2img tab. A notable fact is that the three jobs that did include the ADetailer parameters were the first three jobs; the remaining 18 all ran without including them. The fact that the parameters were not included is verifiable in three ways:

I thought I had discovered the pattern, as I think most (if not all) of the 18 problematic jobs were scheduled after I had already started the queue; however, after trying to reproduce the issue by intentionally scheduling new jobs while current jobs were running, the ADetailer parameters were still included. My test was done with much smaller batches though (four images each, as opposed to 36 images in each of the 21 previous jobs), and only with four jobs.

Does anyone have any idea why this may have happened?

QuietNoise commented 7 months ago

TLDR: I discovered this issue today. I believe I've found steps to replicate the bug. The ADetailer parameters will be missing if you enqueue task with ADetailer enabled on a fresh browser UI (i.e. after reloading browser window or after starting new webgui session) without running regular Generate with ADetails enabled first.

Steps to reproduce:

  1. Reload browser page with your webgui or start a fresh session.
  2. Set task parameters with ADetailer enabled.
  3. Ensuring you don't press Generate anytime during the process press Enqueue.
  4. Observe generations missing ADetailer step

Workaround: If you run on fresh session or you reload the browser page with wegui ensure to run a regular Generate with ADetailer enabled at least once before enqueuing new tasks. After that ADetailer settings should be included in newly queued tasks. Also it appears that changing some parameters (i.e. enabling second tab) of ADetailer afterwards does not require running Generate anymore as new tasks will pick up the changes. However, this might not be true for all ADetailer settings as some people are missing new ADetailer settings as reported here: https://github.com/ArtVentureX/sd-webui-agent-scheduler/issues/120

coderCK2 commented 7 months ago

@QuietNoise Thank you for this info. With your findings, I was able to reproduce the issue, and also verify the workaround. While trying to reproduce the issue, I also set my instance of A1111 into a death spiral; I ended up having to remove every extension one by one, and finally it began working once they were all disabled. I added each one back, and it's still working 🤷🏻‍♂️