Details

    • Type: New Feature New Feature
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 0.1.0
    • Component/s: core
    • Labels:
      None
    1. WHIRR-27.patch
      23 kB
      Johan Oskarsson
    2. WHIRR-27.patch
      21 kB
      Johan Oskarsson
    3. WHIRR-27.patch
      18 kB
      Johan Oskarsson

      Issue Links

        Activity

        Hide
        Johan Oskarsson added a comment -

        Work in progress patch that adds a Cassandra service. Based on zookeeper files. Note that this does not yet fully function.

        Show
        Johan Oskarsson added a comment - Work in progress patch that adds a Cassandra service. Based on zookeeper files. Note that this does not yet fully function.
        Hide
        Tom White added a comment -

        Johan, I tried running this test and it passed, printing out: "TODO: check the instance is running...". Perhaps you had some stray instances or groups from a previous run, when you hit problems?

        Show
        Tom White added a comment - Johan, I tried running this test and it passed, printing out: "TODO: check the instance is running...". Perhaps you had some stray instances or groups from a previous run, when you hit problems?
        Hide
        Johan Oskarsson added a comment -

        That must have been it, the test works for me now.

        Show
        Johan Oskarsson added a comment - That must have been it, the test works for me now.
        Hide
        Johan Oskarsson added a comment -

        The patch adds a service for Cassandra, based on the Zookeeper one. It includes a unit test that starts a cluster and tests it by using Thrift to connect. It as been verified to work on Ubuntu using EC2.

        Since Cassandra is not in any maven repo to my knowledge, the service requires the following jars to be copied to services/cassandra/lib from http://www.apache.org/dyn/closer.cgi?path=/cassandra/0.6.2/apache-cassandra-0.6.2-bin.tar.gz

        apache-cassandra-0.6.2.jar
        libthrift-r917130.jar

        Show
        Johan Oskarsson added a comment - The patch adds a service for Cassandra, based on the Zookeeper one. It includes a unit test that starts a cluster and tests it by using Thrift to connect. It as been verified to work on Ubuntu using EC2. Since Cassandra is not in any maven repo to my knowledge, the service requires the following jars to be copied to services/cassandra/lib from http://www.apache.org/dyn/closer.cgi?path=/cassandra/0.6.2/apache-cassandra-0.6.2-bin.tar.gz apache-cassandra-0.6.2.jar libthrift-r917130.jar
        Hide
        Tom White added a comment -

        Looks good. Thanks for writing this! Here are a few comments:

        • Rather than waiting for 5 seconds, is there any way to poll the service to see if it's up?
        • In the test() method can we assert that the describe_keyspaces() call returns something sane?
        • The getSeeds() method seems a bit magic. It might be a candidate for a unit test, or at least some documentation to say what it's doing and why.
        • We could factor out some of the common code between this and the other services, but that could be another JIRA.
        • Nit: in pom.xml the services should probably be in alphabetical order.
        Show
        Tom White added a comment - Looks good. Thanks for writing this! Here are a few comments: Rather than waiting for 5 seconds, is there any way to poll the service to see if it's up? In the test() method can we assert that the describe_keyspaces() call returns something sane? The getSeeds() method seems a bit magic. It might be a candidate for a unit test, or at least some documentation to say what it's doing and why. We could factor out some of the common code between this and the other services, but that could be another JIRA. Nit: in pom.xml the services should probably be in alphabetical order.
        Hide
        Johan Oskarsson added a comment -

        Updated to address the concerns mentioned.

        • Polls the service to see if it is up in a similar manner to the Hadoop service, but using the Thrift client
        • Checks return value from the cluster in test to see that all nodes are in the ring as expected
        • Added unit test and javadoc for getSeeds(). Will also create a jira for an improved selection process.
        • Adjusted pom
        Show
        Johan Oskarsson added a comment - Updated to address the concerns mentioned. Polls the service to see if it is up in a similar manner to the Hadoop service, but using the Thrift client Checks return value from the cluster in test to see that all nodes are in the ring as expected Added unit test and javadoc for getSeeds(). Will also create a jira for an improved selection process. Adjusted pom
        Hide
        Tom White added a comment -

        The unit test and integration test should be split into separate classes. Otherwise +1

        Show
        Tom White added a comment - The unit test and integration test should be split into separate classes. Otherwise +1
        Hide
        Johan Oskarsson added a comment -

        Separated the test into two classes.

        Show
        Johan Oskarsson added a comment - Separated the test into two classes.
        Hide
        Tom White added a comment -

        +1

        Show
        Tom White added a comment - +1
        Hide
        Johan Oskarsson added a comment -

        I've just committed this.

        Show
        Johan Oskarsson added a comment - I've just committed this.
        Hide
        Tom White added a comment -

        BTW I just updated the svn:ignore setting for the new module using "svn propset svn:ignore -F .gitignore services/cassandra".

        Show
        Tom White added a comment - BTW I just updated the svn:ignore setting for the new module using "svn propset svn:ignore -F .gitignore services/cassandra".

          People

          • Assignee:
            Johan Oskarsson
            Reporter:
            Johan Oskarsson
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development