Print

Print


Attendees: Daniel, AndyS, AndyH, Bill, Jacek


Jacek
  - playing with jira
     - notifications: email notifications can be
       set up, Tony J. at slac knows how to set it up
     - would be useful to have a demo of how to
       use stash
- reviewed 2939
- design/hackathon week
     - 1 set of rooms reserved
     --> perhaps get second room for afternoons
         parallel sessions
- planning to look at other open source systems
   ~ week before (to learn how we can improve)
   - all of us should do it


AndyH
  - reworked all flow control for client and server,
    based on a long discussion with Daniel
  - everything is async
  - will be ready tomorrow/Monday


Daniel
  - 2939 (lat/long theta/phi)
  - more cleanup: mysqlExportMgr --> chunkInventory,
    improving interface, adding tests, proper error
    handling
  - looking into mock test frameworks
    - dependency?
       - both google and turtle bring dependency,
       - hippoMocks super simple, one header


AndyS
  - installing/building qserv on NCSA machine


Bill
  [demo and discussion about logging]

  - do we care about internal numbering of logging levels?
    - log4cxx and python logging use different numbers
      - people should not deal with the numbers
    - also, names don't map perfectly (critical vs fatal)

  - the layer written by Bill
    - covers what was discussed and agreed 3 months ago
    - no state in the layer
    - nicer/friendlier api
    - additional metedata (thread id, function name, line number etc)

  - hierarchical naming?
    - it is part of log4cxx
    --> will play with that in the context of qserv (core modules)

  - default appenders are synchronous
    - will slow down qserv (!)
    --> someone needs to research non-blocking asynchronous appenders
        for log4cxx (yes, they do exist)

  - observation: we can define our own set of macros for qserv
    to shorten code for logging

  - for some macros (but not all) everything is shut off when
    given logging level is not active

  - python side: still doing formatting in current implementation,
    even if debugging level turned of.
    -  will fix it (separate all formatting into one argument
       that is not processed unless needed)
    - new string substitutions
      (http://legacy.python.org/dev/peps/pep-3101/) vs "old one"
      - need to decide which one we want to use

  - threadId - better to have compact representation (to look
    at things visually) - AndyH run into that in xrootd.
    - solution: associate a simpler number with each thread.
       - but don't maintain a dictionary, just pass a number
         to each thread

  - we might want to add key/value pairs in a way that is
    machine readable (and human readable)

  - misconfiguration might result in duplicate messages

  - perhaps define special python handler, intercept and redirect
    to our log4cxx-based logging?

  - possible to compile all logging out?
     - "log_info", "log_error" type macros are easy, generic "log"
       is harder

  - next steps
    - improve documentation and then discuss on lsst-data
      to get ball rolling (very soon)
    - next iteration covering issues raised - no later than
      end of March

Jacek

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the QSERV-L list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=QSERV-L&A=1