What is a "high" value for ParserExpReq depends on the the complexity of the queries being executed and whether the system is congested or not. You could try to establish a "normal" ParserExpReq time for your queries and then look for deviations from that value as the system gets busy. If you are not getting any user complaints about long parsing times, you don't necessarily have to do anything when parserexpreq is high. The express requests will get executed eventually, they will just take longer. However, express requests do use a higher work type than worknew requests, so if they get queued waiting for an AWT they should be one of the first requests off the queue.
However, expediting express request is a way to shorten the time spent on express requests when there is a shortage of AWTs, if that is an important thing to manage at your site. Express requests used during parsing/optimizing are very short, and only hold an AWT for an extremely short amount of time, so there is really no down-side to expediting them. Parsing happens only once per query, so it's usually infrequent.
Something to be aware of, there are a few cases where express requests issued by the DBS are all-AMP requests. One case is when all-AMP random AMP samples are being collected. The other case can happen during collect statistics execution. The update, delete and insert counts (assuming USECOUNT logging is turned on) are kept in a special cache in each PE. When collect stats is issued it flushes the UDI count cache and writes the contents to disk. The counts from all PE's caches are aggregated and express requets are used to send them down to the right AMPs to update the new DBC.ObjectUsage table. So you may see somewhat higher than usual parserexpreq times for collect statistics statements when you collect statistics. If you expedite express requests, that will include this occasional all-AMP express requests that are unrelated to parsing.
If you are running out of AWTs and that is slowing down parsing times for your requests, expediting express requests is a reasonable step to take. But as with everything when you make a change, you should monitor the reserved AWT in-use counts and make sure the max08 and max09 numbers to not exceed their reserves.
Thanks, -Carrie
What is a "high" value for ParserExpReq depends on the the complexity of the queries being executed and whether the system is congested or not. You could try to establish a "normal" ParserExpReq time for your queries and then look for deviations from that value as the system gets busy. If you are not getting any user complaints about long parsing times, you don't necessarily have to do anything when parserexpreq is high. The express requests will get executed eventually, they will just take longer. However, express requests do use a higher work type than worknew requests, so if they get queued waiting for an AWT they should be one of the first requests off the queue.
However, expediting express request is a way to shorten the time spent on express requests when there is a shortage of AWTs, if that is an important thing to manage at your site. Express requests used during parsing/optimizing are very short, and only hold an AWT for an extremely short amount of time, so there is really no down-side to expediting them. Parsing happens only once per query, so it's usually infrequent.
Something to be aware of, there are a few cases where express requests issued by the DBS are all-AMP requests. One case is when all-AMP random AMP samples are being collected. The other case can happen during collect statistics execution. The update, delete and insert counts (assuming USECOUNT logging is turned on) are kept in a special cache in each PE. When collect stats is issued it flushes the UDI count cache and writes the contents to disk. The counts from all PE's caches are aggregated and express requets are used to send them down to the right AMPs to update the new DBC.ObjectUsage table. So you may see somewhat higher than usual parserexpreq times for collect statistics statements when you collect statistics. If you expedite express requests, that will include this occasional all-AMP express requests that are unrelated to parsing.
If you are running out of AWTs and that is slowing down parsing times for your requests, expediting express requests is a reasonable step to take. But as with everything when you make a change, you should monitor the reserved AWT in-use counts and make sure the max08 and max09 numbers to not exceed their reserves.
Thanks, -Carrie