[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/cassandra-1.1 dbf99d674 -> fa8fc22fc merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/fa8fc22f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/fa8fc22f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/fa8fc22f Branch: refs/heads/cassandra-1.1 Commit: fa8fc22fca240e1f016bbfd5ff9c54b57c0bb777 Parents: dbf99d6 ec76baf Author: Dave Brosius Authored: Fri Aug 24 00:00:59 2012 -0400 Committer: Dave Brosius Committed: Fri Aug 24 00:00:59 2012 -0400 -- .../cassandra/service/AntiEntropyService.java |6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/fa8fc22f/src/java/org/apache/cassandra/service/AntiEntropyService.java -- diff --cc src/java/org/apache/cassandra/service/AntiEntropyService.java index d76d26f,7bdeb20..0d7c1b4 --- a/src/java/org/apache/cassandra/service/AntiEntropyService.java +++ b/src/java/org/apache/cassandra/service/AntiEntropyService.java @@@ -418,7 -412,7 +418,7 @@@ public class AntiEntropyServic { try { -- FastByteArrayOutputStream bos = new FastByteArrayOutputStream(); ++FastByteArrayOutputStream bos = new FastByteArrayOutputStream(); DataOutputStream dos = new DataOutputStream(bos); SERIALIZER.serialize(request, dos, version); return new Message(FBUtilities.getBroadcastAddress(), StorageService.Verb.TREE_REQUEST, bos.toByteArray(), version); @@@ -490,7 -484,7 +490,7 @@@ { try { -- FastByteArrayOutputStream bos = new FastByteArrayOutputStream(); ++FastByteArrayOutputStream bos = new FastByteArrayOutputStream(); DataOutputStream dos = new DataOutputStream(bos); SERIALIZER.serialize(validator, dos, Gossiper.instance.getVersion(validator.request.endpoint)); return new Message(local,
[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/cassandra-1.1 3e4858271 -> 97620fef3 merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/97620fef Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/97620fef Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/97620fef Branch: refs/heads/cassandra-1.1 Commit: 97620fef3fcf208d9044a95cc8ffe86ccb1e4556 Parents: 3e48582 51a9fd1 Author: Pavel Yaskevich Authored: Thu Jul 12 01:04:12 2012 +0300 Committer: Pavel Yaskevich Committed: Thu Jul 12 01:04:12 2012 +0300 -- CHANGES.txt |1 + 1 files changed, 1 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/97620fef/CHANGES.txt -- diff --cc CHANGES.txt index cb85459,d3cca6c..01a3af1 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,139 -1,6 +1,140 @@@ -1.0.11 +1.1.3 + * update default commitlog segment size to 32MB and total commitlog + size to 32/1024 MB for 32/64 bit JVMs, respectively (CASSANDRA-4422) + * avoid using global partitioner to estimate ranges in index sstables + (CASSANDRA-4403) + * restore pre-CASSANDRA-3862 approach to removing expired tombstones + from row cache during compaction (CASSANDRA-4364) + * (stress) support for CQL prepared statements (CASSANDRA-3633) + * Correctly catch exception when Snappy cannot be loaded (CASSANDRA-4400) + * (cql3) Support ORDER BY when IN condition is given in WHERE clause (CASSANDRA-4327) + * (cql3) delete "component_index" column on DROP TABLE call (CASSANDRA-4420) + * change nanoTime() to currentTimeInMillis() in schema related code (CASSANDRA-4432) +Merged from 1.0: * allow dropping columns shadowed by not-yet-expired supercolumn or row tombstones in PrecompactedRow (CASSANDRA-4396) ++ * fix 1.0.x node join to mixed version cluster, other nodes >= 1.1 (CASSANDRA-4195) + + +1.1.2 + * Fix cleanup not deleting index entries (CASSANDRA-4379) + * Use correct partitioner when saving + loading caches (CASSANDRA-4331) + * Check schema before trying to export sstable (CASSANDRA-2760) + * Raise a meaningful exception instead of NPE when PFS encounters + an unconfigured node + no default (CASSANDRA-4349) + * fix bug in sstable blacklisting with LCS (CASSANDRA-4343) + * LCS no longer promotes tiny sstables out of L0 (CASSANDRA-4341) + * skip tombstones during hint replay (CASSANDRA-4320) + * fix NPE in compactionstats (CASSANDRA-4318) + * enforce 1m min keycache for auto (CASSANDRA-4306) + * Have DeletedColumn.isMFD always return true (CASSANDRA-4307) + * (cql3) exeption message for ORDER BY constraints said primary filter can be +an IN clause, which is misleading (CASSANDRA-4319) + * (cql3) Reject (not yet supported) creation of 2ndardy indexes on tables with + composite primary keys (CASSANDRA-4328) + * Set JVM stack size to 160k for java 7 (CASSANDRA-4275) + * cqlsh: add COPY command to load data from CSV flat files (CASSANDRA-4012) + * CFMetaData.fromThrift to throw ConfigurationException upon error (CASSANDRA-4353) + * Use CF comparator to sort indexed columns in SecondaryIndexManager + (CASSANDRA-4365) + * add strategy_options to the KSMetaData.toString() output (CASSANDRA-4248) + * (cql3) fix range queries containing unqueried results (CASSANDRA-4372) + * (cql3) allow updating column_alias types (CASSANDRA-4041) + * (cql3) Fix deletion bug (CASSANDRA-4193) + * Fix computation of overlapping sstable for leveled compaction (CASSANDRA-4321) + * Improve scrub and allow to run it offline (CASSANDRA-4321) + * Fix assertionError in StorageService.bulkLoad (CASSANDRA-4368) + * (cqlsh) add option to authenticate to a keyspace at startup (CASSANDRA-4108) + * (cqlsh) fix ASSUME functionality (CASSANDRA-4352) + * Fix ColumnFamilyRecordReader to not return progress > 100% (CASSANDRA-3942) +Merged from 1.0: + * Set gc_grace on index CF to 0 (CASSANDRA-4314) + + +1.1.1 + * allow larger cache capacities than 2GB (CASSANDRA-4150) + * add getsstables command to nodetool (CASSANDRA-4199) + * apply parent CF compaction settings to secondary index CFs (CASSANDRA-4280) + * preserve commitlog size cap when recycling segments at startup + (CASSANDRA-4201) + * (Hadoop) fix split generation regression (CASSANDRA-4259) + * ignore min/max compactions settings in LCS, while preserving + behavior that min=max=0 disables autocompaction (CASSANDRA-4233) + * log number of rows read from saved cache (CASSANDRA-4249) + * calculate exact size required for cleanup operations (CASSANDRA-1404) + * avoid blocking additional writes during flush when the commitlog + gets behind temporarily (CASSANDRA-1991) + * enable caching on index CFs based on data CF cache setting (CASSANDRA-419
[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/cassandra-1.1 bf9a72265 -> 5c3db0d10 merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5c3db0d1 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5c3db0d1 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5c3db0d1 Branch: refs/heads/cassandra-1.1 Commit: 5c3db0d1016962bfa11257bc1318d77d693609b1 Parents: bf9a722 f20badb Author: Pavel Yaskevich Authored: Thu May 3 03:52:14 2012 +0300 Committer: Pavel Yaskevich Committed: Thu May 3 03:52:14 2012 +0300 -- CHANGES.txt|5 ++ .../src/org/apache/cassandra/stress/Stress.java|7 ++- .../org/apache/cassandra/stress/StressAction.java | 34 ++- 3 files changed, 42 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/5c3db0d1/CHANGES.txt -- diff --cc CHANGES.txt index 83c171b,ad301db..a1eef54 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -1,70 -1,7 +1,75 @@@ -1.0.10 +1.1.1-dev + * Open 1 sstableScanner per level for leveled compaction (CASSANDRA-4142) + * Optimize reads when row deletion timestamps allow us to restrict + the set of sstables we check (CASSANDRA-4116) + * incremental repair by token range (CASSANDRA-3912) + * streaming commitlog backup + pitr (CASSANDRA-3690) + * avoid generating redundant compaction tasks during streaming + (CASSANDRA-4174) + * add -cf option to nodetool snapshot, and takeColumnFamilySnapshot to + StorageService mbean (CASSANDRA-556) + * optimize cleanup to drop entire sstables where possible (CASSANDRA-4079) + * optimize truncate when autosnapshot is disabled (CASSANDRA-4153) + * add support for commitlog archiving and point-in-time recovery + (CASSANDRA-3647) + * update caches to use byte[] keys to reduce memory overhead (CASSANDRA-3966) + * add column limit to cli (CASSANDRA-3012, 4098) + * clean up and optimize DataOutputBuffer, used by CQL compression and + CompositeType (CASSANDRA-4072) + * optimize commitlog checksumming (CASSANDRA-3610) + * identify and blacklist corrupted SSTables from future compactions + (CASSANDRA-2261) + * Move CfDef and KsDef validation out of thrift (CASSANDRA-4037) + * Expose repairing by a user provided range (CASSANDRA-3912) + * Add way to force the cassandra-cli to refresh it's schema (CASSANDRA-4052) + * Avoids having replicate on write tasks stacking up at CL.ONE (CASSANDRA-2889) + * (cql) Fix order by for reversed queries (CASSANDRA-4160) +Merged from 1.0: + * Fix super columns bug where cache is not updated (CASSANDRA-4190) * fix maxTimestamp to include row tombstones (CASSANDRA-4116) ++ * (CLI) properly handle quotes in create/update keyspace commands (CASSANDRA-4129) ++ * Avoids possible deadlock during bootstrap (CASSANDRA-4159) ++ * fix stress tool that hangs forever on timeout or error (CASSANDRA-4128) ++ * Fix super columns bug where cache is not updated (CASSANDRA-4190) ++ * stress tool to return appropriate exit code on failure (CASSANDRA-4188) + + +1.1.0-final + * average a reduced liveRatio estimate with the previous one (CASSANDRA-4065) + * Allow KS and CF names up to 48 characters (CASSANDRA-4157) + * fix stress build (CASSANDRA-4140) + * add time remaining estimate to nodetool compactionstats (CASSANDRA-4167) + * (cql) fix NPE in cql3 ALTER TABLE (CASSANDRA-4163) + * (cql) Add support for CL.TWO and CL.THREE in CQL (CASSANDRA-4156) + * (cql) Fix type in CQL3 ALTER TABLE preventing update (CASSANDRA-4170) + * (cql) Throw invalid exception from CQL3 on obsolete options (CASSANDRA-4171) + * (cqlsh) fix recognizing uppercase SELECT keyword (CASSANDRA-4161) + * Pig: wide row support (CASSANDRA-3909) +Merged from 1.0: * avoid streaming empty files with bulk loader if sstablewriter errors out (CASSANDRA-3946) + + +1.1-rc1 + * Include stress tool in binary builds (CASSANDRA-4103) + * (Hadoop) fix wide row iteration when last row read was deleted + (CASSANDRA-4154) + * fix read_repair_chance to really default to 0.1 in the cli (CASSANDRA-4114) + * Adds caching and bloomFilterFpChange to CQL options (CASSANDRA-4042) + * Adds posibility to autoconfigure size of the KeyCache (CASSANDRA-4087) + * fix KEYS index from skipping results (CASSANDRA-3996) + * Remove sliced_buffer_size_in_kb dead option (CASSANDRA-4076) + * make loadNewSStable preserve sstable version (CASSANDRA-4077) + * Respect 1.0 cache settings as much as possible when upgrading + (CASSANDRA-4088) + * relax path length requirement for sstable files when upgrading on + non-Windows platforms (CASSANDRA-4110) + * fix terminination of the stress.java when errors were encountered + (CASSANDRA-4128)
[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/cassandra-1.1.0 3136c2092 -> b12c34f30 merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b12c34f3 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b12c34f3 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b12c34f3 Branch: refs/heads/cassandra-1.1.0 Commit: b12c34f309cba15fb0d4187461a7065121f38e7b Parents: 3136c20 fbdf7b0 Author: Pavel Yaskevich Authored: Thu Mar 22 16:26:11 2012 +0300 Committer: Pavel Yaskevich Committed: Thu Mar 22 16:45:57 2012 +0300 -- CHANGES.txt|1 + src/java/org/apache/cassandra/db/Directories.java | 32 --- .../cassandra/db/compaction/CompactionTask.java| 32 --- 3 files changed, 44 insertions(+), 21 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/b12c34f3/CHANGES.txt -- diff --cc CHANGES.txt index 70db8e5,c1e1cfe..c770868 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -38,96 -10,9 +38,97 @@@ Merged from 1.0 * don't change manifest level for cleanup, scrub, and upgradesstables operations under LeveledCompactionStrategy (CASSANDRA-3989) * fix race leading to super columns assertion failure (CASSANDRA-3957) + * ensure that directory is selected for compaction (CASSANDRA-3985) +1.1-beta1 + * (cqlsh) + + add SOURCE and CAPTURE commands, and --file option (CASSANDRA-3479) + + add ALTER COLUMNFAMILY WITH (CASSANDRA-3523) + + bundle Python dependencies with Cassandra (CASSANDRA-3507) + + added to Debian package (CASSANDRA-3458) + + display byte data instead of erroring out on decode failure + (CASSANDRA-3874) + * add nodetool rebuild_index (CASSANDRA-3583) + * add nodetool rangekeysample (CASSANDRA-2917) + * Fix streaming too much data during move operations (CASSANDRA-3639) + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568) + * Reduce memory used by primary index sample (CASSANDRA-3743) + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765) + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805) + * add row-level isolation via SnapTree (CASSANDRA-2893) + * Optimize key count estimation when opening sstable on startup + (CASSANDRA-2988) + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577) + * add command to stop compactions (CASSANDRA-1740, 3566, 3582) + * multithreaded streaming (CASSANDRA-3494) + * removed in-tree redhat spec (CASSANDRA-3567) + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503) + * Recycle commitlog segments for improved performance + (CASSANDRA-3411, 3543, 3557, 3615) + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407) + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005) + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271) + * EACH_QUORUM is only supported for writes (CASSANDRA-3272) + * replace compactionlock use in schema migration by checking CFS.isValid + (CASSANDRA-3116) + * recognize that "SELECT first ... *" isn't really "SELECT *" (CASSANDRA-3445) + * Use faster bytes comparison (CASSANDRA-3434) + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format + (CASSANDRA-3045) + * (Hadoop) add support for KeyRange.filter + * remove assumption that keys and token are in bijection + (CASSANDRA-1034, 3574, 3604) + * always remove endpoints from delevery queue in HH (CASSANDRA-3546) + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547) + * fix potential race in AES when a repair fails (CASSANDRA-3548) + * Remove columns shadowed by a deleted container even when we cannot purge + (CASSANDRA-3538) + * Improve memtable slice iteration performance (CASSANDRA-3545) + * more efficient allocation of small bloom filters (CASSANDRA-3618) + * Use separate writer thread in SSTableSimpleUnsortedWriter (CASSANDRA-3619) + * fsync the directory after new sstable or commitlog segment are created (CASSANDRA-3250) + * fix minor issues reported by FindBugs (CASSANDRA-3658) + * global key/row caches (CASSANDRA-3143, 3849) + * optimize memtable iteration during range scan (CASSANDRA-3638) + * introduce 'crc_check_chance' in CompressionParameters to support + a checksum percentage checking chance similarly to read-repair (CASSANDRA-3611) + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667) + * fix LeveledCompactionStrategy broken because of generation pre-allocation + in LeveledManifest (CASSANDRA-3691) + * finer-grained control over data directories (CASSANDRA-2749) + * Fix ClassCastException during hinted han
[1/2] git commit: Merge from 1.0
Updated Branches: refs/heads/cassandra-1.1.0 cd806ddd2 -> c5aa781e8 Merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/c5aa781e Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/c5aa781e Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/c5aa781e Branch: refs/heads/cassandra-1.1.0 Commit: c5aa781e8568bf8b93244412d69ab68578610627 Parents: cd806dd c573c46 Author: Brandon Williams Authored: Mon Mar 19 21:42:21 2012 -0500 Committer: Brandon Williams Committed: Mon Mar 19 21:42:21 2012 -0500 -- src/java/org/apache/cassandra/tools/NodeProbe.java | 19 +- 1 files changed, 12 insertions(+), 7 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/c5aa781e/src/java/org/apache/cassandra/tools/NodeProbe.java --
[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/cassandra-1.1.0 ba7b0bddf -> 0447837b2 merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0447837b Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0447837b Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0447837b Branch: refs/heads/cassandra-1.1.0 Commit: 0447837b28603f3bd33c198c763987d84b387014 Parents: ba7b0bd ebafaeb Author: Pavel Yaskevich Authored: Wed Feb 29 21:21:49 2012 +0300 Committer: Pavel Yaskevich Committed: Wed Feb 29 21:21:53 2012 +0300 -- CHANGES.txt|1 + .../org/apache/cassandra/cli/CliHelp.yaml | 12 2 files changed, 13 insertions(+), 0 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/0447837b/CHANGES.txt -- diff --cc CHANGES.txt index 47a004c,442674e..8350252 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -25,89 -2,9 +25,90 @@@ Merged from 1.0 * always compact away deleted hints immediately after handoff (CASSANDRA-3955) * delete hints from dropped ColumnFamilies on handoff instead of erroring out (CASSANDRA-3975) + * add CompositeType ref to the CLI doc for create/update column family (CASSANDRA-3980) +1.1-beta1 + * add nodetool rebuild_index (CASSANDRA-3583) + * add nodetool rangekeysample (CASSANDRA-2917) + * Fix streaming too much data during move operations (CASSANDRA-3639) + * Nodetool and CLI connect to localhost by default (CASSANDRA-3568) + * Reduce memory used by primary index sample (CASSANDRA-3743) + * (Hadoop) separate input/output configurations (CASSANDRA-3197, 3765) + * avoid returning internal Cassandra classes over JMX (CASSANDRA-2805) + * add row-level isolation via SnapTree (CASSANDRA-2893) + * Optimize key count estimation when opening sstable on startup + (CASSANDRA-2988) + * multi-dc replication optimization supporting CL > ONE (CASSANDRA-3577) + * add command to stop compactions (CASSANDRA-1740, 3566, 3582) + * multithreaded streaming (CASSANDRA-3494) + * removed in-tree redhat spec (CASSANDRA-3567) + * "defragment" rows for name-based queries under STCS, again (CASSANDRA-2503) + * Recycle commitlog segments for improved performance + (CASSANDRA-3411, 3543, 3557, 3615) + * update size-tiered compaction to prioritize small tiers (CASSANDRA-2407) + * add message expiration logic to OutboundTcpConnection (CASSANDRA-3005) + * off-heap cache to use sun.misc.Unsafe instead of JNA (CASSANDRA-3271) + * EACH_QUORUM is only supported for writes (CASSANDRA-3272) + * replace compactionlock use in schema migration by checking CFS.isValid + (CASSANDRA-3116) + * recognize that "SELECT first ... *" isn't really "SELECT *" (CASSANDRA-3445) + * Use faster bytes comparison (CASSANDRA-3434) + * Bulk loader is no longer a fat client, (HADOOP) bulk load output format + (CASSANDRA-3045) + * (Hadoop) add support for KeyRange.filter + * remove assumption that keys and token are in bijection + (CASSANDRA-1034, 3574, 3604) + * always remove endpoints from delevery queue in HH (CASSANDRA-3546) + * fix race between cf flush and its 2ndary indexes flush (CASSANDRA-3547) + * fix potential race in AES when a repair fails (CASSANDRA-3548) + * Remove columns shadowed by a deleted container even when we cannot purge + (CASSANDRA-3538) + * Improve memtable slice iteration performance (CASSANDRA-3545) + * more efficient allocation of small bloom filters (CASSANDRA-3618) + * Use separate writer thread in SSTableSimpleUnsortedWriter (CASSANDRA-3619) + * fsync the directory after new sstable or commitlog segment are created (CASSANDRA-3250) + * fix minor issues reported by FindBugs (CASSANDRA-3658) + * global key/row caches (CASSANDRA-3143, 3849) + * optimize memtable iteration during range scan (CASSANDRA-3638) + * introduce 'crc_check_chance' in CompressionParameters to support + a checksum percentage checking chance similarly to read-repair (CASSANDRA-3611) + * a way to deactivate global key/row cache on per-CF basis (CASSANDRA-3667) + * fix LeveledCompactionStrategy broken because of generation pre-allocation + in LeveledManifest (CASSANDRA-3691) + * finer-grained control over data directories (CASSANDRA-2749) + * Fix ClassCastException during hinted handoff (CASSANDRA-3694) + * Upgrade Thrift to 0.7 (CASSANDRA-3213) + * Make stress.java insert operation to use microseconds (CASSANDRA-3725) + * Allows (internally) doing a range query with a limit of columns instead of + rows (CASSANDRA-3742) + * Allow rangeSlice queries to be start/end inclusive/exclusive (CASSANDRA-3749) + * Fix BulkLoader to support new SSTable layout and add stream + throttling to prevent an NPE
[1/2] git commit: Merge from 1.0
Updated Branches: refs/heads/cassandra-1.1 5dac2086d -> 3a4459f0a Merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/3a4459f0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/3a4459f0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/3a4459f0 Branch: refs/heads/cassandra-1.1 Commit: 3a4459f0a69d361c3c3480d7cb8b0188aef7700f Parents: 5dac208 f2a4309 Author: Brandon Williams Authored: Tue Feb 14 14:19:47 2012 -0600 Committer: Brandon Williams Committed: Tue Feb 14 14:19:47 2012 -0600 -- examples/pig/README.txt |6 -- examples/pig/example-script.pig |4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/3a4459f0/examples/pig/README.txt -- diff --cc examples/pig/README.txt index aea0a77,000..3bdbf10 mode 100644,00..100644 --- a/examples/pig/README.txt +++ b/examples/pig/README.txt @@@ -1,70 -1,0 +1,72 @@@ +A Pig storage class that reads all columns from a given ColumnFamily, or writes +properly formatted results into a ColumnFamily. + +Setup: + +First build and start a Cassandra server with the default +configuration and set the PIG_HOME and JAVA_HOME environment +variables to the location of a Pig >= 0.7.0 install and your Java +install. + +If you would like to run using the Hadoop backend, you should +also set PIG_CONF_DIR to the location of your Hadoop config. + +Finally, set the following as environment variables (uppercase, +underscored), or as Hadoop configuration variables (lowercase, dotted): +* PIG_INITIAL_ADDRESS or cassandra.thrift.address : initial address to connect to +* PIG_RPC_PORT or cassandra.thrift.port : the port thrift is listening on +* PIG_PARTITIONER or cassandra.partitioner.class : cluster partitioner + +For example, against a local node with the default settings, you'd use: +export PIG_INITIAL_ADDRESS=localhost +export PIG_RPC_PORT=9160 +export PIG_PARTITIONER=org.apache.cassandra.dht.RandomPartitioner + +These properties can be overridden with the following if you use different clusters +for input and output: +* PIG_INPUT_INITIAL_ADDRESS : initial address to connect to for reading +* PIG_INPUT_RPC_PORT : the port thrift is listening on for reading +* PIG_INPUT_PARTITIONER : cluster partitioner for reading +* PIG_OUTPUT_INITIAL_ADDRESS : initial address to connect to for writing +* PIG_OUTPUT_RPC_PORT : the port thrift is listening on for writing +* PIG_OUTPUT_PARTITIONER : cluster partitioner for writing + + +Then you can run it like this: + +examples/pig$ bin/pig_cassandra -x local example-script.pig + +This will run the test script against your Cassandra instance +and will assume that there is a MyKeyspace/MyColumnFamily with some +data in it. It will run in local mode (see pig docs for more info). + +If you'd like to get to a 'grunt>' shell prompt, run: + +examples/pig$ bin/pig_cassandra -x local + +Once the 'grunt>' shell has loaded, try a simple program like the +following, which will determine the top 50 column names: + - grunt> rows = LOAD 'cassandra://MyKeyspace/MyColumnFamily' USING CassandraStorage() AS (key, columns: bag {T: tuple(name, value)}); ++grunt> rows = LOAD 'cassandra://MyKeyspace/MyColumnFamily' USING CassandraStorage(); +grunt> cols = FOREACH rows GENERATE flatten(columns); +grunt> colnames = FOREACH cols GENERATE $0; +grunt> namegroups = GROUP colnames BY (chararray) $0; +grunt> namecounts = FOREACH namegroups GENERATE COUNT($1), group; +grunt> orderednames = ORDER namecounts BY $0; +grunt> topnames = LIMIT orderednames 50; +grunt> dump topnames; + +Slices on columns can also be specified: - grunt> rows = LOAD 'cassandra://MyKeyspace/MyColumnFamily&slice_start=C2&slice_end=C4&limit=1&reversed=true' USING CassandraStorage() AS (key, columns: bag {T: tuple(name, value)}); ++grunt> rows = LOAD 'cassandra://MyKeyspace/MyColumnFamily&slice_start=C2&slice_end=C4&limit=1&reversed=true' USING CassandraStorage(); + +Binary values for slice_start and slice_end can be escaped such as '\u0255' + +Outputting to Cassandra requires the same format from input, so the simplest example is: + +grunt> rows = LOAD 'cassandra://MyKeyspace/MyColumnFamily' USING CassandraStorage(); +grunt> STORE rows into 'cassandra://MyKeyspace/MyColumnFamily' USING CassandraStorage(); + +Which will copy the ColumnFamily. Note that the destination ColumnFamily must +already exist for this to work. ++ ++See the example in test/ to see how schema is inferred. http://git-wip-us.apache.org/repos/asf/cassandra/blob/3a4459f0/examples/pig/example-script.pig
[1/2] git commit: Merge from 1.0
Updated Branches: refs/heads/cassandra-1.1 c98edc3e8 -> 1d435db70 Merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/1d435db7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/1d435db7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/1d435db7 Branch: refs/heads/cassandra-1.1 Commit: 1d435db703d0736a90f6fb0032556eb59771 Parents: c98edc3 e48b29a Author: Brandon Williams Authored: Mon Feb 13 17:34:34 2012 -0600 Committer: Brandon Williams Committed: Mon Feb 13 17:34:34 2012 -0600 -- examples/pig/test/populate-cli.txt | 67 examples/pig/test/test_storage.pig | 22 + .../cassandra/hadoop/pig/CassandraStorage.java | 298 ++- 3 files changed, 282 insertions(+), 105 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/1d435db7/examples/pig/test/populate-cli.txt -- diff --cc examples/pig/test/populate-cli.txt index 000,000..665fba4 new file mode 100644 --- /dev/null +++ b/examples/pig/test/populate-cli.txt @@@ -1,0 -1,0 +1,67 @@@ ++create keyspace PigTest; ++use PigTest; ++create column family SomeApp with ++key_validation_class = UTF8Type and ++default_validation_class = LexicalUUIDType and ++comparator = UTF8Type and ++column_metadata = ++[ ++{column_name: name, validation_class: UTF8Type, index_type: KEYS}, ++{column_name: vote_type, validation_class: UTF8Type}, ++{column_name: rating, validation_class: IntegerType}, ++{column_name: score, validation_class: LongType}, ++{column_name: percent, validation_class: FloatType}, ++{column_name: atomic_weight, validation_class: DoubleType}, ++]; ++ ++create column family CopyOfSomeApp with ++key_validation_class = UTF8Type and ++default_validation_class = LexicalUUIDType and ++comparator = UTF8Type and ++column_metadata = ++[ ++{column_name: name, validation_class: UTF8Type, index_type: KEYS}, ++{column_name: vote_type, validation_class: UTF8Type}, ++{column_name: rating, validation_class: IntegerType}, ++{column_name: score, validation_class: LongType}, ++{column_name: percent, validation_class: FloatType}, ++{column_name: atomic_weight, validation_class: DoubleType}, ++]; ++ ++set SomeApp['foo']['name'] = 'User Foo'; ++set SomeApp['foo']['vote_type'] = 'like'; ++set SomeApp['foo']['rating'] = 8; ++set SomeApp['foo']['score'] = 125000; ++set SomeApp['foo']['percent'] = '85.0'; ++set SomeApp['foo']['atomic_weight'] = '2.7182818284590451'; ++ ++set SomeApp['bar']['name'] = 'User Bar'; ++set SomeApp['bar']['vote_type'] = 'like'; ++set SomeApp['bar']['rating'] = 9; ++set SomeApp['bar']['score'] = 15000; ++set SomeApp['bar']['percent'] = '35.0'; ++set SomeApp['bar']['atomic_weight'] = '3.1415926535897931'; ++ ++set SomeApp['baz']['name'] = 'User Baz'; ++set SomeApp['baz']['vote_type'] = 'dislike'; ++set SomeApp['baz']['rating'] = 3; ++set SomeApp['baz']['score'] = 512000; ++set SomeApp['baz']['percent'] = '95.3'; ++set SomeApp['baz']['atomic_weight'] = '1.61803399'; ++set SomeApp['baz']['extra1'] = lexicaluuid(); ++set SomeApp['baz']['extra2'] = lexicaluuid(); ++set SomeApp['baz']['extra3'] = lexicaluuid(); ++ ++set SomeApp['qux']['name'] = 'User Qux'; ++set SomeApp['qux']['vote_type'] = 'dislike'; ++set SomeApp['qux']['rating'] = 2; ++set SomeApp['qux']['score'] = 12000; ++set SomeApp['qux']['percent'] = '64.7'; ++set SomeApp['qux']['atomic_weight'] = '0.660161815846869'; ++set SomeApp['qux']['extra1'] = lexicaluuid(); ++set SomeApp['qux']['extra2'] = lexicaluuid(); ++set SomeApp['qux']['extra3'] = lexicaluuid(); ++set SomeApp['qux']['extra4'] = lexicaluuid(); ++set SomeApp['qux']['extra5'] = lexicaluuid(); ++set SomeApp['qux']['extra6'] = lexicaluuid(); ++set SomeApp['qux']['extra7'] = lexicaluuid(); http://git-wip-us.apache.org/repos/asf/cassandra/blob/1d435db7/examples/pig/test/test_storage.pig -- diff --cc examples/pig/test/test_storage.pig index 000,000..22143dc new file mode 100644 --- /dev/null +++ b/examples/pig/test/test_storage.pig @@@ -1,0 -1,0 +1,22 @@@ ++rows = LOAD 'cassandra://PigTest/SomeApp' USING CassandraStorage(); ++-- full copy ++STORE rows INTO 'cassandra://PigTest/CopyOfSomeApp' USING CassandraStorage(); ++-- single tuple ++onecol = FOREACH rows GENERATE key, percent; ++STORE onecol INTO 'cassandra://PigTest/CopyOfSomeApp' USING CassandraStorage(); ++-- bag only ++other = FOREACH rows GENERATE key, columns; ++STORE other INTO 'cassandra://PigTest/CopyOfSomeApp' USING CassandraStorage(); ++ ++ ++-- filter ++likes = FILTER rows by vote_type.value eq 'like' and rating.value > 5; ++dislikes_extras = FILTER rows by vote_typ
[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/cassandra-1.1 3459c38d7 -> e04e7698a merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e04e7698 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e04e7698 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e04e7698 Branch: refs/heads/cassandra-1.1 Commit: e04e7698a317215d6e6a2902a2456c572c0e100c Parents: 3459c38 5452883 Author: Pavel Yaskevich Authored: Tue Feb 7 18:13:43 2012 +0300 Committer: Pavel Yaskevich Committed: Tue Feb 7 18:13:43 2012 +0300 -- CHANGES.txt|2 + .../org/apache/cassandra/db/ColumnFamilyStore.java | 20 +++ .../cassandra/db/compaction/CompactionManager.java | 19 +- .../apache/cassandra/db/index/SecondaryIndex.java |8 +- .../cassandra/db/index/SecondaryIndexManager.java | 16 +++- .../apache/cassandra/db/index/keys/KeysIndex.java |5 +++ 6 files changed, 56 insertions(+), 14 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/e04e7698/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/e04e7698/src/java/org/apache/cassandra/db/ColumnFamilyStore.java -- diff --cc src/java/org/apache/cassandra/db/ColumnFamilyStore.java index c5073aa,0952ffd..afe695a --- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java +++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java @@@ -1850,10 -1940,23 +1850,30 @@@ public class ColumnFamilyStore implemen return view.sstables.isEmpty() && view.memtable.getOperations() == 0 && view.memtablesPendingFlush.isEmpty(); } +private boolean isRowCacheEnabled() +{ +return !(metadata.getCaching() == CFMetaData.Caching.NONE + || metadata.getCaching() == CFMetaData.Caching.KEYS_ONLY + || CacheService.instance.rowCache.getCapacity() == 0); +} ++ + /** + * Discard all SSTables that were created before given timestamp. Caller is responsible to obtain compactionLock. + * + * @param truncatedAt The timestamp of the truncation + *(all SSTables before that timestamp are going be marked as compacted) + */ + public void discardSSTables(long truncatedAt) + { + List truncatedSSTables = new ArrayList(); + + for (SSTableReader sstable : getSSTables()) + { + if (!sstable.newSince(truncatedAt)) + truncatedSSTables.add(sstable); + } + + if (!truncatedSSTables.isEmpty()) + markCompacted(truncatedSSTables); + } } http://git-wip-us.apache.org/repos/asf/cassandra/blob/e04e7698/src/java/org/apache/cassandra/db/compaction/CompactionManager.java -- diff --cc src/java/org/apache/cassandra/db/compaction/CompactionManager.java index c109b18,caaf6d2..c02aed2 --- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java +++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java @@@ -37,10 -37,9 +37,11 @@@ import org.apache.cassandra.concurrent. import org.apache.cassandra.config.DatabaseDescriptor; import org.apache.cassandra.config.Schema; import org.apache.cassandra.db.*; +import org.apache.cassandra.db.compaction.CompactionInfo.Holder; + import org.apache.cassandra.db.index.SecondaryIndex; import org.apache.cassandra.db.index.SecondaryIndexBuilder; import org.apache.cassandra.dht.Range; +import org.apache.cassandra.dht.Token; import org.apache.cassandra.io.sstable.*; import org.apache.cassandra.io.util.FileUtils; import org.apache.cassandra.io.util.RandomAccessReader; @@@ -1173,14 -1155,4 +1168,14 @@@ public class CompactionManager implemen } } } -} + +public void stopCompaction(String type) +{ +OperationType operation = OperationType.valueOf(type); +for (Holder holder : CompactionExecutor.getCompactions()) +{ +if (holder.getCompactionInfo().getTaskType() == operation) +holder.stop(); +} +} - } ++} http://git-wip-us.apache.org/repos/asf/cassandra/blob/e04e7698/src/java/org/apache/cassandra/db/index/SecondaryIndex.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/e04e7698/src/java/org/apache/cassandra/db/index/SecondaryIndexManager.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/e04e7698/src/java/org/apache/cassandra/db/index/keys/KeysInde
[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/trunk 2deee7a4e -> f0c0224da merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f0c0224d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f0c0224d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f0c0224d Branch: refs/heads/trunk Commit: f0c0224dac44946c6b2f12425ba9df20fccc Parents: 2deee7a f4064b5 Author: Pavel Yaskevich Authored: Mon Jan 30 19:20:39 2012 +0200 Committer: Pavel Yaskevich Committed: Mon Jan 30 19:20:39 2012 +0200 -- src/java/org/apache/cassandra/cql/CFPropDefs.java | 13 + .../cassandra/cql/CreateColumnFamilyStatement.java |5 + 2 files changed, 14 insertions(+), 4 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/f0c0224d/src/java/org/apache/cassandra/cql/CFPropDefs.java -- diff --cc src/java/org/apache/cassandra/cql/CFPropDefs.java index 5103b24,000..930494a mode 100644,00..100644 --- a/src/java/org/apache/cassandra/cql/CFPropDefs.java +++ b/src/java/org/apache/cassandra/cql/CFPropDefs.java @@@ -1,268 -1,0 +1,281 @@@ +/* + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + * + */ + +package org.apache.cassandra.cql; + +import com.google.common.collect.Sets; +import org.apache.cassandra.config.CFMetaData; +import org.apache.cassandra.config.ConfigurationException; ++import org.apache.cassandra.db.compaction.AbstractCompactionStrategy; +import org.apache.cassandra.db.marshal.AbstractType; +import org.apache.cassandra.db.marshal.TypeParser; +import org.apache.cassandra.thrift.InvalidRequestException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +public class CFPropDefs { +private static Logger logger = LoggerFactory.getLogger(CFPropDefs.class); + +public static final String KW_COMPARATOR = "comparator"; +public static final String KW_COMMENT = "comment"; +public static final String KW_READREPAIRCHANCE = "read_repair_chance"; +public static final String KW_GCGRACESECONDS = "gc_grace_seconds"; +public static final String KW_DEFAULTVALIDATION = "default_validation"; +public static final String KW_MINCOMPACTIONTHRESHOLD = "min_compaction_threshold"; +public static final String KW_MAXCOMPACTIONTHRESHOLD = "max_compaction_threshold"; +public static final String KW_REPLICATEONWRITE = "replicate_on_write"; + +public static final String KW_COMPACTION_STRATEGY_CLASS = "compaction_strategy_class"; + +// Maps CQL short names to the respective Cassandra comparator/validator class names +public static final Map comparators = new HashMap(); +public static final Set keywords = new HashSet(); +public static final Set obsoleteKeywords = new HashSet(); +public static final Set allowedKeywords = new HashSet(); + +public static final String COMPACTION_OPTIONS_PREFIX = "compaction_strategy_options"; +public static final String COMPRESSION_PARAMETERS_PREFIX = "compression_parameters"; + +static +{ +comparators.put("ascii", "AsciiType"); +comparators.put("bigint", "LongType"); +comparators.put("blob", "BytesType"); +comparators.put("boolean", "BooleanType"); +comparators.put("counter", "CounterColumnType"); +comparators.put("decimal", "DecimalType"); +comparators.put("double", "DoubleType"); +comparators.put("float", "FloatType"); +comparators.put("int", "Int32Type"); +comparators.put("text", "UTF8Type"); +comparators.put("timestamp", "DateType"); +comparators.put("uuid", "UUIDType"); +comparators.put("varchar", "UTF8Type"); +comparators.put("varint", "IntegerType"); + +keywords.add(KW_COMPARATOR); +keywords.add(KW_COMMENT); +keywords.add(KW_REA
[1/2] git commit: merge from 1.0
Updated Branches: refs/heads/trunk 488129d95 -> e1b199c05 merge from 1.0 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e1b199c0 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e1b199c0 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e1b199c0 Branch: refs/heads/trunk Commit: e1b199c054c51fa73b1d73cc4171c3e663d61dec Parents: 488129d 02346a1 Author: Jonathan Ellis Authored: Wed Dec 28 09:52:48 2011 -0600 Committer: Jonathan Ellis Committed: Wed Dec 28 09:52:48 2011 -0600 -- .../org/apache/cassandra/net/MessagingService.java |1 + .../apache/cassandra/service/StorageService.java |7 ++- 2 files changed, 7 insertions(+), 1 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/e1b199c0/src/java/org/apache/cassandra/net/MessagingService.java -- diff --cc src/java/org/apache/cassandra/net/MessagingService.java index 2d393d6,1526fa3..7511293 --- a/src/java/org/apache/cassandra/net/MessagingService.java +++ b/src/java/org/apache/cassandra/net/MessagingService.java @@@ -513,44 -463,15 +513,45 @@@ public final class MessagingService imp subscribers.add(subcriber); } -public void waitForStreaming() throws InterruptedException +public void clearCallbacksUnsafe() { -streamExecutor_.shutdown(); -streamExecutor_.awaitTermination(24, TimeUnit.HOURS); +callbacks.clear(); } -public void clearCallbacksUnsafe() +public void waitForStreaming() throws InterruptedException { -callbacks.clear(); +while (true) +{ +boolean stillWaiting = false; + +streamExecutorsLock.lock(); +try +{ +for (DebuggableThreadPoolExecutor e : streamExecutors.values()) +{ ++e.shutdown() +if (!e.isTerminated()) +{ +stillWaiting = true; +break; +} +} +} +finally +{ +streamExecutorsLock.unlock(); +} +if (stillWaiting) +{ +// Up to a second of unneeded delay is acceptable, relative to the amount of time a typical stream +// takes. +Thread.sleep(1000); +} +else +{ +break; +} +} } /** http://git-wip-us.apache.org/repos/asf/cassandra/blob/e1b199c0/src/java/org/apache/cassandra/service/StorageService.java --