Discussion:
[Twisted-Python] Silverberg CQL Driver
Jason J. W. Williams
2014-12-03 20:03:15 UTC
Permalink
Is anyone using the silverberg CQL (Cassandra) library for Twisted in
production? Just curious what people's experience with it is, since it
appears to be the most recently updated Twisted/CQL project.

-J
Christopher Armstrong
2014-12-03 20:52:39 UTC
Permalink
Yes, we use it in production in the Rackspace Otter project: https://github.com/rackerlabs/otter <https://github.com/rackerlabs/otter>

The particular file we most use it in is here: https://github.com/rackerlabs/otter/blob/master/otter/models/cass.py#L530 <https://github.com/rackerlabs/otter/blob/master/otter/models/cass.py#L530> — the connection attribute of that class is a silverberg client.

I’ve not personally touched that code but I know we've been using it in production for about a year.

-radix
Is anyone using the silverberg CQL (Cassandra) library for Twisted in production? Just curious what people's experience with it is, since it appears to be the most recently updated Twisted/CQL project.
-J
_______________________________________________
Twisted-Python mailing list
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
Jason J. W. Williams
2014-12-29 19:11:12 UTC
Permalink
Thanks radix. I noticed the README says Python >= 2.7 is a pre-req but the
changelog for 0.1.7 says "fixed incompatibility with Python 2.6". Are y'all
running it with 2.6 or 2.7?

-J

On Wed, Dec 3, 2014 at 12:52 PM, Christopher Armstrong <
Post by Christopher Armstrong
https://github.com/rackerlabs/otter
https://github.com/rackerlabs/otter/blob/master/otter/models/cass.py#L530 —
the connection attribute of that class is a silverberg client.
I’ve not personally touched that code but I know we've been using it in
production for about a year.
-radix
On Dec 3, 2014, at 2:03 PM, Jason J. W. Williams <
Is anyone using the silverberg CQL (Cassandra) library for Twisted in
production? Just curious what people's experience with it is, since it
appears to be the most recently updated Twisted/CQL project.
-J
_______________________________________________
Twisted-Python mailing list
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
_______________________________________________
Twisted-Python mailing list
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
Christopher Armstrong
2014-12-29 20:49:47 UTC
Permalink
Post by Christopher Armstrong
Is anyone using the silverberg CQL (Cassandra) library for Twisted in production? Just curious what people's experience with it is, since it appears to be the most recently updated Twisted/CQL project.
Yes, we use it in production in the Rackspace Otter project: https://github.com/rackerlabs/otter <https://github.com/rackerlabs/otter>
The particular file we most use it in is here: https://github.com/rackerlabs/otter/blob/master/otter/models/cass.py#L530 <https://github.com/rackerlabs/otter/blob/master/otter/models/cass.py#L530> — the connection attribute of that class is a silverberg client.
I’ve not personally touched that code but I know we've been using it in production for about a year.
Thanks radix. I noticed the README says Python >= 2.7 is a pre-req but the changelog for 0.1.7 says "fixed incompatibility with Python 2.6". Are y'all running it with 2.6 or 2.7?
Otter runs on Python 2.7. It looks like builds are run against 2.6 on Travis CI, but they’re in “allowed to fail” mode — but still passing 100%.

-radix
James Broadhead
2014-12-29 18:17:36 UTC
Permalink
We (***@Twitter) have been using a patched version of Telephus for 3
years now.

We've had problems in the past where it would cause problems with down and
flaky seed hosts, so ymmv.

It's available here: https://github.com/tweetdeck/Telephus
Post by Jason J. W. Williams
Is anyone using the silverberg CQL (Cassandra) library for Twisted in
production? Just curious what people's experience with it is, since it
appears to be the most recently updated Twisted/CQL project.
-J
_______________________________________________
Twisted-Python mailing list
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
Jason J. W. Williams
2014-12-29 19:11:50 UTC
Permalink
Hi James,

Have you guys tried Silverberg? Wondering if its less flakly.

-J

On Mon, Dec 29, 2014 at 10:17 AM, James Broadhead
Post by James Broadhead
years now.
We've had problems in the past where it would cause problems with down and
flaky seed hosts, so ymmv.
It's available here: https://github.com/tweetdeck/Telephus
On 3 December 2014 at 20:03, Jason J. W. Williams
Post by Jason J. W. Williams
Is anyone using the silverberg CQL (Cassandra) library for Twisted in
production? Just curious what people's experience with it is, since it
appears to be the most recently updated Twisted/CQL project.
-J
_______________________________________________
Twisted-Python mailing list
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
_______________________________________________
Twisted-Python mailing list
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
James Broadhead
2015-01-01 15:51:41 UTC
Permalink
On 29 December 2014 at 19:11, Jason J. W. Williams <
Post by Jason J. W. Williams
Hi James,
Have you guys tried Silverberg? Wondering if its less flakly.
-J
We haven't -- when I said that, I meant "on some occasions, after 3 years
of continuous use". It's a sporadic failure mode, and hasn't happened
enough times for us to investigate deeply. That said, we're in our own DC,
so the environment is pretty stable. If you're in AWS or similar, you might
want to run some testing around failure cases (let us know what you find!)
All that said, we've been very happy with it.

The likelihood is that we'll be working on migrating to Manhattan[1] rather
than trying out a new Cassandra library.
Not quite sure which way we'll go, but one option may be to write a
telephus-like wrapper around the thrift bindings.


[1]
https://blog.twitter.com/2014/manhattan-our-real-time-multi-tenant-distributed-database-for-twitter-scale
Jason J. W. Williams
2015-07-02 19:39:00 UTC
Permalink
Sorry for rewaking this thread. Finally getting around to playing with
silverberg, but having a lot of trouble getting it to talk to
Cassandra 2.1.6 (throws "unknown opcode 44" or "unknown opcode 81"
depending on whether I'm trying to use authentication or not).

Was curious if y'all ran without authentication and if you thought
this might be a 2.1.x compatibility issue?

Thank you in advance for any advice.

-J

On Thu, Jan 1, 2015 at 7:51 AM, James Broadhead
Post by James Broadhead
On 29 December 2014 at 19:11, Jason J. W. Williams
Post by Jason J. W. Williams
Hi James,
Have you guys tried Silverberg? Wondering if its less flakly.
-J
We haven't -- when I said that, I meant "on some occasions, after 3 years of
continuous use". It's a sporadic failure mode, and hasn't happened enough
times for us to investigate deeply. That said, we're in our own DC, so the
environment is pretty stable. If you're in AWS or similar, you might want to
run some testing around failure cases (let us know what you find!)
All that said, we've been very happy with it.
The likelihood is that we'll be working on migrating to Manhattan[1] rather
than trying out a new Cassandra library.
Not quite sure which way we'll go, but one option may be to write a
telephus-like wrapper around the thrift bindings.
[1]
https://blog.twitter.com/2014/manhattan-our-real-time-multi-tenant-distributed-database-for-twitter-scale
_______________________________________________
Twisted-Python mailing list
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python
Manish Tomar
2015-07-02 22:34:35 UTC
Permalink
Hi Jason,

On Thu, Jul 2, 2015 at 12:39 PM, Jason J. W. Williams
Post by Jason J. W. Williams
Sorry for rewaking this thread. Finally getting around to playing with
silverberg, but having a lot of trouble getting it to talk to
Cassandra 2.1.6 (throws "unknown opcode 44" or "unknown opcode 81"
depending on whether I'm trying to use authentication or not).
Was curious if y'all ran without authentication and if you thought
this might be a 2.1.x compatibility issue?
We [1] have been using silverber with cassandra 1.2.9 for quite
sometime now and have not tried with 2+. We currently don't use auth
but I vaguely remember testing it against 1.2.9 and it worked. It
might be a cassandra 2+ compatibility issue.

Regards,
Manish

[1] https://github.com/rackerlabs/otter

Loading...