You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2015/03/17 20:35:04 UTC
[1/6] cassandra git commit: Allow specifying the tmp dir
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.0 08147376a -> b2aa67ea2
refs/heads/cassandra-2.1 89cdfd8e0 -> 77d58f900
refs/heads/trunk 8d570fa79 -> db1cf3e08
Allow specifying the tmp dir
Patch by mshuler, reviewed by brandonwilliams for CASSANDRA-7712
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b2aa67ea
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b2aa67ea
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b2aa67ea
Branch: refs/heads/cassandra-2.0
Commit: b2aa67ea298044f4c4ad905e54963f0c03643b68
Parents: 0814737
Author: Brandon Williams <br...@apache.org>
Authored: Tue Mar 17 14:33:27 2015 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Tue Mar 17 14:33:27 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
build.xml | 2 ++
2 files changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b2aa67ea/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 65f2da4..f10a89a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.14:
+ * Allow specifying the tmp dir (CASSANDRA-7712)
* Improve compaction estimated tasks estimation (CASSANDRA-8904)
* Fix duplicate up/down messages sent to native clients (CASSANDRA-7816)
* Expose commit log archive status via JMX (CASSANDRA-8734)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b2aa67ea/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index bdbd10a..f5e14ba 100644
--- a/build.xml
+++ b/build.xml
@@ -60,6 +60,7 @@
<property name="test.long.src" value="${test.dir}/long"/>
<property name="test.pig.src" value="${test.dir}/pig"/>
<property name="dist.dir" value="${build.dir}/dist"/>
+ <property name="tmp.dir" value="${java.io.tmpdir}"/>
<property name="source.version" value="1.7"/>
<property name="target.version" value="1.7"/>
@@ -1098,6 +1099,7 @@
<jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
<jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
<jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
+ <jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
</testmacro>
</target>
[5/6] cassandra git commit: Merge branch 'cassandra-2.0' into
cassandra-2.1
Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1
Conflicts:
CHANGES.txt
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/77d58f90
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/77d58f90
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/77d58f90
Branch: refs/heads/cassandra-2.1
Commit: 77d58f900efac62c7c8dcc63c3de5ecb0fe4e343
Parents: 89cdfd8 b2aa67e
Author: Brandon Williams <br...@apache.org>
Authored: Tue Mar 17 14:34:26 2015 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Tue Mar 17 14:34:26 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
build.xml | 2 ++
2 files changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77d58f90/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 30bf698,f10a89a..6b8618b
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,50 -1,5 +1,51 @@@
-2.0.14:
+2.1.4
+ * DatabaseDescriptor throws NPE when rpc_interface is used (CASSANDRA-8839)
+ * Don't check if an sstable is live for offline compactions (CASSANDRA-8841)
+ * Don't set clientMode in SSTableLoader (CASSANDRA-8238)
+ * Fix SSTableRewriter with disabled early open (CASSANDRA-8535)
+ * Allow invalidating permissions and cache time (CASSANDRA-8722)
+ * Log warning when queries that will require ALLOW FILTERING in Cassandra 3.0
+ are executed (CASSANDRA-8418)
+ * Fix cassandra-stress so it respects the CL passed in user mode (CASSANDRA-8948)
+ * Fix rare NPE in ColumnDefinition#hasIndexOption() (CASSANDRA-8786)
+ * cassandra-stress reports per-operation statistics, plus misc (CASSANDRA-8769)
+ * Add SimpleDate (cql date) and Time (cql time) types (CASSANDRA-7523)
+ * Use long for key count in cfstats (CASSANDRA-8913)
+ * Make SSTableRewriter.abort() more robust to failure (CASSANDRA-8832)
+ * Remove cold_reads_to_omit from STCS (CASSANDRA-8860)
+ * Make EstimatedHistogram#percentile() use ceil instead of floor (CASSANDRA-8883)
+ * Fix top partitions reporting wrong cardinality (CASSANDRA-8834)
+ * Fix rare NPE in KeyCacheSerializer (CASSANDRA-8067)
+ * Pick sstables for validation as late as possible inc repairs (CASSANDRA-8366)
+ * Fix commitlog getPendingTasks to not increment (CASSANDRA-8856)
+ * Fix parallelism adjustment in range and secondary index queries
+ when the first fetch does not satisfy the limit (CASSANDRA-8856)
+ * Check if the filtered sstables is non-empty in STCS (CASSANDRA-8843)
+ * Upgrade java-driver used for cassandra-stress (CASSANDRA-8842)
+ * Fix CommitLog.forceRecycleAllSegments() memory access error (CASSANDRA-8812)
+ * Improve assertions in Memory (CASSANDRA-8792)
+ * Fix SSTableRewriter cleanup (CASSANDRA-8802)
+ * Introduce SafeMemory for CompressionMetadata.Writer (CASSANDRA-8758)
+ * 'nodetool info' prints exception against older node (CASSANDRA-8796)
+ * Ensure SSTableReader.last corresponds exactly with the file end (CASSANDRA-8750)
+ * Make SSTableWriter.openEarly more robust and obvious (CASSANDRA-8747)
+ * Enforce SSTableReader.first/last (CASSANDRA-8744)
+ * Cleanup SegmentedFile API (CASSANDRA-8749)
+ * Avoid overlap with early compaction replacement (CASSANDRA-8683)
+ * Safer Resource Management++ (CASSANDRA-8707)
+ * Write partition size estimates into a system table (CASSANDRA-7688)
+ * cqlsh: Fix keys() and full() collection indexes in DESCRIBE output
+ (CASSANDRA-8154)
+ * Show progress of streaming in nodetool netstats (CASSANDRA-8886)
+ * IndexSummaryBuilder utilises offheap memory, and shares data between
+ each IndexSummary opened from it (CASSANDRA-8757)
+ * markCompacting only succeeds if the exact SSTableReader instances being
+ marked are in the live set (CASSANDRA-8689)
+ * cassandra-stress support for varint (CASSANDRA-8882)
+ * Fix Adler32 digest for compressed sstables (CASSANDRA-8778)
+ * Add nodetool statushandoff/statusbackup (CASSANDRA-8912)
+Merged from 2.0:
+ * Allow specifying the tmp dir (CASSANDRA-7712)
* Improve compaction estimated tasks estimation (CASSANDRA-8904)
* Fix duplicate up/down messages sent to native clients (CASSANDRA-7816)
* Expose commit log archive status via JMX (CASSANDRA-8734)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77d58f90/build.xml
----------------------------------------------------------------------
diff --cc build.xml
index 4ced4e2,f5e14ba..bdb3646
--- a/build.xml
+++ b/build.xml
@@@ -1182,21 -1099,8 +1183,22 @@@
<jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
<jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
<jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
+ <jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
</testmacro>
+ <fileset dir="${test.unit.src}">
+ <exclude name="**/pig/*.java" />
+ </fileset>
+ </target>
+
+ <target name="testlist">
+ <testmacro suitename="${testlist.name}" inputdir="${test.unit.src}" filelist="${test.file.list}" poffset="${testlist.offset}" exclude="**/*.java" timeout="${test.timeout}">
+ <jvmarg value="-Dlegacy-sstable-root=${test.data}/legacy-sstables"/>
+ <jvmarg value="-Dcorrupt-sstable-root=${test.data}/corrupt-sstables"/>
+ <jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
+ <jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
+ <jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
+ <jvmarg value="-Dcassandra.config.loader=org.apache.cassandra.OffsetAwareConfigurationLoader"/>
+ </testmacro>
</target>
<!-- Use this with an FQDN for test class, and a csv list of methods like this:
[2/6] cassandra git commit: Allow specifying the tmp dir
Posted by br...@apache.org.
Allow specifying the tmp dir
Patch by mshuler, reviewed by brandonwilliams for CASSANDRA-7712
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b2aa67ea
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b2aa67ea
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b2aa67ea
Branch: refs/heads/cassandra-2.1
Commit: b2aa67ea298044f4c4ad905e54963f0c03643b68
Parents: 0814737
Author: Brandon Williams <br...@apache.org>
Authored: Tue Mar 17 14:33:27 2015 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Tue Mar 17 14:33:27 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
build.xml | 2 ++
2 files changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b2aa67ea/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 65f2da4..f10a89a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.14:
+ * Allow specifying the tmp dir (CASSANDRA-7712)
* Improve compaction estimated tasks estimation (CASSANDRA-8904)
* Fix duplicate up/down messages sent to native clients (CASSANDRA-7816)
* Expose commit log archive status via JMX (CASSANDRA-8734)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b2aa67ea/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index bdbd10a..f5e14ba 100644
--- a/build.xml
+++ b/build.xml
@@ -60,6 +60,7 @@
<property name="test.long.src" value="${test.dir}/long"/>
<property name="test.pig.src" value="${test.dir}/pig"/>
<property name="dist.dir" value="${build.dir}/dist"/>
+ <property name="tmp.dir" value="${java.io.tmpdir}"/>
<property name="source.version" value="1.7"/>
<property name="target.version" value="1.7"/>
@@ -1098,6 +1099,7 @@
<jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
<jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
<jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
+ <jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
</testmacro>
</target>
[3/6] cassandra git commit: Allow specifying the tmp dir
Posted by br...@apache.org.
Allow specifying the tmp dir
Patch by mshuler, reviewed by brandonwilliams for CASSANDRA-7712
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b2aa67ea
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b2aa67ea
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b2aa67ea
Branch: refs/heads/trunk
Commit: b2aa67ea298044f4c4ad905e54963f0c03643b68
Parents: 0814737
Author: Brandon Williams <br...@apache.org>
Authored: Tue Mar 17 14:33:27 2015 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Tue Mar 17 14:33:27 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
build.xml | 2 ++
2 files changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b2aa67ea/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 65f2da4..f10a89a 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.0.14:
+ * Allow specifying the tmp dir (CASSANDRA-7712)
* Improve compaction estimated tasks estimation (CASSANDRA-8904)
* Fix duplicate up/down messages sent to native clients (CASSANDRA-7816)
* Expose commit log archive status via JMX (CASSANDRA-8734)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b2aa67ea/build.xml
----------------------------------------------------------------------
diff --git a/build.xml b/build.xml
index bdbd10a..f5e14ba 100644
--- a/build.xml
+++ b/build.xml
@@ -60,6 +60,7 @@
<property name="test.long.src" value="${test.dir}/long"/>
<property name="test.pig.src" value="${test.dir}/pig"/>
<property name="dist.dir" value="${build.dir}/dist"/>
+ <property name="tmp.dir" value="${java.io.tmpdir}"/>
<property name="source.version" value="1.7"/>
<property name="target.version" value="1.7"/>
@@ -1098,6 +1099,7 @@
<jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
<jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
<jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
+ <jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
</testmacro>
</target>
[6/6] cassandra git commit: Merge branch 'cassandra-2.1' into trunk
Posted by br...@apache.org.
Merge branch 'cassandra-2.1' into trunk
Conflicts:
CHANGES.txt
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/db1cf3e0
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/db1cf3e0
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/db1cf3e0
Branch: refs/heads/trunk
Commit: db1cf3e084c2b36d66610e78ef89351df5d5d76a
Parents: 8d570fa 77d58f9
Author: Brandon Williams <br...@apache.org>
Authored: Tue Mar 17 14:34:59 2015 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Tue Mar 17 14:34:59 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 2 +-
build.xml | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/db1cf3e0/CHANGES.txt
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/db1cf3e0/build.xml
----------------------------------------------------------------------
diff --cc build.xml
index 3fb4240,bdb3646..c99e8f8
--- a/build.xml
+++ b/build.xml
@@@ -62,9 -60,9 +62,10 @@@
<property name="test.runners" value="1"/>
<property name="test.unit.src" value="${test.dir}/unit"/>
<property name="test.long.src" value="${test.dir}/long"/>
+ <property name="test.microbench.src" value="${test.dir}/microbench"/>
<property name="test.pig.src" value="${test.dir}/pig"/>
<property name="dist.dir" value="${build.dir}/dist"/>
+ <property name="tmp.dir" value="${java.io.tmpdir}"/>
<property name="source.version" value="1.7"/>
<property name="target.version" value="1.7"/>
[4/6] cassandra git commit: Merge branch 'cassandra-2.0' into
cassandra-2.1
Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1
Conflicts:
CHANGES.txt
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/77d58f90
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/77d58f90
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/77d58f90
Branch: refs/heads/trunk
Commit: 77d58f900efac62c7c8dcc63c3de5ecb0fe4e343
Parents: 89cdfd8 b2aa67e
Author: Brandon Williams <br...@apache.org>
Authored: Tue Mar 17 14:34:26 2015 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Tue Mar 17 14:34:26 2015 -0500
----------------------------------------------------------------------
CHANGES.txt | 1 +
build.xml | 2 ++
2 files changed, 3 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77d58f90/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 30bf698,f10a89a..6b8618b
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,50 -1,5 +1,51 @@@
-2.0.14:
+2.1.4
+ * DatabaseDescriptor throws NPE when rpc_interface is used (CASSANDRA-8839)
+ * Don't check if an sstable is live for offline compactions (CASSANDRA-8841)
+ * Don't set clientMode in SSTableLoader (CASSANDRA-8238)
+ * Fix SSTableRewriter with disabled early open (CASSANDRA-8535)
+ * Allow invalidating permissions and cache time (CASSANDRA-8722)
+ * Log warning when queries that will require ALLOW FILTERING in Cassandra 3.0
+ are executed (CASSANDRA-8418)
+ * Fix cassandra-stress so it respects the CL passed in user mode (CASSANDRA-8948)
+ * Fix rare NPE in ColumnDefinition#hasIndexOption() (CASSANDRA-8786)
+ * cassandra-stress reports per-operation statistics, plus misc (CASSANDRA-8769)
+ * Add SimpleDate (cql date) and Time (cql time) types (CASSANDRA-7523)
+ * Use long for key count in cfstats (CASSANDRA-8913)
+ * Make SSTableRewriter.abort() more robust to failure (CASSANDRA-8832)
+ * Remove cold_reads_to_omit from STCS (CASSANDRA-8860)
+ * Make EstimatedHistogram#percentile() use ceil instead of floor (CASSANDRA-8883)
+ * Fix top partitions reporting wrong cardinality (CASSANDRA-8834)
+ * Fix rare NPE in KeyCacheSerializer (CASSANDRA-8067)
+ * Pick sstables for validation as late as possible inc repairs (CASSANDRA-8366)
+ * Fix commitlog getPendingTasks to not increment (CASSANDRA-8856)
+ * Fix parallelism adjustment in range and secondary index queries
+ when the first fetch does not satisfy the limit (CASSANDRA-8856)
+ * Check if the filtered sstables is non-empty in STCS (CASSANDRA-8843)
+ * Upgrade java-driver used for cassandra-stress (CASSANDRA-8842)
+ * Fix CommitLog.forceRecycleAllSegments() memory access error (CASSANDRA-8812)
+ * Improve assertions in Memory (CASSANDRA-8792)
+ * Fix SSTableRewriter cleanup (CASSANDRA-8802)
+ * Introduce SafeMemory for CompressionMetadata.Writer (CASSANDRA-8758)
+ * 'nodetool info' prints exception against older node (CASSANDRA-8796)
+ * Ensure SSTableReader.last corresponds exactly with the file end (CASSANDRA-8750)
+ * Make SSTableWriter.openEarly more robust and obvious (CASSANDRA-8747)
+ * Enforce SSTableReader.first/last (CASSANDRA-8744)
+ * Cleanup SegmentedFile API (CASSANDRA-8749)
+ * Avoid overlap with early compaction replacement (CASSANDRA-8683)
+ * Safer Resource Management++ (CASSANDRA-8707)
+ * Write partition size estimates into a system table (CASSANDRA-7688)
+ * cqlsh: Fix keys() and full() collection indexes in DESCRIBE output
+ (CASSANDRA-8154)
+ * Show progress of streaming in nodetool netstats (CASSANDRA-8886)
+ * IndexSummaryBuilder utilises offheap memory, and shares data between
+ each IndexSummary opened from it (CASSANDRA-8757)
+ * markCompacting only succeeds if the exact SSTableReader instances being
+ marked are in the live set (CASSANDRA-8689)
+ * cassandra-stress support for varint (CASSANDRA-8882)
+ * Fix Adler32 digest for compressed sstables (CASSANDRA-8778)
+ * Add nodetool statushandoff/statusbackup (CASSANDRA-8912)
+Merged from 2.0:
+ * Allow specifying the tmp dir (CASSANDRA-7712)
* Improve compaction estimated tasks estimation (CASSANDRA-8904)
* Fix duplicate up/down messages sent to native clients (CASSANDRA-7816)
* Expose commit log archive status via JMX (CASSANDRA-8734)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/77d58f90/build.xml
----------------------------------------------------------------------
diff --cc build.xml
index 4ced4e2,f5e14ba..bdb3646
--- a/build.xml
+++ b/build.xml
@@@ -1182,21 -1099,8 +1183,22 @@@
<jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
<jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
<jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
+ <jvmarg value="-Djava.io.tmpdir=${tmp.dir}"/>
</testmacro>
+ <fileset dir="${test.unit.src}">
+ <exclude name="**/pig/*.java" />
+ </fileset>
+ </target>
+
+ <target name="testlist">
+ <testmacro suitename="${testlist.name}" inputdir="${test.unit.src}" filelist="${test.file.list}" poffset="${testlist.offset}" exclude="**/*.java" timeout="${test.timeout}">
+ <jvmarg value="-Dlegacy-sstable-root=${test.data}/legacy-sstables"/>
+ <jvmarg value="-Dcorrupt-sstable-root=${test.data}/corrupt-sstables"/>
+ <jvmarg value="-Dmigration-sstable-root=${test.data}/migration-sstables"/>
+ <jvmarg value="-Dcassandra.ring_delay_ms=1000"/>
+ <jvmarg value="-Dcassandra.tolerate_sstable_size=true"/>
+ <jvmarg value="-Dcassandra.config.loader=org.apache.cassandra.OffsetAwareConfigurationLoader"/>
+ </testmacro>
</target>
<!-- Use this with an FQDN for test class, and a csv list of methods like this: