To create what should be a simple parent-child relationship between 2 issues in JIRA, you need to define a UNIQUE sub-issue type for every single type of child issue you might want.
So lets say I have existing issue types Dev Task, Ops Task, Future Planning, QA Task, Documentation. And I want to create a parent Documentation issue that has sub-issues for each of my depts that will be contributing: Dev Task, Ops Task, QA Task. I now have to create a whole new sub-issue ("sub-task") type for each of these just so I can create a proper parent child relationship between my parent issue and sub-issues. And for each sub-issue, I have to duplicate all my previous work on the main issue types with similar names and assign all the right field configs/screens/etc, and when searching for Eng Tasks, I now have to search for both Eng Tasks and Eng Sub-Tasks.
Lets get rid of the concept of "sub-tasks" entirely, and express parent-child relationships between issues as just that – defining a relationship – not entirely new issue types.