It seems that the number of slots allocated should be equal to the parallelism.  

And the number of task managers should be equal to parallelism/(slot per TM).  

But the application below is not like this.

The topology is as below.
[![enter image description here](https://i.stack.imgur.com/vCZ3V.png)](https://i.stack.imgur.com/vCZ3V.png)

The parallelism is set to 140, and one slot per TM.  

But only 115 slots are allocated.
[![enter image description here](https://i.stack.imgur.com/0mZRF.png)](https://i.stack.imgur.com/0mZRF.png)

And the application throwed an exception after several minutes.
[![enter image description here](https://i.stack.imgur.com/IPaUE.png)](https://i.stack.imgur.com/IPaUE.png)

The exception told that "Could not allocate all requires slots within timeout of 300000 ms. Slots required: 470, slots allocated: 388".

There are several questions here.

1. "Slots required: 470", the calculation of this number seems to be regardless of slot share. Why?
2. "slots allocated: 388", in fact, I only have 195 slots left, and the number of allocated slots are 115. Why?
3. The parallelism is set to 140, but only 115 slots are allocated. Why?