hadoop-zookeeper-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From maha...@apache.org
Subject svn commit: r741295 - in /hadoop/zookeeper/branches/branch-3.1: CHANGES.txt src/c/Makefile.am src/c/include/zookeeper.h src/c/include/zookeeper_version.h src/c/src/cli.c src/c/src/zookeeper.c src/c/tests/TestClient.cc src/contrib/zkfuse/src/zkadapter.cc
Date Thu, 05 Feb 2009 21:19:32 GMT
Author: mahadev
Date: Thu Feb  5 21:19:32 2009
New Revision: 741295

URL: http://svn.apache.org/viewvc?rev=741295&view=rev
Log:
ZOOKEEPER-293. zoo_set needs to be abi compatible (3.1 changed the signature), fix this by
adding zoo_set2 (pat via mahadev)

Added:
    hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper_version.h
Modified:
    hadoop/zookeeper/branches/branch-3.1/CHANGES.txt
    hadoop/zookeeper/branches/branch-3.1/src/c/Makefile.am
    hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper.h
    hadoop/zookeeper/branches/branch-3.1/src/c/src/cli.c
    hadoop/zookeeper/branches/branch-3.1/src/c/src/zookeeper.c
    hadoop/zookeeper/branches/branch-3.1/src/c/tests/TestClient.cc
    hadoop/zookeeper/branches/branch-3.1/src/contrib/zkfuse/src/zkadapter.cc

Modified: hadoop/zookeeper/branches/branch-3.1/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/CHANGES.txt?rev=741295&r1=741294&r2=741295&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/CHANGES.txt (original)
+++ hadoop/zookeeper/branches/branch-3.1/CHANGES.txt Thu Feb  5 21:19:32 2009
@@ -4,9 +4,6 @@
 
 BUGFIXES: 
 
-  ZOOKEEPER-255. zoo_set() api does not return stat datastructure.
-  (avery ching via mahadev)
-
   ZOOKEEPER-246. review error code definition in both source and docs.
   (pat via mahadev)
 
@@ -88,6 +85,12 @@
   ZOOKEEPER-252. PurgeTxnLog is not handling the new dataDir directory
   structure (mahadev via phunt)
 
+  ZOOKEEPER-255. zoo_set() api does not return stat datastructure.
+  (avery ching via mahadev)
+ 
+  ZOOKEEPER-293. zoo_set needs to be abi compatible (3.1 changed the
+signature), fix this by adding zoo_set2 (pat via mahadev)
+
 IMPROVEMENTS:
    
   ZOOKEEPER-64. Log system env information when initializing server and

Modified: hadoop/zookeeper/branches/branch-3.1/src/c/Makefile.am
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/src/c/Makefile.am?rev=741295&r1=741294&r2=741295&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/src/c/Makefile.am (original)
+++ hadoop/zookeeper/branches/branch-3.1/src/c/Makefile.am Thu Feb  5 21:19:32 2009
@@ -7,7 +7,7 @@
 
 LIB_LDFLAGS = -no-undefined -version-info 2
 
-pkginclude_HEADERS = include/zookeeper.h include/recordio.h generated/zookeeper.jute.h
+pkginclude_HEADERS = include/zookeeper.h include/zookeeper_version.h include/recordio.h generated/zookeeper.jute.h
 EXTRA_DIST=LICENSE
 
 HASHTABLE_SRC = src/hashtable/hashtable_itr.h src/hashtable/hashtable_itr.c \
@@ -16,7 +16,7 @@
 noinst_LTLIBRARIES = libhashtable.la
 libhashtable_la_SOURCES = $(HASHTABLE_SRC)
 
-COMMON_SRC = src/zookeeper.c include/zookeeper.h \
+COMMON_SRC = src/zookeeper.c include/zookeeper.h include/zookeeper_version.h \
     src/recordio.c include/recordio.h include/proto.h \
     src/zk_adaptor.h generated/zookeeper.jute.c \
     src/zk_log.h src/zk_log.c src/zk_hashtable.h src/zk_hashtable.c

Modified: hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper.h
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper.h?rev=741295&r1=741294&r2=741295&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper.h (original)
+++ hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper.h Thu Feb  5 21:19:32 2009
@@ -21,6 +21,8 @@
 
 #include <sys/time.h>
 #include <stdio.h>
+
+#include "zookeeper_version.h"
 #include "recordio.h"
 #include "zookeeper.jute.h"
 
@@ -1089,7 +1091,8 @@
         char *buffer, int* buffer_len, struct Stat *stat);
 
 /**
- * \brief sets the data associated with a node.
+ * \brief sets the data associated with a node. See zoo_set2 function if
+ * you require access to the stat information associated with the znode.
  * 
  * \param zh the zookeeper handle obtained by a call to \ref zookeeper_init
  * \param path the name of the node. Expressed as a file name with slashes 
@@ -1099,7 +1102,6 @@
  * \param version the expected version of the node. The function will fail if 
  * the actual version of the node does not match the expected version. If -1 is 
  * used the version check will not take place. 
- * \param stat if not NULL, will hold the value of stat for the path on return.
  * \return the return code for the function call.
  * ZOK operation completed succesfully
  * ZNONODE the node does not exist.
@@ -1110,6 +1112,32 @@
  * ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
  */
 ZOOAPI int zoo_set(zhandle_t *zh, const char *path, const char *buffer,
+                   int buflen, int version);
+
+/**
+ * \brief sets the data associated with a node. This function is the same
+ * as zoo_set except that it also provides access to stat information
+ * associated with the znode.
+ * 
+ * \param zh the zookeeper handle obtained by a call to \ref zookeeper_init
+ * \param path the name of the node. Expressed as a file name with slashes 
+ * separating ancestors of the node.
+ * \param buffer the buffer holding data to be written to the node.
+ * \param buflen the number of bytes from buffer to write.
+ * \param version the expected version of the node. The function will fail if 
+ * the actual version of the node does not match the expected version. If -1 is 
+ * used the version check will not take place. 
+ * \param stat if not NULL, will hold the value of stat for the path on return.
+ * \return the return code for the function call.
+ * ZOK operation completed succesfully
+ * ZNONODE the node does not exist.
+ * ZNOAUTH the client does not have permission.
+ * ZBADVERSION expected version does not match actual version.
+ * ZBADARGUMENTS - invalid input parameters
+ * ZINVALIDSTATE - zhandle state is either ZOO_SESSION_EXPIRED_STATE or ZOO_AUTH_FAILED_STATE
+ * ZMARSHALLINGERROR - failed to marshall a request; possibly, out of memory
+ */
+ZOOAPI int zoo_set2(zhandle_t *zh, const char *path, const char *buffer,
                    int buflen, int version, struct Stat *stat);
 
 /**

Added: hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper_version.h
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper_version.h?rev=741295&view=auto
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper_version.h (added)
+++ hadoop/zookeeper/branches/branch-3.1/src/c/include/zookeeper_version.h Thu Feb  5 21:19:32
2009
@@ -0,0 +1,33 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+#ifndef ZOOKEEPER_VERSION_H_
+#define ZOOKEEPER_VERSION_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define ZOO_MAJOR_VERSION 3
+#define ZOO_MINOR_VERSION 1
+#define ZOO_PATCH_VERSION 0
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* ZOOKEEPER_VERSION_H_ */

