Dwarf Fortress Bug Tracker - Dwarf Fortress
View Issue Details
0006045Dwarf FortressDwarf Mode -- Transport/Haulingpublic2012-06-20 23:162012-06-21 06:03
normalmajorhave not tried
PCWindows XPSP2
0006045: Hauling jobs take entire bin of cloth/thread to pick up a single cloth/thread, triggering multiple "can't find item" job cancels
This is really, really annoying when I desperately need a working textile industry to keep my dwarves from spiralling into despair over rotting clothes.

While having limited cloth and thread resources (enough to fit in one bin), when a new thread is produced a hauling dwarf will take the bin that has all the thread in it (including thread tied to current jobs, which dwarves want to come get), and go and get a single thread from a farmer's workshop.

Picking up the bin cancels all jobs that needed the thread, as they can no longer find the thread. This results in a lot of "no thread available" cancellations, despite the fortress having plenty of thread, but all in the barrel being dragged everywhere.

The same happens for cloth. Clothiers have many jobs to use cloth in a bin for their tasks. Then a loom finishes weaving and produces a piece of cloth. Haulers will charge over and take that bin so they can retrieve the one piece of cloth. This makes the bin invisible to the clothiers, so they all cancel their cloth related jobs.

The textile industry can still work, but only amidst managed item requests (so they cannot be cancelled) and many many pages of cancellation announcements.
1) Have only enough cloth for one bin, and only enough thread for one bin (worse if the cloth and thread are all in the same bin).

2) Setup farmer's workshops and looms and clothiers to produce and use cloth and thread.

3) Watch as haulers take the entire stock of cloth/thread in a bin to go retrieve a single additional cloth/thread, causing mass job cancellations in your textile industry, making you wonder why on earth no one can find any cloth/thread when your stocks list indicates you have plenty.

4) Don't blame the hospitals automatically.
I may have reduced the severity of it in my fortress.

I set up two stockpiles each for cloth, thread and plant material.

One stockpile with bins/barrels, and a larger one without, for each of the materials above.

I set up links for the stockpiles and workshops:

No barrels plant stockpile - give to - barrels plant stockpile.
Barrels plant stockpile - only take from links
Barrels plant stockpile - give to - a group of farmer's workshops

No bins thread stockpile - take from - a group of farmer's workshops
No bins thread stockpile - give to - bins thread stockpile
Bins thread stockpile - only take from links
Bins thread stockpile - give to - a group of looms

No bins cloth stockpile - take from - a group of looms
No bins cloth stockpile - give to - bins cloth stockpile
Bins cloth stockpile - only take from links
Bins cloth stockpile - give to - a group of clothier's workshops
bin, cancel, cloth, job cancellations, stockpile, thread
duplicate of 0005992resolved Toady One Conflict between hauling jobs (i.e. filling containers) and other jobs using items in those containers 
Issue History
2012-06-20 23:16AxelNew Issue
2012-06-20 23:18AxelIssue Monitored: Axel
2012-06-20 23:19AxelTag Attached: bin
2012-06-20 23:19AxelTag Attached: cancel
2012-06-20 23:19AxelTag Attached: cloth
2012-06-20 23:19AxelTag Attached: job cancellations
2012-06-20 23:19AxelTag Attached: stockpile
2012-06-20 23:19AxelTag Attached: thread
2012-06-20 23:22AxelNote Added: 0023071
2012-06-21 06:03FootkerchiefRelationship addedduplicate of 0005992
2012-06-21 06:03FootkerchiefStatusnew => resolved
2012-06-21 06:03FootkerchiefResolutionopen => duplicate
2012-06-21 06:03FootkerchiefAssigned To => Footkerchief

2012-06-20 23:22   
This sort of issue probably applies to ANY job that needs things from a container (seeds for example).

I've not looked into it yet but it probably explains my 100 page novel of job cancellations for "can't find plump helmet spawn". Imagine a dwarf grabbing the only container of seeds to go collect one seed, while 10 other dwarves were looking to get a seed from that container to go plant in their farms. Then imagine that happening every season for ever.