83 Collaborator |
Brandon Williams , Aleksey Yeschenko , Mick Semb Wever , Marcus Eriksson , Benedict Elliott Smith , Sam Tunnicliffe , Yuki Morishita , Benjamin Lerer , Jake Luciani , Štefan Miklošovič , Alex Petrov , Berenguer Blasi , Ekaterina Dimitrova , David Capwell , Josh McKenzie , Paulo Motta , Robert Stupp , Jason Brown , Caleb Rackliffe , Ariel Weisberg , Blake Eggleston , Yifan Cai , Francisco Guerrero , Jeff Jirsa , Stefan Podkowinski , Eric Ramirez , Jon Meredith , Chris Lohfink , Zhao Yang , Jon Haddad , Jordan West , Doug Rohrer , Joey Lynch , Vinay Chella , Andy Tolbert , Sumanth Pasupuleti , Andrew Tolbert , Eduard Tudenhöfner , Abe Ratnofsky , Saranya Krishnakumar , Kurt Greaves , Michael Kjellman , Jyothsna Konisa , Jaydeepkumar Chovatia , Deepak Vohra , Bernardo Botella , James Berragan , Yuriy Semchyshyn , jberragan , Tommy Stendahl , Patrick Bannister , Stephen Mallette , Natnael Adere , Aaron Ploetz , jkonisa , Shailaja Koppu , Romain Hardouin , Jon Haddad jon@jonhaddad.com , Zephyr Guo , Jogesh Anand , Francisco Guerrero Hernandez , Alex , jean carlo , djanand , anupshirolkar , Yuqi Gu , Yifan , Wade Chandler , Saranya , Mallika Kulkarni , Jean Carlo Rivera Ura , Jean Carlo , James Roper , James Lamb , Jacob Becker a.k.a. plastikat , Jacob Becker , Georg Dietrich , Fumiya Yamashita , Francisco , Doug , Dinesh , Anup Shirolkar , Alex Deparvu |
54 Patch |
148 Review |
f078c02cb58bddd735490b07548f7352f0eb09aa,
036750083ddbd10c34052e272e13e17b29a4eace,
5608776961c4257ce47a470607b3b3cd49ab7e49,
e995c3fcc7479e82f34721d9634093a807ff06bd,
ffa05ef24039e5ed8a9c8080ce682e3fda926583,
f7b3317379dc13aa62eb442741423a3300f0f8c6,
4e0fccc3ed1fded5ad72dfdfcad37a5ccdfc9a24,
a0c55b197b794b7fdeb2134e9ca6f6b59f541b77,
3a8300e0b86c4acfb7b7702197d36cc39ebe94bc,
3a4e00615b14275e5dac535a304add9e1cf4e4eb,
dccf53061a61e7c632669c60cd94626e405518e9,
47d4971b56d97ba8a528f7c17bfd6b11f1ababa3,
d7d00036e7bc49ceb7da7971e39063733ce50136,
cbf4da4397c2cec34d6a240b0e917a847c46b3d0,
16ef9ac37c21c4f9091cd1f3658e54abddab8ad8,
ff73c33ab78f70cd0e70280c89e8d8a46f5536d8,
174cf761f7897443080b8a840b649b7eab17ae25,
a9d1af96b515c06f56b49fd9894c3f7216aa099d,
7b61b0be88ef1fcc29646ae8bdbb05da825bc1b2,
ac1bb75867a9a878a86d9b659234f78772627287,
47a12c52a313258307ab88392f75c5866d9a2bb1,
4cb83cb81abe6990820f76c0addbd172d9f248a6,
6da5fb56c8e0777843e88359a45a461a9f9eb639,
a9ec46a613ae5602ced004935c9954638e83e735,
e16f0ed0698c5cb47ab2bb0a0b04966d5bdbcde0,
63945228fc0fabea2cfcf1f1b4d0a29ed3964107,
8a5e1cbe293ee7c83efba0d0101ada0a80cfaf00,
11496039fb18bb45407246602e31740c56d28157,
59814db54375d4002eb11403c72861765d9eb356,
5dc55e715eba6667c388da9f8f1eb7a46489b35c,
890f319142ddd3cf2692ff45ff28e71001365e96,
473e8dfd7be95815ee10502f021bd7deb8734fba,
a86780687b3ebe7d9883d81c44eb5f8cd228b2cb,
35cee51a058c1970fe15bcb06c22ef4f2b9af5ba,
c6806a06018f3702a16fc6c0aa84fd710c003b73,
18ccbb4d308c27b67a8d81a2c849dc27fc3e2b5c,
467192eb1e5b350e8b89009884b7c1acf9501470,
a519aad63ae2afe92fb957fa299401fe6493a22a,
4c1479b5f457c3a8ed0302461ef79331cc13e798,
84598f11513f4c1dc0be4d7115a47b59940a649e,
d291b2b90326c62c2df8f49098c6deb915c16460,
1ba6ef93d0721741b5f6d6d72cba3da03fe78438,
695ef5ef66eb8f1759f7dccbe199e7da863167b8,
48af78d1d4b5f285d3dd4991afd4df3101e3983a,
07cb6fea534a65152862cabc36e260c6d3776f36,
ea4b44e0ed0a4f0bbe9b18fb40ad927b49a73a32,
369355a061a24d8e36a578fd88cc8fa459e0f18c,
38cdacb2e7418e2aefbcffb1754dcd324c46028d,
c9da4b213946fc6dbe8cdcbbc2445348f14a89af,
2265e614d36198cb78134dd7463c6aa3799481ce,
30019477cb1813c5ae75bb7ff5186c2f6d02aecb,
a15ed267d1977e38ba36d061139839fad7b865f2,
d2be42dbea6fb1d9d908792788d66113960d565b,
1633cd9c6c3d88d5c66825fab76a369266509f7e |
98a0b54c4025ef21aa3fb56f1962c4771e095652,
d336dda1123af0c272c69e42b6214577e30447e1,
bb68141861e77623f0d0b13f72846651a71c1017,
a0af41f666c23a840d9df3f06729ed5fd2c06cd1,
c09d0d929baeaa02f3438313c7979ccf6b4b3c5a,
b9586501a6b6cdfe465302448018785652c9b966,
6ffa43f68b8d10ca84d4a00bf81269527b4e14df,
9c796dfb272daa3ce57a2dc5cbeadd9273e1ac72,
933137fb14d4ebfe38d0d2c8e23b765aa1c89333,
f078c02cb58bddd735490b07548f7352f0eb09aa,
aafb4d19448f12ce600dc4e84a5b181308825b32,
acd815898d1e5669e7d8ee2469808f6e8a14a7df,
4444721b6de555352bf0ac3ef7e36f94dc832f41,
145dbd1f0875ae4c54392125e09ed05153c0dd8f,
4526b3fcbde22d09065820286dd434d93ecc89ba,
a250126f0f277b43a18cb665ccd02a105271bc33,
e87a1e0c0a19c64ed2edc2d340c0f8af16776e2c,
3a6f6907314670fdb2b316db8f08ffd85da88851,
df16b3750dc2c1b6b9bcdece6f81dfd3de7ebdfa,
2043cb9fb6b25ff34afb90467b9476a09acc3933,
a41cdd64b217c451b5576abe2f455eaa7ec1f322,
77dde2a3c4b40da3d820d4852c572338acbf6dc9,
6b16b67cd4dbf8633e58c1950ced3626ff7ac92b,
42025fd73a19597220192d71585ccb8baee7ed2a,
1b04702f351861e6fef8cf64fd26f65ec90e4c70,
7637acc3d762047f2a478855eb4d239b4f314cd8,
919a8964a83511d96766c3e53ba603e77bca626c,
f293376aa8dd315a208ef2f03bdcb7a84dcc675c,
db5832120f0fe9ad799ca0b5b16bbcf6f7404580,
b0b8ab2ea2f185d1f433b071d196f40dc2a2968e,
73691944c0ff9b01679cf5a6fe5944ad4c416509,
4e47bfb3a1abb8074fb9a24f98a97dbf25806522,
c971aafb1c478a7c2b40b3e2e42143f6e2657253,
1731e2fe84c1da2a6f4b0d1f73b8fd76c88b3acd,
598a92180e2ad95b48419605d270c53497739f35,
01103111ae08b51ccd18bb1c54ac60546546d9df,
da95e4b3fb36294b5117846b8fbb8cdc01e427d5,
6cf352ea9c0c114d998da7b3e2dc6b53609a925b,
2d27c769479f877eb3af308b49d73f8e124f4703,
d497c8c9f3f9a19e0193c1c463f684b75aeb7081,
9c1bbf3ac913f9bdf7a0e0922106804af42d2c1e,
57bb806d7941f8ae44611618bb6c16e940c3279c,
b1411a43180e0085ae4741f4da567a08b5a28f17,
09f83fa023cbe57e90287e7d93560f1cb0edb4c4,
b05fe7ab010218f1fb23b3192e2aea719a9611de,
f9ddaf1841147fc284e802739ca42403aa2816ae,
0a860b9b3e66be443b2236454c0f8c97c936a6dc,
b18900a1f269e7eae88f1e84867bb2d780cde94e,
a738c580224e340f011ffa174a9f1259521120cd,
c4db3f89a9a07c45c78da9b5b3f802a6f8b51531,
781e4862faab8dd10382ec296b122592edd0f6f0,
02c6d6540c6ab108b763a639146e74e9f8d0dd40,
d069fd235f3553ef6e3267efc9cf3b9b2fe4e70e,
0e0d288ab7e87e7d4a7542c955dd06701798bd06,
cd9fd9e83f507e2bab5075399d812e3fb4368920,
95224b71e19e2b7f18596da070937291f040f695,
bf9a1d487b9ba469e8d740cf7d1cd419535a7e79,
05c70abc6350f87ed6cafbc66de8b0e46efe8e49,
f3ebc0bd1c80ec6a4dc2d2172391f94faec834be,
c0c756d201fa23fb29bf96c97b197ab4c2543326,
7b637d5c2dbfcb387fc24d4d7145f6eb1e2f2052,
d3b3dcbb353de97220a11f55391babf149410905,
4e6c0fadfe69419e0f6f7c3fa5960bdcd90d510a,
602a5eef177ac65020470cb0fcf8d88d820ab888,
ca8469ecf56b460897e6bf92824f958dcfbb1083,
0c4335d6b8b7528b0acef372687e67afb1f16714,
5459c121d5d688ec1571dd72550bd6faaeb087eb,
3a8300e0b86c4acfb7b7702197d36cc39ebe94bc,
311891f35e538f4a8be0309f6d7045fef59dee71,
dd974b4b5f7770b293fdd8e4e76d7043508abec4,
02cc5df0ed64ba1e746fdb2662f4442fa308abf4,
58a5ce14ba80a0a4eeef0f6b18e58d63113e1159,
a7f89688e5b4fdc2f8990fc42cb593da4f6a923f,
7df67eff2d66dba4bed2b4f6aeabf05144d9b057,
aa762c6d5253e0cc2947d3bf2b6149197e106036,
ed2d32612a39188d7ed561cf1a7036cdb147e3f6,
6898953b827f172e3da199c2c6878d7af9027347,
e49b25c29faf7b83fe7c566d7b1657d9f599d750,
d7d00036e7bc49ceb7da7971e39063733ce50136,
4f2fe195208197ac663b8b1225a76e1219228ced,
c49d42f318c735676d1cb8984c1dee8ae46b3c0d,
4aa022e215bcffbf84becea9253ef07b2e87a19b,
1d5e0301f36b5c0dbd8fa8b5e599d2bb413f1b4e,
76447d6f501263035bcc9978d8923ea502e60733,
505a03c77764351e1b649e8c7d73d0421e7bcc13,
85e402a7fda59110aeea181924035d69db693240,
0c97908b2f185615c0134572c4f276cd2c5a3f55,
7bdea449c320c8a47a4e253e5cf6aa854d7a968d,
f22fec927de7ac291266660c2f34de5b8cc1c695,
877b08eaf0e02542c9f6d9f8cd457a8e44b4febf,
0766f7e54182d04ecf5a15a732f5ec7951d62326,
e07d53aaec94a498028d988f7d2c7ae7e6b620d0,
4ae229f5cd270c2b43475b3f752a7b228de260ea,
65fb17a88bd096b1e952ccca31ad709759644a1b,
f83bd5ac2bbc6755213a6ad0675e7e5400c79670,
62ffb7723917768c38c9e012710c6dce509191c1,
46c33f324e5f3373d85838f364aece7ca6a6189c,
f31d1a05a1f6f85f64c9b965009db814960c4eca,
298416a7445aa50874caebc779ca3094b32f3e31,
a4053682e84a18bbff414eb89fafbed92b6a7b14,
9abeff38c4bdcd6e640642c38b5f253f0955e6b0,
85ceec8855683b8bf71e009c8ed102ec91d85a41,
06209037ea56b5a2a49615a99f1542d6ea1b2947,
5db822b71ad7278ca6443455d029dd79e22388d8,
2aeed037e0f105e72366e15afa012257e910a25d,
45f250535a5d26011ce7d71c9c09b31d758bfd7b,
f2ee3db6537005f9ae8582cecd8e29df29ac30d5,
a831b99f9123d1c2bdfd70761aca3a05446c9a4c,
946aaa7b06f2ccd697e31dcc15c29468da523311,
0448f15e3db392f2f60db332fabf6309aa3d5089,
d7aacd3fa9b7d4c4fef80f5550a2576303e29890,
2b6286b503e1223659ffb9e31b5f73200348e781,
175a083a6f3b4d5d58f3702d31ce6920af519669,
87afb85f59bdc94a7909bf02575819b6812efaf2,
84598f11513f4c1dc0be4d7115a47b59940a649e,
104835d880b4ace131e341235359606347783102,
6e80b1846c308bb13d0b700263c89f10caa17d28,
1e3bc4c3b34eae563547899645bfb3f0a1948c79,
da36c0cfb98cdf6b8d7e274780fb50454e919ac6,
38cdacb2e7418e2aefbcffb1754dcd324c46028d,
595fea7d97f0d87ac9b9a1510379a6faa6a29abf,
29317751434cd1b3a129fd4e44628b28c421c6bd,
c7d68e72daafd83657f5d427223dd6283af70128,
14485bd7ad649d9417b4320eab34631251545d0b,
2dc4b1d0077a6096d5f51aa0500159a7ec67e6d3,
5712fb486b8e49b9b136d28fe2b9915e1d081689,
e51716ee724cf4950df67eba0393b3f798b7dc00,
555e8494d3ca27a7b35aebabb1f669eede20cc53,
d75a6bae5abbf80810012a181644f240141014d5,
a242b352c28947427a9bfc30295a487017439fd9,
c73c76498b0c2b36705025de6b0b2a7bb38e758b,
87a729feb4660f57bacb2a4be73e1bb2d509578b,
8771581b255e5728a16aea84430506d6f156a589,
deebdf97ad01f23550d7d3b42d98c7bf111e2f95,
f24951ab6ea2b1e9af4013b030675c70d31adb90,
014db08a79f00ef0d94e6855779e398c9dc689c1,
82b3c0a79c9322142738a4ec2ff7d4d4c0be2370,
6f8f404535d4cff9272091f669f985ce11cee7d2,
69766bca399cc779e0f2f8e859e39f7e29a17b7a,
912fbb47fddc07afcf56f5de97e813593bfb890e,
02d9136cfa72c8990120eca0f4fe5f52587bceb5,
ee1c83722bfb1155bef762cdfb2c86034857f2d0,
cbae09ca71b9eb9a581b77c23844da21474b095a,
bd0b41fb82134844a15fbb43126424d96706d08e,
9523a38b3f1b5bc4313e2949896ddc1fff58afbe,
f0fae2deeee20df15ac1105af2163af2a7e7953d,
b87b0edd310d1ef93c507bbbb1ae51e1b0b319c6,
1633cd9c6c3d88d5c66825fab76a369266509f7e |
e51716ee724cf4950df67eba0393b3f798b7dc00 | Author: jberragan <jberragan@gmail.com>
| 2024-12-06 16:09:12-08:00
CASSANDRA-19962: CEP-44 Kafka integration for Cassandra CDC using Sidecar (#87)
This is the initial commit for CEP-44 to introduce a standalone CDC module into the Analytics project. This module provides the foundation for CDC in the Apache Cassandra Sidecar.
This module provides:
- a standalone Cdc class as the entrypoint for initializing CDC.
- pluggable interfaces for: listing and reading commit log segments for a token range, persisting and reading CDC state, providing the Cassandra table schema, optionally reading values from Cassandra.
- read and deserialize commit log mutations.
- reconcile and de-duplicate mutations across replicas.
- serialize CDC state into a binary object for persistence.
- a layer for converting Cassandra mutations into a standard consumable format.
Patch by James Berragan, Jyothsna Konisa, Yifan Cai; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-19962
Co-authored-by: James Berragan <jberragan@apple.com>
Co-authored-by: Yifan Cai <ycai@apache.org>
Co-authored-by: Jyothsna Konisa <jkonisa@apple.com>
555e8494d3ca27a7b35aebabb1f669eede20cc53 | Author: Yifan Cai <ycai@apache.org>
| 2024-08-20 17:33:35-07:00
CASSANDRA-19836: Fix NPE when writing UDT values (#74)
When UDT field values are set to null, the bulk writer throws NPE
Patch by Yifan Cai; Reviewed by Dinesh Joshi, Doug Rohrer for CASSANDRA-19836
d75a6bae5abbf80810012a181644f240141014d5 | Author: Yifan Cai <ycai@apache.org>
| 2024-08-14 13:10:15-07:00
CASSANDRA-19827: Add job_timeout_seconds writer option (#73)
Option to specify the timeout in seconds for bulk write jobs. By default, it is disabled.
When `JOB_TIMEOUT_SECONDS` is specified, a job exceeding the timeout is:
- successful when the desired consistency level is met
- a failure otherwise
Patch by Yifan Cai; Reviewed by Dinesh Joshi, Doug Rohrer for CASSANDRA-19827
a242b352c28947427a9bfc30295a487017439fd9 | Author: jberragan <jberragan@gmail.com>
| 2024-07-12 14:57:38-07:00
CASSANDRA-19748: Refactoring to introduce new cassandra-analytics-common module with minimal dependencies (#62)
- Add new module cassandra-analytics-common with no dependencies on Spark or Cassandra and minimal standard dependencies (Guava, Jackson, Commons Lang Kryo etc)
- Move standalone classes to cassandra-analytics-common module.
Some additional refactoring and clean up:
- Rename SSTableInputStream -> BufferingInputStream
- Rename SSTableSource -> CassandraFileSource
- Introduce CassandraFile interface to be the implementing class for SSTable and CommitLog.
- Generalize IStats to work across different CassandraFile types
- Rename methods in StreamScanner to make the API clearer.
- Move ComplexTypeBuffer, ListBuffer, MapBuffer, SetBuffer, UdtBuffer to standalone classes
- Delete unused classes RangeTombstone, ReplciaSet and CollectionElement.
- Remove commons lang as a dependency
- Rename Rid to RowData
Patch by James Berragan; Reviewed by Bernardo Botella, Dinesh Joshi, Francisco Guerrero, Yifan Cai, Yuriy Semchyshyn for CASSANDRA-19748
bb68141861e77623f0d0b13f72846651a71c1017 | Author: Francisco Guerrero <frank.guerrero@gmail.com>
| 2024-05-29 13:38:02-07:00
CASSANDRA-19669: Audit Log entries are missing identity for mTLS connections
Patch by Francisco Guerrero; Reviewed by Bernardo Botella, Andrew Tolbert, Dinesh Joshi for CASSANDRA-19669
a0af41f666c23a840d9df3f06729ed5fd2c06cd1 | Author: Francisco Guerrero <frank.guerrero@gmail.com>
| 2024-02-15 13:19:28-08:00
CASSANDRA-18951: Add option for MutualTlsAuthenticator to restrict the certificate validity period
In this commit, we introduce two new optional options for the `server_encryption_options`
and the `client_encryption_options`. The options are `max_certificate_validity_period` and
`certificate_validity_warn_threshold`. Both options can be configured as a duration
configuration parameter as defined by the `DurationSpec` (see CASSANDRA-15234). The resolution
for these new properties is minutes.
When specified, the certificate validation implementation will take that information
and reject certificates that are older than the maximum allowed certificate validity period,
translating into a rejection from the authenticating user.
The `certificate_validity_warn_threshold` option can be configured to emit warnings (log entries)
when the certificate exceeds the validity threshold.
patch by Francisco Guerrero; reviewed by Andy Tolbert, Abe Ratnofsky, Dinesh Joshi for CASSANDRA-18951
c09d0d929baeaa02f3438313c7979ccf6b4b3c5a | Author: Andy Tolbert <andy_tolbert@apple.com>
| 2024-01-30 16:41:54-08:00
Allow CQL client certificate authentication to work without sending an AUTHENTICATE request
patch by Andy Tolbert; reviewed by Abe Ratnofsky, Dinesh Joshi, Francisco Guerrero, Jyothsna Konisa for CASSANDRA-18857
c73c76498b0c2b36705025de6b0b2a7bb38e758b | Author: Doug Rohrer <drohrer@apple.com>
| 2023-11-20 10:54:46-05:00
CASSANDRA-19048 - Audit table properties passed through Analytics CqlUtils
The following properties have an effect on the files generated by the
bulk writer, and therefore need to be retained when cleaning the table
schema:
bloom_filter_fp_chance
cdc
compression
default_time_to_live
min_index_interval
max_index_interval
Additionally, this commit adds tests to make sure all available TTL
paths, including table default TTLs and constant/per-row options, work
as designed.
Patch by Doug Rohrer; Reviewed by Francisco Guerrero Hernandez, Yifan Cai,
Dinesh Joshi for CASSANDRA-19048
87a729feb4660f57bacb2a4be73e1bb2d509578b | Author: Saranya Krishnakumar <saranya_k@apple.com>
| 2023-11-06 13:32:01-08:00
CASSANDRA-19903: Get Sidecar port through CassandraContext
Patch by Saranya Krishnakumar; Reviewed by Dinesh Joshi, Francisco Guerrero, Josh McKenzie for CASSANDRA-19903
b9586501a6b6cdfe465302448018785652c9b966 | Author: Jon Meredith <jonmeredith@apache.org>
| 2023-09-21 16:07:29-06:00
Internode legacy SSL storage port certificate is not hot reloaded on update
patch by Jon Meredith; reviewed by Dinesh Joshi, Francisco Guerrero for CASSANDRA-18681
6ffa43f68b8d10ca84d4a00bf81269527b4e14df | Author: Francisco Guerrero <frank.guerrero@gmail.com>
| 2023-08-25 11:10:48-06:00
Support Dynamic Port Allocation for in-jvm dtest framework
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Jon Meredith, Yifan Cai for CASSANDRA-18722
f24951ab6ea2b1e9af4013b030675c70d31adb90 | Author: Yuriy Semchyshyn <yuriy@semchyshyn.com>
| 2023-08-14 14:09:12-05:00
CASSANDRA-18810: Cassandra Analytics Start-Up Validation
Patch by Yuriy Semchyshyn; Reviewed by Dinesh Joshi, Francisco Guerrero, Yifan Cai for CASSANDRA-18810
9c796dfb272daa3ce57a2dc5cbeadd9273e1ac72 | Author: Francisco Guerrero <frank.guerrero@gmail.com>
| 2023-07-28 09:26:20-07:00
Skip ColumnFamilyStore#topPartitions initialization when client or tool mode
This commit skips the initialization of `topPartitions` in `org.apache.cassandra.db.ColumnFamilyStore`
when running in client or tool mode. The `TopPartitionTracker` class will attempt to query the system
keyspace, which when running in client or tool mode will not be part of the KeyspaceMetadata. This
causes a warning to be printed out with a stacktrace that can be misleading. The warning is similar to
this:
```
WARN org.apache.cassandra.db.SystemKeyspace: Could not load stored top SIZES partitions for ...
org.apache.cassandra.db.KeyspaceNotDefinedException: keyspace system does not exist
at org.apache.cassandra.schema.Schema.validateTable(Schema.java:xxx) ~[?:?]
at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:xxx) ~[?:?]
at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:xxx) ~[?:?]
at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:xxx) ~[?:?]
at org.apache.cassandra.cql3.QueryProcessor.parseAndPrepare(QueryProcessor.java:xxx) ~[?:?]
...
```
In this commit, we check whether we run in client or tool mode, and skip initialization
of `topPartitions` in those cases.
Patch by Francisco Guerrero; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18697
82b3c0a79c9322142738a4ec2ff7d4d4c0be2370 | Author: Francisco Guerrero <frankgh@apache.org>
| 2023-07-25 12:41:10-07:00
CASSANDRA-18692 Fix bulk writes with Buffered RowBufferMode
When setting Buffered RowBufferMode as part of the `WriterOption`s,
`org.apache.cassandra.spark.bulkwriter.RecordWriter` ignores that configuration and instead
uses the batch size to determine when to finalize an SSTable and start writing a new SSTable,
if more rows are available.
In this commit, we fix `org.apache.cassandra.spark.bulkwriter.RecordWriter#checkBatchSize`
to take into account the configured `RowBufferMode`. And in specific to the case of the
`UNBUFFERED` RowBufferMode, we check then the batchSize of the SSTable during writes, and for
the case of `BUFFERED` that check will take no effect.
Co-authored-by: Doug Rohrer <doug@therohrers.org>
Patch by Francisco Guerrero, Doug Rohrer; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18692
014db08a79f00ef0d94e6855779e398c9dc689c1 | Author: James Berragan <jberragan@apple.com>
| 2023-07-19 12:23:07-07:00
CASSANDRA-18683: Add PartitionSizeTableProvider for reading the compressed and uncompressed sizes of all partitions in a table by utilizing the SSTable Index.db files
Patch by James Berragan; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18683
02d9136cfa72c8990120eca0f4fe5f52587bceb5 | Author: Francisco Guerrero <frankgh@apache.org>
| 2023-06-27 10:28:04-07:00
CASSANDRA-18631: Add Release Audit Tool (RAT) plugin to Analytics
This commit adds the Release Audit Tool (RAT) plugin to `build.gradle` which adds a new task
`rat`. This new task makes sure that the license headers are valid and present in the source
files during the `check` task.
To run the RAT plugin, you can run:
```
./gradlew rat
```
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Michael Semb Wever for CASSANDRA-18631
69766bca399cc779e0f2f8e859e39f7e29a17b7a | Author: Francisco Guerrero <frankgh@apache.org>
| 2023-06-27 10:03:56-07:00
CASSANDRA-18662: Fix cassandra-analytics-core-example
This commit fixes the `SampleCassandraJob` available under the `cassandra-analytics-core-example`
subproject.
Fix checkstyle issues
Fix serialization issue in SidecarDataTransferApi
The `sidecarClient` field in `SidecarDataTransferApi` is declared as transient,
this is causing NPEs coming from executors while trying to perform an SSTable
upload.
This commit completely avoids serializing the `dataTransferApi` field in the
`CassandraBulkWriterContext`, and lazily initializing it during the `transfer()`
method invocation. We guard the initialization to a single thread by making the
`tranfer()` method synchronized. The `SidecarDataTransferApi` can be recreated
when needed using the already serialized `clusterInfo`, `jobInfo`, and `conf`
fields.
Fix setting ROW_BUFFER_MODE to BUFFERED
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18662
9523a38b3f1b5bc4313e2949896ddc1fff58afbe | Author: jkonisa <jkonisa@apple.com>
| 2023-06-15 13:31:01-07:00
CASSANDRA-18605 Adding support for TTL & Timestamps for bulk writes
This commit introduces a new feature in Spark Bulk Writer to support writes with
constant/per_row based TTL & Timestamps.
Patch by Jyothsna Konisa; Reviewed by Dinesh Joshi, Francisco Guerrero, Yifan Cai for CASSANDRA-18605
cbae09ca71b9eb9a581b77c23844da21474b095a | Author: Francisco Guerrero <frankgh@apache.org>
| 2023-06-14 11:52:55-07:00
CASSANDRA-18600 Add NOTICE.txt file
The NOTICE.txt file is currently missing in the repository. This commit adds the file to
comply with ASF's guidance.
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Michael Semb Wever, Berenguer Blasi for CASSANDRA-18600
deebdf97ad01f23550d7d3b42d98c7bf111e2f95 | Author: Doug Rohrer <drohrer@apple.com>
| 2023-06-14 13:33:29-04:00
CASSANDRA-18759: Use in-jvm dtest framework from Sidecar for testing
This commit introduces the use of the in-jvm dtest framework for testing
Analytics workloads. It can spin up a Cassandra cluster, including the
necessary Sidecar process, to test writing to and reading from Cassandra
using the analytics library.
Additional changes made in this commit include
* Use concurrent collections in MockBulkWriterContext (Fixes flaky test StreamSessionConsistencyTest)
The StreamSessionConsistency test uses the MockBulkWriter context, but it wasn't originally used
(before this test was added) in a multi-threaded environment. Because of this, it would occasionally
throw ConcurrentModificationExceptions, which would cause the stream test to fail in a
non-deterministic way. This commit adds the use of concurrent/synchronous collections to the
MockBulkWriterContext to make sure it doesn't throw these spurious errors.
* Make the StartupValidation system thread-safe by using TreadLocals
instead of static collections, and clearing them once validation is
complete.
Patch by Doug Rohrer; Reviewed by Dinesh Joshi, Francisco Guerrero, Yifan Cai for CASSANDRA-18759
933137fb14d4ebfe38d0d2c8e23b765aa1c89333 | Author: Shailaja Koppu <s_koppu@apple.com>
| 2023-06-13 17:18:29+01:00
CIDR filtering authorizer
Patch by Shailaja Koppu, Yifan Cai; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18592
Co-Authored-By: Yifan Cai <ycai@apache.org>
f0fae2deeee20df15ac1105af2163af2a7e7953d | Author: Francisco Guerrero <frankgh@apache.org>
| 2023-06-08 12:40:22-07:00
CASSANDRA-18578 Add circleci configuration yaml for Cassandra Analytics
This commit adds the CircleCI configuration yaml to test against all the existing
profiles
- cassandra-analytics-core-spark2-2.11-jdk8
- cassandra-analytics-core-spark2-2.12-jdk8
- cassandra-analytics-core-spark3-2.12-jdk11
- cassandra-analytics-core-spark3-2.13-jdk11
Patch by Francisco Guerrero; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18578
ee1c83722bfb1155bef762cdfb2c86034857f2d0 | Author: Francisco Guerrero <frankgh@apache.org>
| 2023-06-07 12:40:50-07:00
CASSANDRA-18574: Fix sample job documentation after Sidecar changes
This commit fixes the README file with documentation to setup and run the Sample job provided in the repository.
During Sidecar review, there was a suggestion to change the yaml property `uploads_staging_dir` to `staging_dir`.
That change however was not reflected as part of the sample job README.md.
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18574
b87b0edd310d1ef93c507bbbb1ae51e1b0b319c6 | Author: Francisco Guerrero <francisco.guerrero@apple.com>
| 2023-05-23 13:56:48-07:00
CASSANDRA-18545: Provide a SecretsProvider interface to abstract the secret provisioning
This commit introduces the SecretsProvider interface that abstracts the secrets provisioning.
This way different implementations of the SecretsProvider can be used to provide SSL secrets
for the Analytics job. We provide an implementation, SslConficSecretsProvider, which provides
secrets based on the configuration for the job.
Patch by Francisco Guerrero; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-18545
f078c02cb58bddd735490b07548f7352f0eb09aa | Author: jkonisa <jkonisa@apple.com>
| 2023-05-22 22:15:22-07:00
Adding Mutual TLS authenticators for client & internode connections
Patch by Jyothsna Konisa & Dinesh Joshi; reviewed by Yifan Cai, Jon Meredith,
Yuki Morishita & Dinesh Joshi for CASSANDRA-18554
Co-Authored-By: Dinesh Joshi <djoshi@apache.org>
38cdacb2e7418e2aefbcffb1754dcd324c46028d | Author: Dinesh Joshi <djoshi@apache.org>
| 2023-05-19 15:34:05-07:00
CEP-28: Implement Bulk API endpoints and introduce the Sidecar Client to Support Cassandra Analytics
This commit implements the remaining endpoints needed to perform Bulk Analytics operations that allow
reading and writing data from Cassandra in Bulk. The new endpoints include:
- Endpoint to create snapshots
- Endpoint to clear a snapshot
- Endpoint to upload SSTable components
- Endpoint to clean up uploads for SSTable components
- Endpoint to import SSTable components
- Endpoint to retrieve gossip info
- Endpoint to retrieve the time skew for the server
- Endpoint to retrieve the ring information
Sidecar Client
Introduces the fully featured sidecar client to access Cassandra Sidecar endpoints.
It offers support for retries and Sidecar instance selection policies. The client
project itself is technology-agnostic, but we provide a vertx implementation for
the `HttpClient`. The Sidecar vertx-client can be published as a shaded-jar to be
consumed by clients where the dependencies can cause issues, especially in environments
where the dependencies are not always controlled by the consumers (for example Spark).
Patch by Doug, Francisco, Saranya, Yifan, Dinesh; reviewed by Dinesh Joshi and Yifan Cai for CASSANDRA-16222
Co-authored-by: Saranya Krishnakumar <saranya_k@apple.com>
Co-authored-by: Yifan Cai <ycai@apache.org>
Co-authored-by: Francisco Guerrero <francisco.guerrero@apple.com>
Co-authored-by: Doug Rohrer <drohrer@apple.com>
Co-authored-by: Dinesh Joshi <djoshi@apache.org>
1633cd9c6c3d88d5c66825fab76a369266509f7e | Author: Dinesh Joshi <djoshi@apache.org>
| 2023-05-19 14:57:47-07:00
CEP-28: Apache Cassandra Analytics
This is the initial commit for the Apache Cassandra Analytics project
where we support reading and writing bulk data from Apache Cassandra from
Spark.
Patch by James Berragan, Doug Rohrer; Reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-16222
Co-authored-by: James Berragan <jberragan@apple.com>
Co-authored-by: Doug Rohrer <drohrer@apple.com>
Co-authored-by: Saranya Krishnakumar <saranya_k@apple.com>
Co-authored-by: Francisco Guerrero <francisco.guerrero@apple.com>
Co-authored-by: Yifan Cai <ycai@apache.org>
Co-authored-by: Jyothsna Konisa <jkonisa@apple.com>
Co-authored-by: Yuriy Semchyshyn <ysemchyshyn@apple.com>
Co-authored-by: Dinesh Joshi <djoshi@apache.org>
1e3bc4c3b34eae563547899645bfb3f0a1948c79 | Author: Doug Rohrer <doug@therohrers.org>
| 2023-05-18 20:44:43-04:00
Add JMX utility class to in-jvm dtest to ease development of new tests using JMX
While reviewing CASSANDRA-18511, some repetitive code was identified across the 4 branches,
and 2 different tests, that would also be repeated for any new usages of the JMX support
in the in-jvm dtest framework. Therefore, a utility class should be added to the dtest-api's
`shared` package that will simplify some of this repetitive and error-prone code.
patch by Doug Rohrer; reviewed by Jon Meredith, Dinesh Joshi for CASSANDRA-18537
4444721b6de555352bf0ac3ef7e36f94dc832f41 | Author: Natnael Adere <natnael_adere@apple.com>
| 2023-03-24 09:28:37-07:00
Provide summary of failed SessionInfo's in StreamResultFuture
patch by Natnael Adere; reviewed by David Capwell, Dinesh Joshi, Jon Meredith for CASSANDRA-17199
145dbd1f0875ae4c54392125e09ed05153c0dd8f | Author: Saranya Krishnakumar <saranya_k@apple.com>
| 2022-10-19 16:58:41-07:00
Add flag to exclude nodes from local DC when running nodetool rebuild
Patch by Saranya Krishnakumar; reviewed by Dinesh Joshi, Marcus Eriksson, Yifan Cai for CASSANDRA-17870
4526b3fcbde22d09065820286dd434d93ecc89ba | Author: Josh McKenzie <jmckenzie@apache.org>
| 2022-08-16 14:19:46-04:00
Add ability to log load profiles at fixed intervals
Patch by Yifan Cai; reviewed by Josh McKenzie, Dinesh Joshi, and Chris Lohfink for CASSANDRA-17821
Co-authored-by: Yifan Cai <ycai@apache.org>
Co-authored-by: Josh McKenzie <jmckenzie@apache.org>
df16b3750dc2c1b6b9bcdece6f81dfd3de7ebdfa | Author: David Capwell <dcapwell@apache.org>
| 2022-02-04 10:15:58-08:00
When streaming sees a ClosedChannelException this triggers the disk failure policy
patch by David Capwell, Francisco Guerrero; reviewed by Caleb Rackliffe, Dinesh Joshi for CASSANDRA-17116
0448f15e3db392f2f60db332fabf6309aa3d5089 | Author: David Capwell <David Capwell>
| 2022-02-04 10:15:46-08:00
When streaming sees a ClosedChannelException this triggers the disk failure policy
patch by David Capwell, Francisco Guerrero; reviewed by Caleb Rackliffe, Dinesh Joshi for CASSANDRA-17116
a41cdd64b217c451b5576abe2f455eaa7ec1f322 | Author: Francisco Guerrero <francisco.guerrero@apple.com>
| 2021-12-14 10:13:59-08:00
Allow column_index_size_in_kb to be configurable through nodetool
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Yifan Cai for CASSANDRA-17121
77dde2a3c4b40da3d820d4852c572338acbf6dc9 | Author: Francisco Guerrero <francisco.guerrero@apple.com>
| 2021-11-09 13:32:15-08:00
Introduce separate rate limiting settings for entire SSTable streaming
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Marcus Eriksson, Yifan Cai for CASSANDRA-17065
919a8964a83511d96766c3e53ba603e77bca626c | Author: Jon Meredith <jmeredithco@apple.com>
| 2020-12-02 15:33:36-08:00
Bring back the accepted encryption protocols list as configurable option
patch by Jon Meredith; reviewed by Berenguer Blasi, David Capwell, Dinesh Joshi for CASSANDRA-13325
f293376aa8dd315a208ef2f03bdcb7a84dcc675c | Author: Jon Meredith <jmeredithco@apple.com>
| 2020-11-05 12:58:07-08:00
TLS connections to the storage port on a node without server encryption configured causes java.io.IOException accessing missing keystore
patch by Jon Meredith; reviewed by David Capwell, Dinesh Joshi for CASSANDRA-16144
db5832120f0fe9ad799ca0b5b16bbcf6f7404580 | Author: Jon Meredith <jmeredithco@apple.com>
| 2020-10-22 10:54:55-07:00
In-JVM dtest - modify schema with stopped nodes and use yaml fragments for config
patch by Jon Meredith; reviewed by Alex Petrov, David Capwell, Dinesh Joshi, Yifan Cai for CASSANDRA-16152
b0b8ab2ea2f185d1f433b071d196f40dc2a2968e | Author: Caleb Rackliffe <calebrackliffe@gmail.com>
| 2020-09-09 10:53:28-07:00
Make Table/Keyspace Metric Names Consistent With Each Other
patch by Caleb Rackliffe, Stephen Mallette; reviewed by David Capwell, Dinesh Joshi for CASSANDRA-15909
73691944c0ff9b01679cf5a6fe5944ad4c416509 | Author: Zhao Yang <zhaoyangsingapore@gmail.com>
| 2020-06-24 18:37:47+08:00
Close channel and reduce buffer allocation during entire sstable streaming with SSL
Patch by Zhao Yang; Reviewed by Caleb Rackliffe and Dinesh Joshi for CASSANDRA-15900
c971aafb1c478a7c2b40b3e2e42143f6e2657253 | Author: Caleb Rackliffe <calebrackliffe@gmail.com>
| 2020-06-16 18:29:26-05:00
Fix flaky unit test CorruptedSSTablesCompactionsTest
Generate valid long keys for the updates applied to the SSTable dataset used in CorruptedSSTablesCompactionsTest
Patch by Caleb Rackliffe; Reviewed by Dinesh Joshi and Marcus Eriksson for CASSANDRA-15879
d7aacd3fa9b7d4c4fef80f5550a2576303e29890 | Author: Zhao Yang <zhaoyangsingapore@gmail.com>
| 2020-05-11 15:51:22+08:00
Add legacy streaming test for transient replica repair tests, and test for lcs
patch by Zhao Yang; reviewed by Blake Eggleston, Dinesh Joshi, Ekaterina Dimitrova for CASSANDRA-15783
6cf352ea9c0c114d998da7b3e2dc6b53609a925b | Author: Sumanth Pasupuleti <spasupuleti.pasupuleti.is@gmail.com>
| 2020-05-06 12:03:11-07:00
Adding debug logging to indicate missing summary component file and when building Index Summary
Patch by Sumanth Pasupuleti; Reviewed by Dinesh Joshi for CASSANDRA-15755
da95e4b3fb36294b5117846b8fbb8cdc01e427d5 | Author: Yifan Cai <yifan_cai@apple.com>
| 2020-04-28 13:51:15-07:00
Add tunable initial size and growth factor to RangeTombstoneList
Added `initial_range_tombstone_list_allocation_size` and
`range_tombstone_list_growth_factor` in config, which can be altered via JMX.
Patch By Michael Kjellman and Yifan Cai; Reviewed by Dinesh Joshi for CASSANDRA-15763
Co-Authored-By: Yifan Cai <yifan_cai@apple.com>
Co-Authored-By: Michael Kjellman <kjellman@apple.com>
ffa05ef24039e5ed8a9c8080ce682e3fda926583 | Author: Dinesh A. Joshi <dinesh.joshi@apple.com>
| 2020-04-19 13:17:13-07:00
Fix CQLSH UTF-8 encoding issue for Python 2/3 compatibility
This fix also addresses test failures due to cqlsh return code behavior change
Patch by Dinesh Joshi; Reviewed by Jordan West and Mick Semb Wever for CASSANDRA-15739
35cee51a058c1970fe15bcb06c22ef4f2b9af5ba | Author: Dinesh A. Joshi <dinesh.joshi@apple.com>
| 2020-04-19 13:13:04-07:00
Fix CQLSH UTF-8 encoding issue for Python 2/3 compatibility
This fix also addresses test failures due to cqlsh return code behavior change
Patch by Dinesh Joshi; Reviewed by Jordan West and Mick Semb Wever for CASSANDRA-15739
c4db3f89a9a07c45c78da9b5b3f802a6f8b51531 | Author: Jon Meredith <jmeredithco@apple.com>
| 2020-04-17 14:17:49-06:00
Generate compiler options file to support Java11 in IDEA.
The change to JMX in CASSANDRA-15653 prevents the IDEA project from
compiling under JDK11. This change adds the required compiler flag
when the project is upgraded from Java1.8 to Java11.
Patch by Jon Meredith; Reviewed by Dinesh Joshi for CASSANDRA-15738
f9ddaf1841147fc284e802739ca42403aa2816ae | Author: Jon Meredith <jmeredithco@apple.com>
| 2020-04-09 16:59:53-06:00
Fix flaky SEPExecutor.changingMaxWorkersMeetsConcurrencyGoalsTest
Thread scheduling is not guaranteed to be fair and having the BusyWork
tasks reschedule itself makes sure there is always more work for
the SEPWorker once it finishes, so it can hog all the CPU if
run with a low number of cores. To randomize the scheduling better,
introduce a second thread that keeps the executor primed with work,
but guarantees a thread switch by waiting on the sempahore.
Also resolves a cleanup bug - the sharedPool was not being shutdown
correctly.
Patch by Jon Meredith; reviewed by David Capwell and Dinesh Joshi for CASSANDRA-15709
0e0d288ab7e87e7d4a7542c955dd06701798bd06 | Author: Jon Haddad jon@jonhaddad.com <jon@jonhaddad.com>
| 2020-04-06 12:53:27-07:00
Only track ideal CL failure when request CL met
Ideal consistency level tracking should not report a failure when requested CL
was also not met either.
Patch by Jon Haddad; Reviewed by Dinesh Joshi for CASSANDRA-15696.
02c6d6540c6ab108b763a639146e74e9f8d0dd40 | Author: Jon Meredith <jmeredithco@apple.com>
| 2020-04-02 15:31:40-06:00
Do not check cdc_raw_directory filesystem space if CDC disabled
On startup, applySimpleConfig checks disk space for cdc_raw_directory
even if cdc_enabled=false. The cdc_raw_directory could be computed
automatically from the cassandra.storagedir property so if that
has been deliberately set to an invalid directory (e.g. to force
explicit configuration of storage paths) then the server will not
start.
Additionally this protects against an NPE while checking storage
space if misconfigured.
Patch by Jon Meredith; Reviewed by Dinesh Joshi for CASSANDRA-15688
d497c8c9f3f9a19e0193c1c463f684b75aeb7081 | Author: Stephen Mallette <spmva@genoprime.com>
| 2020-03-31 13:47:44-04:00
Improved testing for batch metrics.
Refactored the test to include assertion metrics for counter batches
in addition to what was previously tested in logged and unlogged batches.
Modified tests to assert random ranges of batches, partitions and statements,
printing the seed for the Random on failure so that the error state could be
recreated.
Patch by Stephen Mallette; Reviewed by David Capwell and Dinesh Joshi for CASSANDRA-15718
b05fe7ab010218f1fb23b3192e2aea719a9611de | Author: Zhao Yang <zhaoyangsingapore@gmail.com>
| 2020-03-23 22:05:53+08:00
Optimize Zero Copy Streaming file containment check by using file sections
Patch By Zhao Yang; Reviewed by T Jake Luciani and Dinesh Joshi for CASSANDRA-15657
cd9fd9e83f507e2bab5075399d812e3fb4368920 | Author: David Capwell <dcapwell@gmail.com>
| 2020-03-11 12:06:42-07:00
Refactor repair coordinator to centralize stage change logic and improved the public facing errors
Patch by David Capwell; reviewed by Blake Eggleston, Zhao Yang, Dinesh Joshi, and Alex Petrov for CASSANDRA-15564
595fea7d97f0d87ac9b9a1510379a6faa6a29abf | Author: Jon Haddad <jon@jonhaddad.com>
| 2020-03-04 13:56:46-08:00
Improving CircleCI build reliability
Switched to Circle machine image - docker has issues with networking in tests
Fix storing of test results
Updated readme with Java 11
Upgrade vertx
Wait for vertx server startup before sending requests
Update simulacron to latest bug fix version
added spotbugs exclude config to avoid incorrect NPE error on java 11
Configure CircleCi to run tests with Java 11
Patch by Jon Haddad; Reviewed by Dinesh Joshi for CASSANDRA-15611
29317751434cd1b3a129fd4e44628b28c421c6bd | Author: Jon Haddad <jon@jonhaddad.com>
| 2020-03-03 15:24:50-08:00
Upgraded gradle and replaced FindBugs with SpotBugs.
* Upgrading from findbugs (JDK 8 only) to Spotbugs. FindBugs was abandoned
years ago and will not be updated.
* Upgraded Gradle to version 6.2.1
Patch by Jon Haddad; Reviewed by Dinesh Joshi for CASSANDRA-15610.
c7d68e72daafd83657f5d427223dd6283af70128 | Author: Jon Haddad <jon@jonhaddad.com>
| 2020-02-28 16:54:19-08:00
Improving local HealthServiceIntegrationTest reliablility
There appears to be a race condidtion with the simulacron library that causes
test failure if we don't wait long enough. This patch simply extends
the window that we can wait for a test node to come back online.
Patch by Jon Haddad; Reviewed by Dinesh Joshi for CASSANDRA-15615
7b637d5c2dbfcb387fc24d4d7145f6eb1e2f2052 | Author: Mallika Kulkarni <mallikad@google.com>
| 2020-01-14 23:55:04-08:00
Potential Overflow in DatabaseDescriptor Functions That Convert Between KB/MB & Bytes
Patch by Mallika Kulkarni; reviewed by Jordan West and Dinesh Joshi for CASSANDRA-15470
c0c756d201fa23fb29bf96c97b197ab4c2543326 | Author: Jordan West <jordanrw@gmail.com>
| 2019-12-27 12:40:15-08:00
Cleanup and improvements to IndexInfo/ColumnIndex
* Remove redundant ShallowIndexedEntry.deserializePositionAndSkip(DataInputPlus)
* Cleanup commented out debugging code in RowIndexEntry
* Move file pointer retrieval logic into RowIndexEntry.IndexSerializer
* Cleanup RowIndexEntry.IndexedEntry constructors
* Remove unnecessary IndexInfo.Serializer argument in
RIE#serialize. Using a debugger, the argument was shown to be same
instance as one referred to by the IndexedEntry instances. In the
case of ShallowIndexEntry & RowIndexEntry the argument wasn't used.
* Improve comment in ColumnIndex#addIndexBlock
* Make column_index_cache_size_in_kb a hotprop
* Add counter for IndexInfo reads from disk and move retrievals
accounting to FileIndexInfoRetriever#columnsIndex
Patch by Jordan West; reviewed by Dinesh Joshi for CASSANDRA-15469
2265e614d36198cb78134dd7463c6aa3799481ce | Author: Dinesh A. Joshi <dinesh.joshi@apple.com>
| 2019-11-24 20:37:46-08:00
RESTEasy integration with dynamically generated Swagger OpenAPI, Swagger UI and JAX-RS.
This patch introduces JAX-RS based annotation for defining APIs. It removes the manually
created api.yaml (OpenAPI spec) of the API definitions in favor of the dynamically
generated spec based on JAX-RS annotations. It also introduces Swagger UI to browse the
Sidecar APIs and to experiment with them. Finally, it updates the CircleCI workflows
such that the builds are run across both Docker and Machine images. We also gate packaging
builds on success of the compile and test builds. The rationale for running the builds
across both Docker and Machine images is that running the build on a Machine image exposed
a race condition.
Patch by Dinesh Joshi; Reviewed by Jon Haddad and Yifan Cai for CASSANDRASC-22
5459c121d5d688ec1571dd72550bd6faaeb087eb | Author: Doug Rohrer <drohrer@apple.com>
| 2019-11-18 11:39:45-05:00
Support NodeTool in dtest
patch by Doug Rohrer and Yifan Cai; reviewed by David Capwell
and Dinesh Joshi for CASSANDRA-15429
Co-Authored-By: Doug Rohrer <drohrer@apple.com>
Co-Authored-By: Yifan Cai <yifan_cai@apple.com>
9c1bbf3ac913f9bdf7a0e0922106804af42d2c1e | Author: Joseph Lynch <joe.e.lynch@gmail.com>
| 2019-11-03 16:37:18-08:00
Flush with fast compressors by default
Previously Zstd, Deflate and LZ4HC could hold up the flush thread while
flushing due to their slow compression rates. With this patch we always
default to flush with a fast compressor (default to LZ4) and then
compress into the high compression strategy during normal compactions
that follow. Note that if the existing table compressor is fast (e.g.
LZ4 or Snappy) we use that.
Patch by Joey Lynch; reviewed by Dinesh Joshi for CASSANDRA-15379
d3b3dcbb353de97220a11f55391babf149410905 | Author: yifan-c <yc25code@gmail.com>
| 2019-10-27 21:01:31-07:00
Separate exceptions for CAS write timeout exceptions caused by contention and unkown result
Patch by Yifan Cai; reviewed by Alex Petrov and Dinesh Joshi for CASSANDRA-15350
02cc5df0ed64ba1e746fdb2662f4442fa308abf4 | Author: Jon Meredith <jmeredithco@apple.com>
| 2019-10-22 09:17:21-06:00
In-JVM DTest: Set correct internode message version for upgrade test
On instance startup, if using mock internode messaging,
find out what version of internode messaging should be used
for other endpoints and configure the messaging service.
Also adds a more helpful diagnostic message when versions are
not supported.
Patch by Jon Meredith; Reviewed by Dinesh Joshi for CASSANDRA-15371
3a8300e0b86c4acfb7b7702197d36cc39ebe94bc | Author: Zephyr Guo <gzh1992n@gmail.com>
| 2019-10-18 17:15:20-07:00
Avoid deadlock during CommitLog initialization
patch by Zephyr Guo, Dinesh Joshi; reviewed by Jordan West and Dinesh Joshi for CASSANDRA-15295
Co-Authored-By: Zephyr Guo <gzh1992n@gmail.com>
Co-Authored-By: Dinesh Joshi <dinesh.joshi@apple.com>
58a5ce14ba80a0a4eeef0f6b18e58d63113e1159 | Author: Jon Meredith <jmeredithco@gmail.com>
| 2019-08-26 15:07:44-06:00
In-JVM DTest: Add network topology and tracing support
In-JVM DTest: readRepairTest - Set read repair query to CL.ALL
The current test relies on the order of nodes returned by the snitch
to include node3, which SimpleSnitch does. With support for other
snitches coming then the test should be able to handle any order
of nodes - so make sure all nodes are present.
In-JVM DTest: remove minimum messaging service calculation
Match change on trunk to resolves issue with trying to call
getMessagingVersion on nodes that are not started. Fixes
mixed version upgrades once all branches are updated.
Patch by Jon Meredith; Reviewed by Dinesh Joshi and Alex Petrov for CASSANDRA-15319
14485bd7ad649d9417b4320eab34631251545d0b | Author: Andrew Tolbert <andy_tolbert@apple.com>
| 2019-07-28 00:11:22-05:00
Read config from sidecar.config System Property instead of classpath
Alters configuration processing to read from `sidecar.config` system
property instead of using `Configurations` file resolution, which seems
to read from classpath first.
Also does the following:
* Move `conf` into `src/dist/config`. This causes the `conf` directory
to be included in the tar and zip distributions where it previously
was not.
* Don't add `conf` directory to classpath. For logging add
`-Dlogback.configuration` to arguments. Also add `logback-test.xml`
to have different logging behavior for tests.
* Copy agents into `build/install/appName/agents` directly instead of
`src/dist`. Make `copyDist` depend on `copyJolokia`. This also has
the side effect of having agents copied to the project directory, so
`bin/CassandraSidecarDaemon` works after `./gradlew build`.
* Improve logging to include full address instead of just port.
* Add generated paths to gitignore
patch by Andrew Tolbert; reviewed by Dinesh Joshi and Vinay Chella for CASSANDRA-15288
1731e2fe84c1da2a6f4b0d1f73b8fd76c88b3acd | Author: Alex <stillalex@apache.org>
| 2019-04-15 19:19:05+02:00
Several mbeans are not unregistered when dropping a keyspace and table
Patch By Alex Deparvu; Reviewed by Caleb Rackliffe, Chris Lohfink and Dinesh Joshi for CASSANDRA-14888
a15ed267d1977e38ba36d061139839fad7b865f2 | Author: Dinesh Joshi <dinesh.joshi@apple.com>
| 2019-02-18 18:16:35-08:00
C* Management process
patch by Dinesh Joshi; reviewed by jasobrown and Chris Lohfink for CASSANDRA-14395
Co-authored-by: Vinay Chella <vinaykumarcse@gmail.com>
Co-authored-by: Joey Lynch <joe.e.lynch@gmail.com>
d7d00036e7bc49ceb7da7971e39063733ce50136 | Author: Fumiya Yamashita <fyamashi@yahoo-corp.jp>
| 2019-02-12 17:03:26-08:00
Improve `nodetool status -r` speed
patch by Fumiya Yamashita; reviewed by Dinesh Joshi for CASSANDRA-14847
Co-authored-by: Fumiya Yamashita <fyamashi@yahoo-corp.jp>
Co-authored-by: Dinesh A. Joshi <dinesh.joshi@apple.com>
16ef9ac37c21c4f9091cd1f3658e54abddab8ad8 | Author: Dinesh Joshi <dinesh.joshi@apple.com>
| 2019-02-08 11:55:38-05:00
SSL Cert Hot Reloading should check for sanity of the new keystore/truststore before loading it
Patch by Dinesh Joshi; reviewed by Ariel Weisberg for CASSANDRA-14991
174cf761f7897443080b8a840b649b7eab17ae25 | Author: Dinesh A. Joshi <dinesh.joshi@apple.com>
| 2019-01-28 12:29:46+00:00
Validate token() arguments early instead of throwing NPE at execution
patch by Dinesh Joshi; reviewed by Aleksey Yeschenko and Jon Meredith
for CASSANDRA-14989
1d5e0301f36b5c0dbd8fa8b5e599d2bb413f1b4e | Author: Alex Petrov <oleksandr.petrov@gmail.com>
| 2018-11-16 19:41:58+01:00
Introduce in-jvm distributed tests
Patch by Alex Petrov and Benedict Elliott Smith; reviewed by Benedict Elliott Smith and Dinesh Joshi for CASSANDRA-14821.
Co-authored-by: Benedict Elliott Smith <benedict@apache.org>
f22fec927de7ac291266660c2f34de5b8cc1c695 | Author: Alex Petrov <oleksandr.petrov@gmail.com>
| 2018-11-16 19:41:58+01:00
Introduce in-jvm distributed tests
Patch by Alex Petrov and Benedict Elliott Smith; reviewed by Benedict Elliott Smith and Dinesh Joshi for CASSANDRA-14821.
Co-authored-by: Benedict Elliott Smith <benedict@apache.org>
84598f11513f4c1dc0be4d7115a47b59940a649e | Author: Ariel Weisberg <aweisberg@apple.com>
| 2018-10-31 16:17:17-04:00
Reenable upgrade tests
Patch by Ariel Weisberg; Reviewed by Dinesh Joshi for CASSANDRA-14421
Co-authored-by: Ariel Weisberg <aweisberg@apple.com>
Co-authored-by: Dinesh A. Joshi <dinesh.joshi@apple.com>
877b08eaf0e02542c9f6d9f8cd457a8e44b4febf | Author: Ariel Weisberg <aweisberg@apple.com>
| 2018-10-29 15:26:22-04:00
Don't write to system_distributed.repair_history, system_traces.sessions, system_traces.events in mixed version 3.X/4.0 clusters
Patch by Ariel Weisberg; Reviewed by Dinesh Joshi for CASSANDRA-14841
4cb83cb81abe6990820f76c0addbd172d9f248a6 | Author: Dinesh A. Joshi <dinesh.joshi@apple.com>
| 2018-06-27 19:18:24-07:00
OffsetAwareConfigurationLoader doesn't set ssl storage port causing bind errors in CircleCI
Patch by Dinesh Joshi; Reviewed by Ariel Weisberg for CASSANDRA-14546