Modified: hadoop/zookeeper/branches/branch-3.1/src/c/src/cli.c
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/src/c/src/cli.c?rev=741295&r1=741294&r2=741295&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/src/c/src/cli.c (original)
+++ hadoop/zookeeper/branches/branch-3.1/src/c/src/cli.c Thu Feb  5 21:19:32 2009
@@ -277,7 +277,7 @@
                     strdup(line));
         } else {
             struct Stat stat;
-            rc = zoo_set(zh, line, ptr, strlen(ptr), -1, &stat);
+            rc = zoo_set2(zh, line, ptr, strlen(ptr), -1, &stat);
         }
         if (rc) {
             fprintf(stderr, "Error %d for %s\n", rc, line);
@@ -400,6 +400,11 @@
         fprintf(stderr,
                 "USAGE %s zookeeper_host_list [clientid_file|cmd:(ls|create|od|...)]\n",

                 argv[0]);
+        fprintf(stderr,
+                "Version: ZooKeeper cli (c client) version %d.%d.%d\n", 
+                ZOO_MAJOR_VERSION,
+                ZOO_MINOR_VERSION,
+                ZOO_PATCH_VERSION);
         return 2;
     }
     if (argc > 2) {

Modified: hadoop/zookeeper/branches/branch-3.1/src/c/src/zookeeper.c
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/src/c/src/zookeeper.c?rev=741295&r1=741294&r2=741295&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/src/c/src/zookeeper.c (original)
+++ hadoop/zookeeper/branches/branch-3.1/src/c/src/zookeeper.c Thu Feb  5 21:19:32 2009
@@ -2491,6 +2491,12 @@
 }
 
 int zoo_set(zhandle_t *zh, const char *path, const char *buffer, int buflen,
+        int version)
+{
+  return zoo_set2(zh, path, buffer, buflen, version, 0);
+}
+
+int zoo_set2(zhandle_t *zh, const char *path, const char *buffer, int buflen,
         int version, struct Stat *stat)
 {
     struct sync_completion *sc = alloc_sync_completion();

Modified: hadoop/zookeeper/branches/branch-3.1/src/c/tests/TestClient.cc
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/src/c/tests/TestClient.cc?rev=741295&r1=741294&r2=741295&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/src/c/tests/TestClient.cc (original)
+++ hadoop/zookeeper/branches/branch-3.1/src/c/tests/TestClient.cc Thu Feb  5 21:19:32 2009
@@ -443,15 +443,15 @@
 
         CPPUNIT_ASSERT(ctxLocal->countEvents() == 0);
 
-        rc = zoo_set(zk, "/watchtest/child", "1", 1, -1, 0);
+        rc = zoo_set(zk, "/watchtest/child", "1", 1, -1);
         CPPUNIT_ASSERT_EQUAL((int)ZOK, rc);
         struct Stat stat1, stat2;
-        rc = zoo_set(zk, "/watchtest/child", "1", 1, -1, &stat1);
+        rc = zoo_set2(zk, "/watchtest/child", "1", 1, -1, &stat1);
         CPPUNIT_ASSERT_EQUAL((int)ZOK, rc);
         CPPUNIT_ASSERT(stat1.version >= 0);
-        rc = zoo_set(zk, "/watchtest/child", "1", 1, stat1.version, &stat2);
+        rc = zoo_set2(zk, "/watchtest/child", "1", 1, stat1.version, &stat2);
         CPPUNIT_ASSERT_EQUAL((int)ZOK, rc);
-        rc = zoo_set(zk, "/watchtest/child", "1", 1, stat2.version, 0);
+        rc = zoo_set(zk, "/watchtest/child", "1", 1, stat2.version);
         CPPUNIT_ASSERT_EQUAL((int)ZOK, rc);
         rc = zoo_create(zk, "/watchtest/child2", "", 0,
                         &ZOO_OPEN_ACL_UNSAFE, 0, 0, 0);

Modified: hadoop/zookeeper/branches/branch-3.1/src/contrib/zkfuse/src/zkadapter.cc
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.1/src/contrib/zkfuse/src/zkadapter.cc?rev=741295&r1=741294&r2=741295&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.1/src/contrib/zkfuse/src/zkadapter.cc (original)
+++ hadoop/zookeeper/branches/branch-3.1/src/contrib/zkfuse/src/zkadapter.cc Thu Feb  5 21:19:32
2009
@@ -867,8 +867,7 @@
                       path.c_str(),
                       value.c_str(),
                       value.length(),
-                      version,
-                      0);
+                      version);
     } while (rc != ZOK && rh.handleRC(rc));
     if (rc != ZOK) {
         LOG_ERROR( LOG, "Error %d for %s", rc, path.c_str() );



Mime
View raw message