When you invoke the DYNALLOC macro to perform dsname dynamic allocation, an “allocation environment” already exists for your request. It consists of the allocation requests made through your JCL or earlier dynamic allocations, that have not yet been deallocated. The system considers these resources to be existing allocations, and goes to them first to fill your dynamic allocation requests.
This is not a conflict if the request specifies a different volume serial number. Non-temporary data sets can have the same dsname if they do not reside on the same volume.
This is not a conflict if your request specifies a different volume serial number, and the allocation on the specified volume is permanently allocated and does not have a disposition of DELETE.
MVS™ might allocate a different data set than you intend when you have multiple versions of the same data set, with the same data set name, residing on different volumes. When a data set with the same name as the intended data set has been previously allocated (perhaps using an alias name) but not freed, then the current allocate request might not allocate the intended version.
If the data set to be allocated is not cataloged in the master catalog, and a data set with the same name is cataloged in the master catalog, then you must specify DALVSER and DALUNIT.