The article explains why they disappear but does not suggest an alternative approach that retains the sub-tasks.
Can it be made more helpful!?
You don't have a ton of options for more advanced JQL if you're using Cloud. With JIRA Server, you could use the JQL functions provided by the ScriptRunner plugin.
For instance, if you want to return the subtasks under issues that belong to an Epic with key SC-3939:
issueFunction in subtasksOf("'Epic Link' = SC-3939") OR "Epic Link" = SC-3939
I think the JQL Pro (Mongo Search) plugin would allow you to build a search function like you want, but I can't confirm since I haven't tried it. It's a bit pricey, but you might want to give it a try anyway, as it could solve lots of future issues you will get with advanced search functions.
There's also this, but I'm not confident that will entirely fit your need.
Just the FAQs! Welcome to the Community, and this Focused-FAQ! Here, we've pulled together some of the most frequently asked questions associated with Jira Service Desk (JSD). We hope ...
Connect with like-minded Atlassian users at free events near you!Find a group
Connect with like-minded Atlassian users at free events near you!
Unfortunately there are no AUG chapters near you at the moment.Start an AUG
You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs