Details

    • Type: New Feature New Feature
    • Status: Closed
    • Priority: Minor Minor
    • Resolution: Fixed
    • Affects Version/s: 3.2.1
    • Fix Version/s: 3.3.0
    • Component/s: java client
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      This patch adds a recipe for creating a distributed queue with ZooKeeper similar to the WriteLock recipe and some sequential tests. This early attempt follows the Java BlockingQueue interface, though it doesn't implement it since I don't think there's a good reason for it to be Iterable.

      1. ZOOKEEPER-550.patch
        168 kB
        Mahadev konar
      2. ZOOKEEPER-550.patch
        168 kB
        Steven Cheng
      3. ZOOKEEPER-550.patch
        159 kB
        Steven Cheng
      4. ZOOKEEPER-550.patch
        159 kB
        Steven Cheng
      5. ZOOKEEPER-550.patch
        24 kB
        Steven Cheng
      6. ZOOKEEPER-550.patch
        24 kB
        Steven Cheng
      7. ZOOKEEPER-550.patch
        20 kB
        Steven Cheng
      8. ZOOKEEPER-550.patch
        20 kB
        Steven Cheng

        Activity

        Hide
        Henry Robinson added a comment -

        Looks good!

        In offer(...) - would it be better to catch the NoNodeException and create the root then, rather than requiring an RPC every time?

        Show
        Henry Robinson added a comment - Looks good! In offer(...) - would it be better to catch the NoNodeException and create the root then, rather than requiring an RPC every time?
        Hide
        Steven Cheng added a comment -

        Thanks, great idea, I'll change it.

        Show
        Steven Cheng added a comment - Thanks, great idea, I'll change it.
        Hide
        Hadoop QA added a comment -

        +1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12421903/ZOOKEEPER-550.patch
        against trunk revision 824981.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 18 new or modified tests.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 findbugs. The patch does not introduce any new Findbugs warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed core unit tests.

        +1 contrib tests. The patch passed contrib unit tests.

        Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/24/testReport/
        Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/24/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
        Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/24/console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - +1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12421903/ZOOKEEPER-550.patch against trunk revision 824981. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 18 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed core unit tests. +1 contrib tests. The patch passed contrib unit tests. Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/24/testReport/ Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/24/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/24/console This message is automatically generated.
        Hide
        Patrick Hunt added a comment -

        Canceling the patch for now, but I'm glad to see additional recipes being contributed!

        A few suggestions:

        1) we don't allow tabs in the source, please use spaces for indentation (eclipse can help with this)
        2) please add a README.txt similar to what's available in the lock recipe. this is important to have, otw potential
        users won't know the details on how the queue is being implemented (semantics). The lock recipe essentially just
        points to the std recipe docs for example, you probably can do similar if your impl is based on the recipe doc.
        3) we really want to maintain parity btw java and c, any chance you could implement the c recipe as well?

        Great to see tests!

        Mahadev, it would be good if you could review this give that you implemented the lock recipe.

        Show
        Patrick Hunt added a comment - Canceling the patch for now, but I'm glad to see additional recipes being contributed! A few suggestions: 1) we don't allow tabs in the source, please use spaces for indentation (eclipse can help with this) 2) please add a README.txt similar to what's available in the lock recipe. this is important to have, otw potential users won't know the details on how the queue is being implemented (semantics). The lock recipe essentially just points to the std recipe docs for example, you probably can do similar if your impl is based on the recipe doc. 3) we really want to maintain parity btw java and c, any chance you could implement the c recipe as well? Great to see tests! Mahadev, it would be good if you could review this give that you implemented the lock recipe.
        Hide
        Steven Cheng added a comment -

        Changed tabs to spaces and added a README.txt which is a copy from the lock version but without reference to a C implementation.

        I'll get started on a C version, the C lock recipe is a nice base to start from. Should the C version be submitted under this JIRA as well?

        Show
        Steven Cheng added a comment - Changed tabs to spaces and added a README.txt which is a copy from the lock version but without reference to a C implementation. I'll get started on a C version, the C lock recipe is a nice base to start from. Should the C version be submitted under this JIRA as well?
        Hide
        Patrick Hunt added a comment -

        I would submit both under this jira (java/c). Doesn't mean someone couldn't provide feedback on the java now though.

        Show
        Patrick Hunt added a comment - I would submit both under this jira (java/c). Doesn't mean someone couldn't provide feedback on the java now though.
        Hide
        Mahadev konar added a comment -

        steven,
        good to see this. The patch looks good. A few comments/nits

        • the code DistributedQueue does not handle ZCONNECTIONLOSS for zookeeper operations. I am working on ZOOKEEPER-22 to eliminate CONNECTIONLOSS, so your code should work fine after ZOOKEEPER-22 is resolved. It is a lot of work to handle CONNECTIONLOSS and since ZOOKEEPER-22 is anyway slated for 3.3, it would be a waste of effort. So, I would suggest that put something like this in the README - "This recipe will work correctly only if ZOOKEEPER-22 is resolved", in case ZOOKEEPER-22 is not resolved by 3.3.
        • the documentation in element() is misleading
        
                //When we get all the children, we try each as a possible head to remove.
                //By the time we try all of them, there may be new ones added.
                //Need to retry unless we see 0 children.
                //Otherwise we may throw the exception even in the case that the queue is never empty.
          
        • for remove() and take() why is it deleting all the children nodes? I think I might be misunderstanding but it seems they are both deleting all the child nodes?
        • also the API should provide for creation of elements via zookeeper acl's. The constructor could take an argument as ACL's, which could be used if passed else the UNSAFE_ALL is fine.
        Show
        Mahadev konar added a comment - steven, good to see this. The patch looks good. A few comments/nits the code DistributedQueue does not handle ZCONNECTIONLOSS for zookeeper operations. I am working on ZOOKEEPER-22 to eliminate CONNECTIONLOSS, so your code should work fine after ZOOKEEPER-22 is resolved. It is a lot of work to handle CONNECTIONLOSS and since ZOOKEEPER-22 is anyway slated for 3.3, it would be a waste of effort. So, I would suggest that put something like this in the README - "This recipe will work correctly only if ZOOKEEPER-22 is resolved", in case ZOOKEEPER-22 is not resolved by 3.3. the documentation in element() is misleading //When we get all the children, we try each as a possible head to remove. //By the time we try all of them, there may be new ones added. //Need to retry unless we see 0 children. //Otherwise we may throw the exception even in the case that the queue is never empty. for remove() and take() why is it deleting all the children nodes? I think I might be misunderstanding but it seems they are both deleting all the child nodes? also the API should provide for creation of elements via zookeeper acl's. The constructor could take an argument as ACL's, which could be used if passed else the UNSAFE_ALL is fine.
        Hide
        Steven Cheng added a comment -

        Thank you for the feedback Mahadev:

        1) Updated the README.txt

        2) I'll revise it to make it more clear.

        3) A return is done after the delete in remove() and take(), only the client that deletes the node can return the data, all others will get a NoNodeException. If different exception is thrown then it will exit the method.

        The loop can only continue if NoNodeExceptions are thrown, these are only thrown when another client has remove()d or take()n the node.

        4) The current patch takes in an acl, I mostly copied this handling from the lock recipe, is there more handling I should add?

        I would like to integrate more of the common pieces of the lock recipe into the queue but I think I will leave this to later.

        Show
        Steven Cheng added a comment - Thank you for the feedback Mahadev: 1) Updated the README.txt 2) I'll revise it to make it more clear. 3) A return is done after the delete in remove() and take(), only the client that deletes the node can return the data, all others will get a NoNodeException. If different exception is thrown then it will exit the method. The loop can only continue if NoNodeExceptions are thrown, these are only thrown when another client has remove()d or take()n the node. 4) The current patch takes in an acl, I mostly copied this handling from the lock recipe, is there more handling I should add? I would like to integrate more of the common pieces of the lock recipe into the queue but I think I will leave this to later.
        Hide
        Mahadev konar added a comment -

        1) Updated the README.txt

        are you sure you update the README? I could not find the content on ZCONNECTIONLOSS

        4) The current patch takes in an acl, I mostly copied this handling from the lock recipe, is there more handling I should add?

        that should be fine!

        Show
        Mahadev konar added a comment - 1) Updated the README.txt are you sure you update the README? I could not find the content on ZCONNECTIONLOSS 4) The current patch takes in an acl, I mostly copied this handling from the lock recipe, is there more handling I should add? that should be fine!
        Hide
        Steven Cheng added a comment -

        1) Sorry, didn't create a patch for the README since it was a small change, it is included in this patch with the comment revision.

        Show
        Steven Cheng added a comment - 1) Sorry, didn't create a patch for the README since it was a small change, it is included in this patch with the comment revision.
        Hide
        Patrick Hunt added a comment -

        this ready? what's hadoopqabot say, submitting.

        Show
        Patrick Hunt added a comment - this ready? what's hadoopqabot say, submitting.
        Hide
        Hadoop QA added a comment -

        +1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12422495/ZOOKEEPER-550.patch
        against trunk revision 826787.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 18 new or modified tests.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 findbugs. The patch does not introduce any new Findbugs warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed core unit tests.

        +1 contrib tests. The patch passed contrib unit tests.

        Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/35/testReport/
        Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/35/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
        Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/35/console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - +1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12422495/ZOOKEEPER-550.patch against trunk revision 826787. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 18 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs warnings. +1 release audit. The applied patch does not increase the total number of release audit warnings. +1 core tests. The patch passed core unit tests. +1 contrib tests. The patch passed contrib unit tests. Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/35/testReport/ Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/35/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/35/console This message is automatically generated.
        Hide
        Steven Cheng added a comment -

        Java version seems good, still missing the C version that I'm working on.

        Show
        Steven Cheng added a comment - Java version seems good, still missing the C version that I'm working on.
        Hide
        Mahadev konar added a comment -

        the java patch looks good....

        Show
        Mahadev konar added a comment - the java patch looks good....
        Hide
        Steven Cheng added a comment -

        Java and C queue recipe. Tests included pass. Please review.

        The autotools config was copied from the lock recipe, I think I changed all the right strings and added the right files to SVN.

        This also includes a small fix for the zkServer.sh in the lock recipe.

        Show
        Steven Cheng added a comment - Java and C queue recipe. Tests included pass. Please review. The autotools config was copied from the lock recipe, I think I changed all the right strings and added the right files to SVN. This also includes a small fix for the zkServer.sh in the lock recipe.
        Hide
        Hadoop QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12423133/ZOOKEEPER-550.patch
        against trunk revision 828216.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 60 new or modified tests.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 findbugs. The patch does not introduce any new Findbugs warnings.

        -1 release audit. The applied patch generated 185 release audit warnings (more than the trunk's current 179 warnings).

        +1 core tests. The patch passed core unit tests.

        +1 contrib tests. The patch passed contrib unit tests.

        Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/testReport/
        Release audit warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/artifact/trunk/patchprocess/releaseAuditDiffWarnings.txt
        Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
        Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12423133/ZOOKEEPER-550.patch against trunk revision 828216. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 60 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs warnings. -1 release audit. The applied patch generated 185 release audit warnings (more than the trunk's current 179 warnings). +1 core tests. The patch passed core unit tests. +1 contrib tests. The patch passed contrib unit tests. Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/testReport/ Release audit warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/artifact/trunk/patchprocess/releaseAuditDiffWarnings.txt Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/39/console This message is automatically generated.
        Hide
        Mahadev konar added a comment -
        struct zkr_lock_mutex {
            zhandle_t *zh;
            char *path;
            struct ACL_vector *acl;
            char *id;
            void *cbdata;
            zkr_lock_completion completion;
            pthread_mutex_t pmutex;
            int isOwner;
            char* ownerid;
        };
        
        typedef struct zkr_lock_mutex zkr_lock_mutex_t;
        
        

        I see this in the zoo_queue.h and am compilation problems. Is the above needed or a mistake?

        Show
        Mahadev konar added a comment - struct zkr_lock_mutex { zhandle_t *zh; char *path; struct ACL_vector *acl; char *id; void *cbdata; zkr_lock_completion completion; pthread_mutex_t pmutex; int isOwner; char * ownerid; }; typedef struct zkr_lock_mutex zkr_lock_mutex_t; I see this in the zoo_queue.h and am compilation problems. Is the above needed or a mistake?
        Hide
        Mahadev konar added a comment -

        cancelling patch to address the above.

        Show
        Mahadev konar added a comment - cancelling patch to address the above.
        Hide
        Steven Cheng added a comment -

        Sorry, missed that, fixed in this patch.

        Show
        Steven Cheng added a comment - Sorry, missed that, fixed in this patch.
        Hide
        Hadoop QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12423657/ZOOKEEPER-550.patch
        against trunk revision 833559.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 60 new or modified tests.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 findbugs. The patch does not introduce any new Findbugs warnings.

        -1 release audit. The applied patch generated 192 release audit warnings (more than the trunk's current 186 warnings).

        +1 core tests. The patch passed core unit tests.

        +1 contrib tests. The patch passed contrib unit tests.

        Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/testReport/
        Release audit warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/artifact/trunk/patchprocess/releaseAuditDiffWarnings.txt
        Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
        Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12423657/ZOOKEEPER-550.patch against trunk revision 833559. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 60 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs warnings. -1 release audit. The applied patch generated 192 release audit warnings (more than the trunk's current 186 warnings). +1 core tests. The patch passed core unit tests. +1 contrib tests. The patch passed contrib unit tests. Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/testReport/ Release audit warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/artifact/trunk/patchprocess/releaseAuditDiffWarnings.txt Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/52/console This message is automatically generated.
        Hide
        Steven Cheng added a comment -

        Added threaded test cases to C and Java recipes, uncovered a few bugs in the Java version where too many methods were synchronized, and orderedChildren() needs to throw the NoNodeException so that take() works properly.

        Show
        Steven Cheng added a comment - Added threaded test cases to C and Java recipes, uncovered a few bugs in the Java version where too many methods were synchronized, and orderedChildren() needs to throw the NoNodeException so that take() works properly.
        Hide
        Hadoop QA added a comment -

        -1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12424442/ZOOKEEPER-550.patch
        against trunk revision 833938.

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 64 new or modified tests.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 findbugs. The patch does not introduce any new Findbugs warnings.

        -1 release audit. The applied patch generated 192 release audit warnings (more than the trunk's current 186 warnings).

        +1 core tests. The patch passed core unit tests.

        +1 contrib tests. The patch passed contrib unit tests.

        Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/testReport/
        Release audit warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/artifact/trunk/patchprocess/releaseAuditDiffWarnings.txt
        Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
        Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - -1 overall. Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12424442/ZOOKEEPER-550.patch against trunk revision 833938. +1 @author. The patch does not contain any @author tags. +1 tests included. The patch appears to include 64 new or modified tests. +1 javadoc. The javadoc tool did not generate any warning messages. +1 javac. The applied patch does not increase the total number of javac compiler warnings. +1 findbugs. The patch does not introduce any new Findbugs warnings. -1 release audit. The applied patch generated 192 release audit warnings (more than the trunk's current 186 warnings). +1 core tests. The patch passed core unit tests. +1 contrib tests. The patch passed contrib unit tests. Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/testReport/ Release audit warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/artifact/trunk/patchprocess/releaseAuditDiffWarnings.txt Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h8.grid.sp2.yahoo.net/58/console This message is automatically generated.
        Hide
        Mahadev konar added a comment -

        the patch looks good but looks like both queue and lock recipe are currently broken with respect to running cpp unit tests for them.
        Steve, did you manage to run the c tests for anyone of them without installing zookeeper library?

        Show
        Mahadev konar added a comment - the patch looks good but looks like both queue and lock recipe are currently broken with respect to running cpp unit tests for them. Steve, did you manage to run the c tests for anyone of them without installing zookeeper library?
        Hide
        Mahadev konar added a comment -

        by "installing zookeeper library" I meant doing a make install and installing it in standard path of your system.

        Show
        Mahadev konar added a comment - by "installing zookeeper library" I meant doing a make install and installing it in standard path of your system.
        Hide
        Steven Cheng added a comment -

        Haven't done a make install yet with zookeeper so that part should be ok, I'll try applying the patch to a fresh checkout Mahadev.

        Show
        Steven Cheng added a comment - Haven't done a make install yet with zookeeper so that part should be ok, I'll try applying the patch to a fresh checkout Mahadev.
        Hide
        Steven Cheng added a comment -

        Just tried with a fresh checkout. The recipes depend on the libraries being in src/c which only happens if you run make in that directory. Also src/recipes/lock/src/c/tests/zkServer.sh does not have execute permissions on a fresh checkout, src/recipes/queue/src/c/tests/zkServer.sh also won't have permission because it's in a patch.

        What would be a good solution to the library issue? I noticed that the c client test builds to build/test/test-cppunit, the recipe tests could get the library from there instead of src/c?

        Show
        Steven Cheng added a comment - Just tried with a fresh checkout. The recipes depend on the libraries being in src/c which only happens if you run make in that directory. Also src/recipes/lock/src/c/tests/zkServer.sh does not have execute permissions on a fresh checkout, src/recipes/queue/src/c/tests/zkServer.sh also won't have permission because it's in a patch. What would be a good solution to the library issue? I noticed that the c client test builds to build/test/test-cppunit, the recipe tests could get the library from there instead of src/c?
        Hide
        Mahadev konar added a comment -

        Minor changes to README.txt in src/recipes to explain how to run c tests in src/recipes/$recipename/src/c. I think just documenting it is fine. Ill commit this patch to the trunk.

        Show
        Mahadev konar added a comment - Minor changes to README.txt in src/recipes to explain how to run c tests in src/recipes/$recipename/src/c. I think just documenting it is fine. Ill commit this patch to the trunk.
        Hide
        Mahadev konar added a comment -

        I just committed this. thanks steven. I changed the permissions on the scripts to be svn executable, so it should be fine now.

        Show
        Mahadev konar added a comment - I just committed this. thanks steven. I changed the permissions on the scripts to be svn executable, so it should be fine now.
        Hide
        Patrick Hunt added a comment -

        Good job. Great to see another recipe implemented as part of the release artifact, this will make our user's lives easier!

        Show
        Patrick Hunt added a comment - Good job. Great to see another recipe implemented as part of the release artifact, this will make our user's lives easier!
        Hide
        Hudson added a comment -

        Integrated in ZooKeeper-trunk #536 (See http://hudson.zones.apache.org/hudson/job/ZooKeeper-trunk/536/)

        Show
        Hudson added a comment - Integrated in ZooKeeper-trunk #536 (See http://hudson.zones.apache.org/hudson/job/ZooKeeper-trunk/536/ )

          People

          • Assignee:
            Steven Cheng
            Reporter:
            Steven Cheng
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development