def parse_queue_config_string( config_string ):
    """
    Example input strings:
        "ppn=16,maxtime=24h, maxprocs=512"
        "short: ppn=16,maxtime=24h,maxprocs=512"
        "long, ppn=16,maxtime=72h"
    These strings can be concatenated with a comma.
    Returns a list of ( queue name, attr name, attr value ).
    """
    configlist = []
    qname = None

    for chunk in config_string.split(','):
        itemL = chunk.strip().split()
        for item in itemL:
            L = item.split( '=', 1 )
            if len(L) == 2:
                eqname,eqval = L
                L = eqname.split( ':', 1 )
                if len(L) == 2:
                    qname,atname = L
                    qname = qname.strip()
                else:
                    atname = eqname
                configlist.append( ( qname, atname.strip(), eqval.strip() ) )
            else:
                qname = item.strip().rstrip(':')

    return configlist