Results 1 to 4 of 4
  1. #1
    Join Date
    Dec 2003
    Posts
    78

    Unanswered: error in db2diag.log

    Hello,
    For our server in AIX v7.2,we've been continuously receiving the same message in db2diag.log(parallel with performance problems in the application)

    2004-05-04-16.37.50.449481 Instance:db2inst1 Node:000
    PID:25298(db2agent (PSUB00)) Appid:AC1F8016.9619.040421070754
    buffer_pool_services sqlbpfAddToQ Probe:298 Database:PDB2DB

    Prefetch Queue Full: request not queued. You may need to increase num_ioservers for optimal performance!
    0000 0001


    There are no other error messages in the log file, no locks, nothing
    Is this error occures because of an error occuring in an application other than db2??
    or is it because of db2? how can it be corrected?

  2. #2
    Join Date
    Mar 2004
    Posts
    448
    num_ioserver is the db paramter.It works on the behalf of applications agents to bring table and index pages in the buffer pools, also bring the pages using prefetching.

    update it and monitor it,using snapshot monitoring, the important lines are
    asynhronous part , it is relevant to prefetching(naturally prefetching must be asynchronous) also physcial reads for getting the pages on demand.

    update db cfg for <database name> using num_ioservers <int>

    regards,

    mujeeb

  3. #3
    Join Date
    Aug 2001
    Location
    UK
    Posts
    4,650
    Have you tried increasing num_ioservers db cfg parameter ?

    What is the value now ?

    IOSERVERS are the components that receive a prefetch request from an application, put them in a queue and fetch the pages on behalf of the applications ... If the prefetch queue for the ioserver is full, it may not be in a position to add more requests to the queue ... Obviously, your application will suffer ...

    BTW, check your SQL Statement which is struggling ... It may be doing table scans to get the data ... Try adding indexes to suit your query

    HTH

    Sathyaram
    Visit the new-look IDUG Website , register to gain access to the excellent content.

  4. #4
    Join Date
    Mar 2004
    Location
    Toronto, ON, Canada
    Posts
    513
    Quote Originally Posted by sathyaram_s
    Have you tried increasing num_ioservers db cfg parameter ?

    What is the value now ?

    IOSERVERS are the components that receive a prefetch request from an application, put them in a queue and fetch the pages on behalf of the applications ... If the prefetch queue for the ioserver is full, it may not be in a position to add more requests to the queue ... Obviously, your application will suffer ...

    BTW, check your SQL Statement which is struggling ... It may be doing table scans to get the data ... Try adding indexes to suit your query

    HTH

    Sathyaram
    Another unpleasant possibility is that your physical device can't keep up, in which case all the ioservers in the world won't help you.

    If this is unix/linux, use "iostat -x 10 10" (you can play with the options) and see if any of your hard drives are being overused.
    --
    Jonathan Petruk
    DB2 Database Consultant

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •