You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Eric Evans (JIRA)" <ji...@apache.org> on 2011/07/22 00:35:58 UTC

[jira] [Created] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

improve dependency situation between JDBC driver and Cassandra
--------------------------------------------------------------

                 Key: CASSANDRA-2936
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
             Project: Cassandra
          Issue Type: Improvement
          Components: API, Core
    Affects Versions: 0.8.1
            Reporter: Eric Evans
            Priority: Minor


The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.

See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Sylvain Lebresne (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13100196#comment-13100196 ] 

Sylvain Lebresne commented on CASSANDRA-2936:
---------------------------------------------

Is there a reason this is not closed ? Is it in waiting for the drivers to be move off of svn ?

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: 2936-cleanup.txt, v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13098022#comment-13098022 ] 

Hudson commented on CASSANDRA-2936:
-----------------------------------

Integrated in Cassandra #1078 (See [https://builds.apache.org/job/Cassandra/1078/])
    remove ATerm.isCommutative and AType.toString
patch by jbellis; reviewed by eevans for CASSANDRA-2936

jbellis : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1165660
Files : 
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/AbstractTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/CounterColumnTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractCompositeType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AsciiType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/BooleanType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/BytesType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/CounterColumnType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DateType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DoubleType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/FloatType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/IntegerType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LexicalUUIDType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LocalByPartionerType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LongType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/ReversedType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/TimeUUIDType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/UTF8Type.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/UUIDType.java
* /cassandra/trunk/test/unit/org/apache/cassandra/db/marshal/RoundTripTest.java


> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: 2936-cleanup.txt, v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13092151#comment-13092151 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

Looking at this:

It doesn't seem as if the JDBC driver uses much outside of {{o.a.c.db.marshal}}, and what it does boils down to the simplest bits, nothing with dependencies (aside from the odd utility method):

* {{getString(Obj)}}
* {{toString()}}
* {{isCaseSensitive()}}
* {{getScale()}}
* {{getPrecision(arg)}}
* {{isCurrency()}}
* {{isSigned()}}
* {{getJdbcType()}}

What's killing it are things like the classes used to type the comparator members in {{AbstractType}}:

{code:style=Java}
import org.apache.cassandra.db.IColumn;
import static org.apache.cassandra.io.sstable.IndexHelper.IndexInfo;

...

public final Comparator<IndexInfo> indexComparator;
public final Comparator<IndexInfo> indexReverseComparator;
public final Comparator<IColumn> columnComparator;
public final Comparator<IColumn> columnReverseComparator;
public final Comparator<ByteBuffer> reverseComparator;
{code}

That sets up a quagmire of transitive dependencies that ends up pulling in huge chunks of  the project.

It seems like there are two approaches to fixing this, (a) making the classes in {{o.a.c.db.marshal}} more stand-alone by separating out the problematic parts ("somehow"), or (b) separating the pieces useful to the JDBC driver (marshaling to/from string, signed-ness, scale, precision, etc), and reusing as necessary from the classes in {{o.a.c.db.marshal}}.

The latter seems more palatable, if only because it is less disruptive.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Priority: Minor
>              Labels: cql
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Rick Shaw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095489#comment-13095489 ] 

Rick Shaw commented on CASSANDRA-2936:
--------------------------------------

Sure.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Rick Shaw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095979#comment-13095979 ] 

Rick Shaw commented on CASSANDRA-2936:
--------------------------------------

+1

Lets get this baby in Trunk.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Rick Shaw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095558#comment-13095558 ] 

Rick Shaw commented on CASSANDRA-2936:
--------------------------------------

I am trying to do it in Eclipse from the SVN plugin. I guess I'll switch to CLI. But I thought there would be a shortcut to substitute my specific target path for the apparent git path. And I was concerned that the current patch set seems to have a different path near the root: using src/java not java/src. Sorry to take up valuable time. I'll work through in... Thanx.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v1-0005-create-jar-file.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v1-0004-make-better-reuse-of-new-classes.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Rick Shaw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095551#comment-13095551 ] 

Rick Shaw commented on CASSANDRA-2936:
--------------------------------------

An up to date C* source tree would have the directory format "trunk/drivers/src/java/... not java/src?

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment: v2-0005-create-jar-file.txt
                v2-0004-make-better-reuse-of-new-classes.txt
                v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt
                v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt
                v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v1-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v1-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v1-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v1-0004-make-better-reuse-of-new-classes.txt, v1-0005-create-jar-file.txt, v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096284#comment-13096284 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

Committed.

I've leave this open until we figure out what we're doing with the tests, since there might be some decoupling to do there as well.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v1-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v1-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13097918#comment-13097918 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

{quote}
Ugh, I wish we hadn't touched the AbstractType->AbstractTerm refactor. It doesn't improve things from the dependency standpoint (the latter still depends on the former)
{quote}

I don't understand. AbstractType depending on AbstractTerm was intentional, avoiding it would have required duplication and refactoring that would have been more disruptive (as-is, this pretty much just moved things around some).  AbstractTerm though shouldn't be depending on AbstractType (and I tested the driver against the new jar), what I am I missing?

{quote}
and we should be avoiding 11th hour refactors like this where possible (e.g. this screwed CASSANDRA-2734 all to hell).
{quote}

Not sure what to say here.  It happens (especially when working from patchsets attached to tickets and not branches).  I'd have coordinated if I'd have known there would be a problem, I apologize, and would be more than happy to help sort that out if you'd like.

{quote}
Having come this far, though, I propose the attached patch:

removes ATerm.isCommutative, which is unused and likely to remain so (commutativity is an internal property of counters)
removes AType.toString, which is unused outside of client code, which leaves us with a single-direction dependency instead of bidirectional
I further propose renaming AbstractTerm to AbstractJdbcType, and LongTerm, IntegerTerm, etc., to JdbcLong, JdbcInteger, etc., both on semantic grounds (a "term" implies a concrete use in a parse tree or statement, not a generic type) and pedantic (it's unfortunate that the CamelCase abbreviations of *Type and *Term are identical).
{quote}

+1

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: 2936-cleanup.txt, v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v2-0005-create-jar-file.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095573#comment-13095573 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

No problem, thanks for the help!

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13092165#comment-13092165 ] 

Jonathan Ellis commented on CASSANDRA-2936:
-------------------------------------------

Agreed.  JDBC shouldn't need to care about sorting the columns, only presenting them back to the caller.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Priority: Minor
>              Labels: cql
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13097997#comment-13097997 ] 

Jonathan Ellis commented on CASSANDRA-2936:
-------------------------------------------

(also renamed "term" package to "jdbc.")

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: 2936-cleanup.txt, v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment: v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Issue Comment Edited] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13097918#comment-13097918 ] 

Eric Evans edited comment on CASSANDRA-2936 at 9/6/11 11:59 AM:
----------------------------------------------------------------

{quote}
Ugh, I wish we hadn't touched the AbstractType->AbstractTerm refactor. It doesn't improve things from the dependency standpoint (the latter still depends on the former)
{quote}

I don't understand. AbstractType depending on AbstractTerm was intentional, avoiding it would have required duplication or refactoring that would have been more disruptive (as-is, this pretty much just moved things around some).  AbstractTerm though shouldn't be depending on AbstractType (and I tested the driver against the new jar), what I am I missing?

{quote}
and we should be avoiding 11th hour refactors like this where possible (e.g. this screwed CASSANDRA-2734 all to hell).
{quote}

Not sure what to say here.  It happens (especially when working from patchsets attached to tickets and not branches).  I'd have coordinated if I'd have known there would be a problem, I apologize, and would be more than happy to help sort that out if you'd like.

{quote}
Having come this far, though, I propose the attached patch:

removes ATerm.isCommutative, which is unused and likely to remain so (commutativity is an internal property of counters)
removes AType.toString, which is unused outside of client code, which leaves us with a single-direction dependency instead of bidirectional
I further propose renaming AbstractTerm to AbstractJdbcType, and LongTerm, IntegerTerm, etc., to JdbcLong, JdbcInteger, etc., both on semantic grounds (a "term" implies a concrete use in a parse tree or statement, not a generic type) and pedantic (it's unfortunate that the CamelCase abbreviations of *Type and *Term are identical).
{quote}

+1

      was (Author: urandom):
    {quote}
Ugh, I wish we hadn't touched the AbstractType->AbstractTerm refactor. It doesn't improve things from the dependency standpoint (the latter still depends on the former)
{quote}

I don't understand. AbstractType depending on AbstractTerm was intentional, avoiding it would have required duplication and refactoring that would have been more disruptive (as-is, this pretty much just moved things around some).  AbstractTerm though shouldn't be depending on AbstractType (and I tested the driver against the new jar), what I am I missing?

{quote}
and we should be avoiding 11th hour refactors like this where possible (e.g. this screwed CASSANDRA-2734 all to hell).
{quote}

Not sure what to say here.  It happens (especially when working from patchsets attached to tickets and not branches).  I'd have coordinated if I'd have known there would be a problem, I apologize, and would be more than happy to help sort that out if you'd like.

{quote}
Having come this far, though, I propose the attached patch:

removes ATerm.isCommutative, which is unused and likely to remain so (commutativity is an internal property of counters)
removes AType.toString, which is unused outside of client code, which leaves us with a single-direction dependency instead of bidirectional
I further propose renaming AbstractTerm to AbstractJdbcType, and LongTerm, IntegerTerm, etc., to JdbcLong, JdbcInteger, etc., both on semantic grounds (a "term" implies a concrete use in a parse tree or statement, not a generic type) and pedantic (it's unfortunate that the CamelCase abbreviations of *Type and *Term are identical).
{quote}

+1
  
> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: 2936-cleanup.txt, v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Rick Shaw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095544#comment-13095544 ] 

Rick Shaw commented on CASSANDRA-2936:
--------------------------------------

These patches do not seem to be based on the SVN trunk?

all the files in the patches seem to start: "...b/src/java/org/apache/..." not "...b/java/src/org/apache/..."

Do I need to substitute the proper target path in all the patch files? (sorry to the novice in patching question)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2936:
--------------------------------------

    Attachment: 2936-cleanup.txt

Ugh, I wish we hadn't touched the AbstractType->AbstractTerm refactor.  It doesn't improve things from the dependency standpoint (the latter still depends on the former) and we should be avoiding 11th hour refactors like this where possible (e.g. this screwed CASSANDRA-2734 all to hell).

Having come this far, though, I propose the attached patch:

- removes ATerm.isCommutative, which is unused and likely to remain so (commutativity is an internal property of counters)
- removes AType.toString, which is unused outside of client code, which leaves us with a single-direction dependency instead of bidirectional

I further propose renaming AbstractTerm to AbstractJdbcType, and LongTerm, IntegerTerm, etc., to JdbcLong, JdbcInteger, etc., both on semantic grounds (a "term" implies a concrete use in a parse tree or statement, not a generic type) and pedantic (it's unfortunate that the CamelCase abbreviations of *Type and *Term are identical).

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: 2936-cleanup.txt, v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096313#comment-13096313 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

attached v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt which renames the cookie jar to "clientutil".

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095550#comment-13095550 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

I'm confused as to where you are expecting that second path.  These patches should apply to an up-to-date checkout of trunk/ from the top-level Cassandra source tree.



> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Jeremy Hanna (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095553#comment-13095553 ] 

Jeremy Hanna commented on CASSANDRA-2936:
-----------------------------------------

Rick - does this have to do with using "patch -p0 ..." versus using "patch -p1 ..." when trying to apply the patches?

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment: v1-0005-create-jar-file.txt
                v1-0004-make-better-reuse-of-new-classes.txt
                v1-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt
                v1-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt
                v1-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Priority: Minor
>              Labels: cql
>         Attachments: v1-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v1-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v1-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v1-0004-make-better-reuse-of-new-classes.txt, v1-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jonathan Ellis updated CASSANDRA-2936:
--------------------------------------

    Reviewer: ardot

Rick, can you take review on this?

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095753#comment-13095753 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

v3 patchset guards against a possible NPE per CASSANDRA-3091

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13096315#comment-13096315 ] 

Hudson commented on CASSANDRA-2936:
-----------------------------------

Integrated in Cassandra #1071 (See [https://builds.apache.org/job/Cassandra/1071/])
    create jar file

Patch by eevans; reviewed by Rick Shaw for CASSANDRA-2936
make better reuse of new classes

Patch by eevans; reviewed by Rick Shaw for CASSANDRA-2936
remove extraneous methods from o.a.c.db.marshal classes

Patch by eevans; reviewed by Rick Shaw for CASSANDRA-2936
convert drivers (and tests) to o.a.c.cql.term

Patch by eevans; reviewed by Rick Shaw for CASSANDRA-2936
create package for CQL term marshaling

Patch by eevans; reviewed by Rick Shaw for CASSANDRA-2936

eevans : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164695
Files : 
* /cassandra/trunk/build.xml

eevans : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164694
Files : 
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/DateTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AsciiType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/BooleanType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/BytesType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DateType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DoubleType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/FloatType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/IntegerType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LexicalUUIDType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LongType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/TimeUUIDType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/UTF8Type.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/UUIDType.java

eevans : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164693
Files : 
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractCommutativeType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractCompositeType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AbstractUUIDType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/AsciiType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/BooleanType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/BytesType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DateType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/DoubleType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/FloatType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/IntegerType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LexicalUUIDType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LocalByPartionerType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/LongType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/ReversedType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/TimeUUIDType.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/UTF8Type.java
* /cassandra/trunk/src/java/org/apache/cassandra/db/marshal/UUIDType.java

eevans : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164692
Files : 
* /cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/CResultSet.java
* /cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/CassandraPreparedStatement.java
* /cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/ColumnDecoder.java
* /cassandra/trunk/drivers/java/src/org/apache/cassandra/cql/jdbc/TypedColumn.java
* /cassandra/trunk/drivers/java/test/org/apache/cassandra/cql/JdbcDriverTest.java

eevans : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1164691
Files : 
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/AbstractTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/AbstractUUIDTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/AsciiTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/BooleanTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/BytesTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/CounterColumnTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/DateTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/DoubleTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/FloatTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/IntegerTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/LexicalUUIDTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/LongTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/MarshalException.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/TimeUUIDTerm.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/TypesMap.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/UTF8Term.java
* /cassandra/trunk/src/java/org/apache/cassandra/cql/term/UUIDTerm.java


> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13097986#comment-13097986 ] 

Jonathan Ellis commented on CASSANDRA-2936:
-------------------------------------------

bq. AbstractTerm though shouldn't be depending on AbstractType

Sorry, my mistake: I thought ITerm.getType returned an AbstractType.

bq. +1

Committed.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: 2936-cleanup.txt, v1-0001-CASSANDRA-2936-rename-cookie-jar-clientutil.txt, v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v1-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Rick Shaw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095567#comment-13095567 ] 

Rick Shaw commented on CASSANDRA-2936:
--------------------------------------

Thats what I needed. Sorry for my naivete. I'll get on it immediately.

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment:     (was: v2-0004-make-better-reuse-of-new-classes.txt)

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Evans updated CASSANDRA-2936:
----------------------------------

    Attachment: v3-0005-create-jar-file.txt
                v3-0004-make-better-reuse-of-new-classes.txt
                v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt
                v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt
                v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v3-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v3-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v3-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v3-0004-make-better-reuse-of-new-classes.txt, v3-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Commented] (CASSANDRA-2936) improve dependency situation between JDBC driver and Cassandra

Posted by "Eric Evans (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2936?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13095563#comment-13095563 ] 

Eric Evans commented on CASSANDRA-2936:
---------------------------------------

>From the top-level source tree as checked out from trunk... which should look something like this:

{noformat}
$ ls
bin                       conf     examples     NOTICE.txt  tools
build                     contrib  interface    README.txt
build.properties.default  debian   lib          redhat
build.xml                 doc      LICENSE.txt  src
CHANGES.txt               drivers  NEWS.txt     test
{noformat}

You would use patch -p1 < $PATH

The patch will apply to some files in drivers/java/src/... and src/java/... and build.xml

> improve dependency situation between JDBC driver and Cassandra
> --------------------------------------------------------------
>
>                 Key: CASSANDRA-2936
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2936
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>    Affects Versions: 0.8.1
>            Reporter: Eric Evans
>            Assignee: Eric Evans
>            Priority: Minor
>              Labels: cql
>             Fix For: 1.0
>
>         Attachments: v2-0001-CASSANDRA-2936-create-package-for-CQL-term-marshaling.txt, v2-0002-convert-drivers-and-tests-to-o.a.c.cql.term.txt, v2-0003-remove-extraneous-methods-from-o.a.c.db.marshal-classe.txt, v2-0004-make-better-reuse-of-new-classes.txt, v2-0005-create-jar-file.txt
>
>
> The JDBC jar currently depends on the {{apache-cassandra-$version}} jar, despite the fact that it only (directly) uses a handful of Cassandra's classes.  In a perfect world, we'd break those classes out into their own jar which both the JDBC driver and Cassandra (ala {{apache-cassandra-$version.jar}}) could depend on.  However, the classes used directly don't fall out to anything that makes much sense organizationally (short of creating a {{apache-cassandra-misc-$version.jar}}), and the situation only gets worse when you take into account all of the transitive dependencies.
> See CASSANDRA-2761 for more background, in particular ([this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13048734&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13048734] and [this|https://issues.apache.org/jira/browse/CASSANDRA-2761?focusedCommentId=13050884&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13050884])

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira