Clean srm_server, db connection pool and thread pool

XMLWordPrintable

    • Type: Sub-task
    • Resolution: Unresolved
    • Priority: Major
    • None
    • Affects Version/s: None
    • Component/s: frontend
    • Security Level: Public (Visbile by non-authn users.)
    • None

      More specifically:

      • remove all extern variables
      • keepĀ all the context info for a thread into srm_srv_thread_info
      • review #define's

      Since there is also a db connection per thread, redesign the two together. In particular create the db connections before hand during startup and not lazily, which just complicates things and it's probably the cause of various diagnostics by the address sanitizer:

      Direct leak of 416 byte(s) in 2 object(s) allocated from:
          #0 0x7fbb6b3a082e in calloc (/lib64/libasan.so.5+0x10c82e)
          #1 0x7fbb6adeee46  (/usr/lib64/mysql/libmysqlclient.so.18+0x5ae46)
          #2 0x7fbb6adb3c44  (/usr/lib64/mysql/libmysqlclient.so.18+0x1fc44)
          #3 0x7fbb6adbb096 in mysql_init (/usr/lib64/mysql/libmysqlclient.so.18+0x27096)
          #4 0x6ff3c8 in storm_opendb(char const*, char const*, char const*, srm_dbfd*) ../../../src/db/storm_mysql_ifce.cpp:39
          #5 0x5552cc in int processRequestStatus<ns1__srmStatusOfBringOnlineRequestRequest, ns1__srmStatusOfBringOnlineRequestResponse>(soap*, char const*, storm::FileStatusRequest<ns1__srmStatusOfBringOnlineRequestRequest, ns1__srmStatusOfBringOnlineRequestResponse>&, ns1__srmStatusOfBringOnlineRequestResponse**) ../../../src/frontend/StatusTemplate.hpp:62
      ...
      
      

            Assignee:
            Francesco Giacomini
            Reporter:
            Francesco Giacomini
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: