zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jian Wang (JIRA)" <j...@apache.org>
Subject [jira] [Created] (ZOOKEEPER-3192) zoo_multi/zoo_amulti crash
Date Fri, 16 Nov 2018 01:17:00 GMT
Jian Wang created ZOOKEEPER-3192:

             Summary: zoo_multi/zoo_amulti crash
                 Key: ZOOKEEPER-3192
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3192
             Project: ZooKeeper
          Issue Type: Bug
          Components: c client
    Affects Versions: 3.4.13
         Environment: VS2013 Building (/MD)
            Reporter: Jian Wang

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

This message was sent by Atlassian JIRA

View raw message