def METHOD_NAME(self):
    """
    This test case validates Job array state when one
    of the subjob is deleted while the array job is HELD in a routing
    queue and is released after the subjob is deleted.
    """
    dflt_q = self.server.default_queue
    # Create a route queue with destination to default queue
    queue_attrib = {ATTR_qtype: 'route',
                    ATTR_routedest: dflt_q,
                    ATTR_enable: 'True'}
    self.server.manager(MGR_CMD_CREATE, QUEUE, queue_attrib, id='routeq')
    job_attrib = Job(TEST_USER, attrs={ATTR_queue: 'routeq',
                                       ATTR_l + '.ncpus': 1,
                                       ATTR_h: None,
                                       ATTR_J: '1-2',
                                       ATTR_r: 'y'})
    # Submit an array job in Held state
    jid = self.server.submit(job_attrib)
    self.server.expect(JOB, {ATTR_state: 'H'}, jid)
    self.server.expect(JOB, {ATTR_state + '=Q': 2}, count=True,
                       id=jid, extend='t')
    subjobs = self.server.status(JOB, id=jid, extend='t')
    # Delete one of the subjob
    self.server.deljob(subjobs[-1]['id'])
    self.server.expect(JOB, {ATTR_state: 'H'}, jid)
    self.server.expect(JOB, {ATTR_state + '=Q': 1}, count=True,
                       id=jid, extend='t')
    self.server.expect(JOB, {ATTR_state + '=X': 1}, count=True,
                       id=jid, extend='t')
    self.server.expect(JOB, {ATTR_queue + '=routeq': 3}, count=True,
                       id=jid, extend='t')
    # Release the array and verify job array state
    self.server.rlsjob(jid, 'u')
    self.server.expect(JOB, {ATTR_state: 'Q'}, jid)
    self.server.expect(JOB, {ATTR_state + '=Q': 2}, count=True,
                       id=jid, extend='t')
    self.server.expect(JOB, {ATTR_state + '=X': 1}, count=True,
                       id=jid, extend='t')
    self.server.expect(JOB, {ATTR_queue + '=routeq': 3}, count=True,
                       id=jid, extend='t')
    # No errors should be in server logs
    msg = '(job_route) Request invalid for state of job, state=7'
    self.server.log_match(msg, id=jid, existence=False)
    # Start routing queue and verify job array queue set to default queue
    a = {ATTR_start: 'True'}
    self.server.manager(MGR_CMD_SET, QUEUE, a, id='routeq')
    self.server.expect(JOB, {ATTR_queue + '=' + dflt_q: 3}, count=True,
                       id=jid, extend='t')