mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-29 11:10:40 +00:00
b092234f2bdcd4d592dd4e8058229c644c6d08a1
Just saw this today during a crash when creating Materialized Views. It is still unclear why this happened. But the message says: Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: scylla: sstables/sstables.cc:2973: sstables::sstable::remove_sstable_with_temp_toc(seastar::sstring, seastar::sstring, seastar::sstring, int64_t, sstables::sstable::version_types, sstables::sstable::format_types)::<lambda()>: Assertion `tmptoc == true' failed. Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: Aborting on shard 0. Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: Backtrace: Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: 0x00000000005b4b4c Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: 0x00000000005b4df5 Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: 0x00000000005b4ea3 Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: /lib64/libpthread.so.0+0x000000000000f0ff Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: /lib64/libc.so.6+0x00000000000355f6 Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: /lib64/libc.so.6+0x0000000000036ce7 Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: /lib64/libc.so.6+0x000000000002e565 Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: /lib64/libc.so.6+0x000000000002e611 Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: 0x00000000015969d0 Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: 0x0000000001596f7a Mar 28 15:55:58 ip-172-31-24-9 scylla[14055]: 0x000000000051ca8d I can't even guess which table caused the problem, let alone which SSTable. That's because those asserts are the very first thing we do. We can discuss whether or not assert is the right behaviour (usually we can't guarantee the state is sane if that is missing, so I don't see a problem) But it would be nice to see which SSTable we are processing before we assert. Signed-off-by: Glauber Costa <glauber@scylladb.com> Message-Id: <20180328160856.10717-1-glauber@scylladb.com>
…
…
…
…
…
…
…
…
…
…
…
…
…
Scylla
Quick-start
$ git submodule update --init --recursive
$ sudo ./install-dependencies.sh
$ ./configure.py --mode=release
$ ninja-build -j4 # Assuming 4 system threads.
$ ./build/release/scylla
$ # Rejoice!
Please see HACKING.md for detailed information on building and developing Scylla.
Running Scylla
- Run Scylla
./build/release/scylla
- run Scylla with one CPU and ./tmp as data directory
./build/release/scylla --datadir tmp --commitlog-directory tmp --smp 1
- For more run options:
./build/release/scylla --help
Building Fedora RPM
As a pre-requisite, you need to install Mock on your machine:
# Install mock:
sudo yum install mock
# Add user to the "mock" group:
usermod -a -G mock $USER && newgrp mock
Then, to build an RPM, run:
./dist/redhat/build_rpm.sh
The built RPM is stored in /var/lib/mock/<configuration>/result directory.
For example, on Fedora 21 mock reports the following:
INFO: Done(scylla-server-0.00-1.fc21.src.rpm) Config(default) 20 minutes 7 seconds
INFO: Results and/or logs in: /var/lib/mock/fedora-21-x86_64/result
Building Fedora-based Docker image
Build a Docker image with:
cd dist/docker
docker build -t <image-name> .
Run the image with:
docker run -p $(hostname -i):9042:9042 -i -t <image name>
Contributing to Scylla
Description
Languages
C++
72.3%
Python
26.5%
CMake
0.3%
GAP
0.3%
Shell
0.3%