Uploaded image for project: 'ZooKeeper'
  1. ZooKeeper
  2. ZOOKEEPER-3192

zoo_multi/zoo_amulti crash

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Duplicate
    • 3.4.13
    • None
    • c client
    • None
    • VS2013 Building (/MD)

    • Important

    Description

      In the zoo_amulti function (zookeeper.c) , it seems an initialization problem.

      struct RequestHeader h = { STRUCT_INITIALIZER(xid, get_xid()), STRUCT_INITIALIZER(type, ZOO_MULTI_OP) };
      struct MultiHeader mh = { STRUCT_INITIALIZER(type, -1), STRUCT_INITIALIZER(done, 1), STRUCT_INITIALIZER(err, -1) };
      struct oarchive *oa = create_buffer_oarchive();
      completion_head_t clist = { 0 };
      

      variable "clist" 's member cond and lock are not initialized correctly. They should be initialized by pthread_cond_init and pthread_mutex_init. Otherwise zoo_amulti would crash when queue_completion was called witch calls pthread_cond_boardcast using clist->cond

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              wangjiandtc Jian Wang
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: