Skip to content

Commit 677b14a

Browse files
authored
Merge pull request #644 from chapj2001/dependency-update
Update readme to match deprecation notice on astyanax/wiki
2 parents 25dc132 + e748f96 commit 677b14a

File tree

1 file changed

+44
-34
lines changed

1 file changed

+44
-34
lines changed

Readme.markdown

+44-34
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,23 @@
11
Astyanax
22
========
3-
Astyanax is a high level Java client for [Apache Cassandra](http://cassandra.apache.org).
4-
Apache Cassandra is a highly available column oriented database.
53

6-
Astyanax is currently in use at [Netflix](http://movies.netflix.com), but is being [retired](https://medium.com/netflix-techblog/astyanax-retiring-an-old-friend-6cca1de9ac4).
7-
Astyanax is no longer under active development, but may receive dependency updates to ease migration away from Astyanax.
4+
Deprecation
5+
-----------
6+
Astyanax has been [retired](https://medium.com/netflix-techblog/astyanax-retiring-an-old-friend-6cca1de9ac4) and is no
7+
longer under active development but may receive dependency updates to ease migration away from Astyanax.
88

99
In place of Astyanax consider using [DataStax Java Driver for Apache Cassandra](https://github.com/datastax/java-driver)
10-
which is under active development and encapsulates a lot of lessons learned from Astyanax. The DataStax driver supports
11-
only CQL protocol because Apache Cassandra 4.x drops the Thrift protocol. Switching to the DataStax driver requires
12-
using CQL queries, but you'll still be able to access legacy column families via the CQL "with compact storage" option.
10+
which is under active development and encapsulates a lot of lessons learned from Astyanax. Since the DataStax driver
11+
supports only CQL protocol (because Apache Cassandra 4.x will drop the Thrift protocol), you’ll have to update all of
12+
your Thrift-based queries to CQL queries.
13+
14+
You have the option to continue accessing legacy column families via the CQL “with compact storage” option. However in
15+
most (all?) use cases the legacy compact storage option actually takes more space than the new default CQL storage
16+
option, so you’re really better off also migrating your data to the new default storage option.
1317

1418
This version of Astyanax shades its dependency on cassandra-all so you can optionally select any version
1519
of cassandra-unit you like for unit/integration testing with different versions of Cassandra. When upgrading to this
16-
verion of Astyanax you may need to:
20+
version of Astyanax you may need to:
1721
* Explicitly add any cassandra-all transitive dependencies you previously silently depended on via Astayanax transitives.
1822
* If you were using internal features of Astyanax that (unintentionally) publicly exposed cassandra-all classes,
1923
you must either:
@@ -22,6 +26,38 @@ you must either:
2226
* Option C: Switch your objects from "org.apache.cassandra" to the shaded "com.netflix.astyanax.shaded.org.apache.cassandra"
2327
package Astyanax now depends on.
2428

29+
Overview
30+
--------
31+
Astyanax is a high level Java client for [Apache Cassandra](http://cassandra.apache.org).
32+
Apache Cassandra is a highly available column oriented database.
33+
34+
Features
35+
--------
36+
A quick overview can be found at the [Netflix Tech Blog](http://techblog.netflix.com/2012/01/announcing-astyanax.html). Some features provided by this client:
37+
38+
* High level, simple object oriented interface to Cassandra.
39+
* Fail-over behavior on the client side.
40+
* Connection pool abstraction. Implementation of a round robin connection pool.
41+
* Monitoring abstraction to get event notification from the connection pool.
42+
* Complete encapsulation of the underlying Thrift API and structs.
43+
* Automatic retry of downed hosts.
44+
* Automatic discovery of additional hosts in the cluster.
45+
* Suspension of hosts for a short period of time after several timeouts.
46+
* Annotations to simplify use of composite columns.
47+
48+
49+
Documentation
50+
-------------
51+
Detailed documentation of Astyanax's features and usage can be found on the [wiki](https://github.com/Netflix/astyanax/wiki) and the [getting started guide](https://github.com/Netflix/astyanax/wiki/Getting-Started).
52+
53+
IntelliJ: currently (June 2018) IntelliJ has a bug which renders an "unfound" error for packages relocated via another
54+
module in the same project (e.g. shaded classes from astyanax-cassandra-all-shaded).
55+
This affects *only* the Astyanax project itself within IntelliJ; Astyanax still builds perfectly fine via Gradle.
56+
Astyanax users are unaffected. For more details see:
57+
58+
* [https://github.com/johnrengelman/shadow/issues/264](https://github.com/johnrengelman/shadow/issues/264)
59+
* [https://youtrack.jetbrains.com/issue/IDEA-163411](https://youtrack.jetbrains.com/issue/IDEA-163411)
60+
2561
Artifacts
2662
-------------------------------
2763

@@ -50,32 +86,6 @@ Optional artifacts
5086
|com.netflix.astyanax|astyanax-entity-mapper||
5187
|com.netflix.astyanax|astyanax-recipes|Optional implementations of some common patterns. Use at your own risk; some of these are popular but not well-suite for Cassandra for many use cases (looking at you, AllRowsReader).|
5288

53-
Features
54-
--------
55-
A quick overview can be found at the [Netflix Tech Blog](http://techblog.netflix.com/2012/01/announcing-astyanax.html). Some features provided by this client:
56-
57-
* High level, simple object oriented interface to Cassandra.
58-
* Fail-over behavior on the client side.
59-
* Connection pool abstraction. Implementation of a round robin connection pool.
60-
* Monitoring abstraction to get event notification from the connection pool.
61-
* Complete encapsulation of the underlying Thrift API and structs.
62-
* Automatic retry of downed hosts.
63-
* Automatic discovery of additional hosts in the cluster.
64-
* Suspension of hosts for a short period of time after several timeouts.
65-
* Annotations to simplify use of composite columns.
66-
67-
68-
Documentation
69-
-------------
70-
Detailed documentation of Astyanax's features and usage can be found on the [wiki](https://github.com/Netflix/astyanax/wiki) and the [getting started guide](https://github.com/Netflix/astyanax/wiki/Getting-Started).
71-
72-
IntelliJ: currently (June 2018) IntelliJ has a bug which renders an "unfound" error for packages relocated via another
73-
module in the same project (e.g. shaded classes from astyanax-cassandra-all-shaded).
74-
This affects *only* the Astyanax project itself within IntelliJ; Astyanax still builds perfectly fine via Gradle.
75-
Astyanax users are unaffected. For more details see:
76-
77-
* [https://github.com/johnrengelman/shadow/issues/264](https://github.com/johnrengelman/shadow/issues/264)
78-
* [https://youtrack.jetbrains.com/issue/IDEA-163411](https://youtrack.jetbrains.com/issue/IDEA-163411)
7989

8090
Ancient History
8191
---------------

0 commit comments

Comments
 (0)