Rebrand from TerrabaseDB to Skybase (#90)

Signed-off-by: Sayan Nandan <nandansayan@outlook.com>
next
Sayan Nandan 4 years ago committed by GitHub
parent 7bf17a6374
commit a3398f1d07
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -38,7 +38,7 @@ steps:
- name: push-docker-image
image: plugins/docker
settings:
repo: terrabasedb/tdb
repo: Skybase/sdb
username:
from_secret: docker_username
password:

@ -1,5 +1,5 @@
# Ignore everything else
*
# Only include the tdb binary
!target/release/tdb
# Only include the sdb binary
!target/release/sdb

@ -1,5 +1,5 @@
D-server: server/**/*
D-libtdb: libtdb/**/*
D-libsky: libsky/**/*
D-cli: cli/**/*
C-docs: ./*.md
D-build:

@ -11,7 +11,7 @@ on:
- v*
env:
IMAGE_NAME: tdb
IMAGE_NAME: sdb
BUILD: "false"
jobs:
@ -41,7 +41,7 @@ jobs:
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
repository: terrabasedb/tdb
repository: Skybase/sdb
tags: latest
tag_with_ref: true
if: env.BUILD == 'true' || github.event_name == 'create' && startsWith(github.ref, 'refs/tags/v')

@ -6,9 +6,9 @@ on:
name: Release
env:
RELEASE_TDB: tdb
RELEASE_TSH: tsh
RELEASE_BENCH: tdb-bench
RELEASE_SDB: sdb
RELEASE_SKYSH: skysh
RELEASE_BENCH: sdb-bench
RELEASE_DIR: artifacts
GITHUB_REF: "${{ github.ref }}"
WINDOWS_TARGET: x86_64-pc-windows-msvc
@ -103,27 +103,27 @@ jobs:
- name: Create Build (Linux)
if: matrix.build == 'linux'
run: |
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_TDB }} ./dist
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_TSH }} ./dist
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_SDB }} ./dist
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_SKYSH }} ./dist
mv ./target/${{ env.LINUX_TARGET }}/release/${{ env.RELEASE_BENCH }} ./dist
zip ./${{ env.RELEASE_DIR}}/tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX64_NAME }}.zip ./dist/tsh ./dist/tdb ./dist/tdb-bench -j
zip ./${{ env.RELEASE_DIR}}/sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX64_NAME }}.zip ./dist/skysh ./dist/sdb ./dist/sdb-bench -j
- name: Create Build (Windows)
if: matrix.build == 'windows'
shell: bash
run: |
mv ./target/release/${{ env.RELEASE_TDB }}.exe ./dist
mv ./target/release/${{ env.RELEASE_TSH }}.exe ./dist
mv ./target/release/${{ env.RELEASE_SDB }}.exe ./dist
mv ./target/release/${{ env.RELEASE_SKYSH }}.exe ./dist
mv ./target/release/${{ env.RELEASE_BENCH }}.exe ./dist
7z a -tzip ./${{ env.RELEASE_DIR }}/tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS64_NAME }}.zip ./dist/*
7z a -tzip ./${{ env.RELEASE_DIR }}/sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS64_NAME }}.zip ./dist/*
- name: Create Build (MacOS)
if: matrix.build == 'macos'
run: |
mv ./target/release/${{ env.RELEASE_TDB }} ./dist
mv ./target/release/${{ env.RELEASE_TSH }} ./dist
mv ./target/release/${{ env.RELEASE_SDB }} ./dist
mv ./target/release/${{ env.RELEASE_SKYSH }} ./dist
mv ./target/release/${{ env.RELEASE_BENCH }} ./dist
zip ./${{ env.RELEASE_DIR }}/tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS64_NAME }}.zip ./dist/tsh ./dist/tdb ./dist/tdb-bench -j
zip ./${{ env.RELEASE_DIR }}/sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS64_NAME }}.zip ./dist/skysh ./dist/sdb ./dist/sdb-bench -j
- name: Upload binaries
uses: actions/upload-artifact@v1
@ -174,9 +174,9 @@ jobs:
GITHUB_TOKEN: ${{ secrets.TDBB }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./linux/tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX64_NAME }}.zip
asset_path: ./linux/sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX64_NAME }}.zip
asset_content_type: application/octet-stream
asset_name: tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX64_NAME }}.zip
asset_name: sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.LINUX64_NAME }}.zip
- name: Release Windows bundle
uses: actions/upload-release-asset@v1
@ -184,9 +184,9 @@ jobs:
GITHUB_TOKEN: ${{ secrets.TDBB }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./windows/tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS64_NAME }}.zip
asset_path: ./windows/sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS64_NAME }}.zip
asset_content_type: application/octet-stream
asset_name: tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS64_NAME }}.zip
asset_name: sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.WINDOWS64_NAME }}.zip
- name: Release MacOS bundle
uses: actions/upload-release-asset@v1
@ -194,6 +194,6 @@ jobs:
GITHUB_TOKEN: ${{ secrets.TDBB }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./macos/tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS64_NAME }}.zip
asset_path: ./macos/sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS64_NAME }}.zip
asset_content_type: application/octet-stream
asset_name: tdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS64_NAME }}.zip
asset_name: sdb-bundle-${{ steps.get_version.outputs.VERSION }}-${{ env.MACOS64_NAME }}.zip

@ -1,3 +1,3 @@
# The TerrabaseDB Authors
Whenever we refer to "The TerrabaseDB Authors" or "The TDB Authors" or simply "The Authors", we are referring to:
# The Authors
Whenever we refer to "The Skybase Authors", "The Sky Authors", "The SkybaseDB Authors", "The SDB Authors", "The TerrabaseDB Authors", "The TDB Authors", or simply "The Authors", we are referring to:
- Sayan (ohsayan at outlook dot com)

@ -53,7 +53,7 @@ This release adds the following actions:
> No breaking changes
This release adds `BGSAVE` for automated background saving (see [#11](https://github.com/terrabasedb/terrabasedb/issues/21))
This release adds `BGSAVE` for automated background saving (see [#11](https://github.com/skybasedb/skybase/issues/21))
## Version 0.4.1 [2020-09-06]

@ -1,7 +1,7 @@
# Individual Contributor License Agreement
Adapted from http://www.apache.org/licenses/icla.txt © The Apache Software Foundation
Thank you for your interest in contributing to the Terrabase database. In order to clarify the intellectual property license granted with Contributions from any person or entity, the Author (Sayan Nandan) must have a Contributor License Agreement ("CLA") on file that has been signed by each Contributor, indicating agreement to the license terms below. This license is for your protection as a Contributor as well as the protection of the Author and its users; it does not change your rights to use your own Contributions for any other purpose.
Thank you for your interest in contributing to Skybase. In order to clarify the intellectual property license granted with Contributions from any person or entity, the Author (Sayan Nandan) must have a Contributor License Agreement ("CLA") on file that has been signed by each Contributor, indicating agreement to the license terms below. This license is for your protection as a Contributor as well as the protection of the Author and its users; it does not change your rights to use your own Contributions for any other purpose.
You accept and agree to the following terms and conditions for Your present and future Contributions submitted to the Author. In return, the Author shall not use Your Contributions in a way that is contrary to the public benefit or inconsistent with its bylaws in effect at the time of the Contribution. Except for the license granted herein to the Author and recipients of software distributed by the Author, You reserve all right, title, and interest in and to Your Contributions.

@ -33,18 +33,18 @@ In other cases, use the C style.
### Parts of the project
* `ci` , `.github` : CI scripts (which, under normal circumstances, don't need to be modified)
* `cli` : Source for `tsh` which is the command-line client for TDB
* `cli` : Source for `skysh` which is the command-line client for Skybase
* `examples` : Example configuration files
* `libtdb` : This contains functions, structs, ... used by both the `cli` and the
* `server` : Source for the main database server `tdb`
* `tdb-bench` : The source for the benchmarking tool resides here
* `tdb-macros` : The source for custom compiler macros used by TerrabaseDB
* `libsky` : This contains functions, structs, ... used by both the `cli` and the
* `server` : Source for the main database server ``
* `sky-bench` : The source for the benchmarking tool resides here
* `sky-macros` : The source for custom compiler macros used by Skybase
### Jargon
Each project has its own jargon — and so do we!
* _actiondoc_ and _actions docs_ : This refers to the `actions.jsonc` file, which is used by the TerrabaseDB documentation website for automatically building documentation for the actions
* _actiondoc_ and _actions docs_ : This refers to the `actions.jsonc` file, which is used by the Skybase documentation website for automatically building documentation for the actions
### Branches

124
Cargo.lock generated

@ -314,7 +314,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "89203f3fba0a3795506acaad8ebce3c80c0af93f994d5a1d7a0b1eeb23271929"
[[package]]
name = "libtdb"
name = "libsky"
version = "0.5.0"
dependencies = [
"bytes",
@ -625,6 +625,31 @@ version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
[[package]]
name = "sdb"
version = "0.5.0"
dependencies = [
"bincode",
"bytes",
"chrono",
"clap",
"env_logger",
"futures",
"jemallocator",
"lazy_static",
"libsky",
"log",
"openssl",
"parking_lot",
"regex",
"serde",
"serde_derive",
"sky_macros",
"tokio",
"tokio-openssl",
"toml",
]
[[package]]
name = "serde"
version = "1.0.123"
@ -665,6 +690,42 @@ dependencies = [
"libc",
]
[[package]]
name = "sky-bench"
version = "0.5.0"
dependencies = [
"clap",
"devtimer",
"libsky",
"rand",
"serde",
"serde_json",
]
[[package]]
name = "sky_macros"
version = "0.5.0"
dependencies = [
"proc-macro2",
"quote",
"rand",
"syn",
]
[[package]]
name = "skysh"
version = "0.5.0"
dependencies = [
"bytes",
"clap",
"lazy_static",
"libsky",
"openssl",
"regex",
"tokio",
"tokio-openssl",
]
[[package]]
name = "slab"
version = "0.4.2"
@ -705,53 +766,6 @@ dependencies = [
"unicode-xid",
]
[[package]]
name = "tdb"
version = "0.5.0"
dependencies = [
"bincode",
"bytes",
"chrono",
"clap",
"env_logger",
"futures",
"jemallocator",
"lazy_static",
"libtdb",
"log",
"openssl",
"parking_lot",
"regex",
"serde",
"serde_derive",
"tdb_macros",
"tokio",
"tokio-openssl",
"toml",
]
[[package]]
name = "tdb-bench"
version = "0.5.0"
dependencies = [
"clap",
"devtimer",
"libtdb",
"rand",
"serde",
"serde_json",
]
[[package]]
name = "tdb_macros"
version = "0.5.0"
dependencies = [
"proc-macro2",
"quote",
"rand",
"syn",
]
[[package]]
name = "termcolor"
version = "1.1.2"
@ -842,20 +856,6 @@ dependencies = [
"serde",
]
[[package]]
name = "tsh"
version = "0.5.0"
dependencies = [
"bytes",
"clap",
"lazy_static",
"libtdb",
"openssl",
"regex",
"tokio",
"tokio-openssl",
]
[[package]]
name = "unicode-width"
version = "0.1.8"

@ -2,9 +2,9 @@
members = [
"cli",
"server",
"libtdb",
"tdb-bench",
"tdb-macros"
"libsky",
"sky-bench",
"sky-macros"
]
[profile.release]

@ -1,11 +1,11 @@
#
# The Dockerfile for the TerrabaseDB server tdb
# The Dockerfile for the Skybase server sdb
#
FROM debian:stable
COPY target/release/tdb /usr/local/bin
COPY target/release/sdb /usr/local/bin
CMD ["tdb", "-h", "0.0.0.0", "-p", "2003"]
CMD ["sdb", "-h", "0.0.0.0", "-p", "2003"]
EXPOSE 2003/tcp

@ -1,26 +1,27 @@
<html>
<div align="center">
<img src="https://raw.githubusercontent.com/terrabasedb/docs/master/docs/assets/img/favicon.ico" height=64 width=64 style="float:left">
<h1>Terrabase<b>DB</b></h1><h3>The next-generation NoSQL database</h3>
<img src="assets/logo.jpg" height=64 width=64>
<h1>Skybase</h1><h3>The next-generation NoSQL database</h3>
![GitHub Workflow Status](https://img.shields.io/github/workflow/status/terrabasedb/terrabasedb/Test%20(push)) ![GitHub Workflow Status](https://img.shields.io/github/workflow/status/terrabasedb/terrabasedb/Sync%20with%20mirrors?label=mirror%20sync) ![Status: Alpha](https://img.shields.io/badge/status-alpha-critical?style=flat-square) ![Development](https://img.shields.io/badge/development-regular-32CD32?style=flat-square) ![GitHub release (latest SemVer including pre-releases)](https://img.shields.io/github/v/release/terrabasedb/terrabasedb?include_prereleases&sort=semver&style=flat-square)
[![Docker Pulls](https://img.shields.io/docker/pulls/terrabasedb/tdb?style=flat-square)](https://hub.docker.com/r/terrabasedb/tdb)
![GitHub Workflow Status](https://img.shields.io/github/workflow/status/skybasedb/skybase/Test%20(push)) ![GitHub Workflow Status](https://img.shields.io/github/workflow/status/skybasedb/skybase/Sync%20with%20mirrors?label=mirror%20sync) ![Status: Alpha](https://img.shields.io/badge/status-alpha-critical?style=flat-square) ![Development](https://img.shields.io/badge/development-regular-32CD32?style=flat-square) ![GitHub release (latest SemVer including pre-releases)](https://img.shields.io/github/v/release/skybasedb/skybase?include_prereleases&sort=semver&style=flat-square)
[![Docs](https://img.shields.io/badge/readthedocs-here-blueviolet?style=flat-square)](https://terrabasedb.github.io/docs) [![Contribute Now](https://img.shields.io/badge/%F0%9F%8C%9Fcontribute-now-a94064)](https://ohsayan.github.io/thanks)
</div>
</html>
## What is TerrabaseDB?
## What is Skybase?
TerrabaseDB (or TDB for short) is an effort to provide the best of key/value stores, document stores and columnar databases, that is, **simplicity, flexibility and queryability at scale**. TDB is curently in an alpha stage, but can be used as a **performant**, **secure** and **persistent key-value store**.
Skybase (or SkybaseDB/SDB) is an effort to provide the best of key/value stores, document stores and columnar databases, that is, **simplicity, flexibility and queryability at scale**. The name 'Skybase' exemplifies our vision to create a database that has limitless possibilities. Skybase was previously known as TerrabaseDB.
Skybase is curently in an alpha stage, but can be used as a **performant**, **secure** and **persistent key-value store**.
## Getting started 🚀
1. Download a bundle for your platform from [here ⬇️ ](https://github.com/terrabasedb/terrabasedb/releases)
1. Download a bundle for your platform from [here ⬇️ ](https://github.com/skybasedb/skybase/releases)
2. Unzip the bundle
3. Make the files executable (run `chmod +x tdb tsh` on *nix systems)
4. First run `tdb` to start the database server and then run `tsh` to start the interactive shell
5. Run commands like: `SET foo bar` , `GET bar` , `UPDATE cat mitten` or `DEL proprietary` 🤪 on `tsh` !
3. Make the files executable (run `chmod +x sdb skysh` on *nix systems)
4. First run `sdb` to start the database server and then run `skysh` to start the interactive shell
5. Run commands like: `SET foo bar` , `GET bar` , `UPDATE cat mitten` or `DEL proprietary` 🤪 on `skysh` !
You can learn more about installation [here](https://terrabasedb.github.io/docs/Getting-Started/)
@ -29,12 +30,12 @@ You can learn more about installation [here](https://terrabasedb.github.io/docs/
* **Insanely fast**: Scale to millions of queries per second per node
* **Key/value store**: `GET` , `SET` , `UPDATE` and [all that stuff](https://terrabasedb.github.io/docs/List-Of-Actions)
* **Snapshots**: Automated (and tunable) snapshots for stress-free backups
* **Secure**: Secure connections are built into TDB with SSL/TLS
* **Secure**: Secure connections are built into Skybase with SSL/TLS
* **Multithreaded**: Designed to exploit all CPU cores
* **Resource friendly**: The database server doesn't need more than 1MB to run
* **Convenient**: Without the setup hassle and system-specific dependencies
(... [and more on the way](https://github.com/terrabasedb/terrabasedb/labels/roadmap))
(... [and more on the way](https://github.com/skybasedb/skybase/labels/roadmap))
## Clients 🔌
@ -44,10 +45,8 @@ Until we release an official driver, you'll have to write your own clients — a
A project which is powered by the community believes in the power of community! If you get stuck anywhere - here are your options!
<html>
<a href="https://gitter.im/terrabasehq/community"><img src="https://img.shields.io/badge/chat%20on-gitter-ed1965?logo=gitter&style=flat-square"></img>
</a>
<a href="https://join.slack.com/t/terrabasedb/shared_invite/zt-fnkfgzf7-~WO~RzGUUvTiYV4iPAMiiQ"><img src="https://img.shields.io/badge/discuss%20on-slack-4A154B?logo=slack&style=flat-square"></img>
</a><a href="https://discord.gg/QptWFdx"><img src="https://img.shields.io/badge/talk-on%20discord-7289DA?logo=discord&style=flat-square"></img></a>
<a href="https://gitter.im/skybasedb/community"><img src="https://img.shields.io/badge/chat%20on-gitter-ed1965?logo=gitter&style=flat-square"></img>
</a><a href="https://discord.gg/vJY5sf69fR"><img src="https://img.shields.io/badge/talk-on%20discord-7289DA?logo=discord&style=flat-square"></img></a>
</html>
## Platforms 💻
@ -62,7 +61,7 @@ This project strictly follows semver, however, since this project is currently i
[![Contribute Now](https://img.shields.io/badge/%F0%9F%8C%9Fcontribute-now-a94064?style=for-the-badge)](https://ohsayan.github.io/thanks)
**Yes - we need you!** Be it a typo, a bizarre idea, a dirty bug🐞 or an amazing patch - you're welcome to contribute to TDB! Beginner friendly issues are marked with the [<img src=https://img.shields.io/badge/L--easy-C71585>](https://github.com/terrabasedb/terrabasedb/labels/L-easy) label. Read the guide [here](./CONTRIBUTING.md).
**Yes - we need you!** Be it a typo, a bizarre idea, a dirty bug🐞 or an amazing patch - you're welcome to contribute to Skybase! Beginner friendly issues are marked with the [<img src=https://img.shields.io/badge/L--easy-C71585>](https://github.com/skybasedb/skybase/labels/L-easy) label. Read the guide [here](./CONTRIBUTING.md).
## Contributors

@ -1,7 +1,7 @@
/*
* Created on Thu Aug 27 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -19,8 +19,8 @@
*
*/
/*
* This file is used by TerrabaseDB's documentation website for automatically
* generating documentation for the actions. It will also be used by the TerrabaseDB
* This file is used by Skybase's documentation website for automatically
* generating documentation for the actions. It will also be used by the Skybase
* server in the future
*/
[

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

@ -4,7 +4,7 @@
C_USER=$(git show -s --format='%an' HEAD)
C_MAIL=$(git show -s --format='%ae' HEAD)
cd ..
git clone https://github.com/terrabasedb/docs.git
git clone https://github.com/Skybase/docs.git
cd docs
chmod +x builddoc.sh
sh ./builddoc.sh

@ -1,5 +1,5 @@
[package]
name = "tsh"
name = "skysh"
version = "0.5.0"
authors = ["Sayan Nandan <ohsayan@outlook.com>"]
edition = "2018"
@ -7,7 +7,7 @@ edition = "2018"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
libtdb = {path = "../libtdb"}
libsky = {path = "../libsky"}
tokio = {version = "1.2.0", features = ["full"]}
bytes = "1.0.1"
regex = "1.4.3"

@ -1,7 +1,7 @@
/*
* Created on Wed Jul 01 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -22,11 +22,11 @@
use crate::protocol;
use clap::load_yaml;
use clap::App;
use libtdb::terrapipe::ADDR;
use libsky::terrapipe::ADDR;
use protocol::{Con, Connection, SslConnection};
use std::io::{self, prelude::*};
use std::process;
const MSG_WELCOME: &'static str = "TerrabaseDB v0.5.1";
const MSG_WELCOME: &'static str = "Skybase v0.5.1";
/// This creates a REPL on the command line and also parses command-line arguments
///
@ -80,7 +80,7 @@ pub async fn start_repl() {
}
println!("{}", MSG_WELCOME);
loop {
print!("tsh>");
print!("skysh>");
io::stdout()
.flush()
.expect("Couldn't flush buffer, this is a serious error!");

@ -1,7 +1,7 @@
#
# Created on Tue Nov 03 2020
#
# This file is a part of TerrabaseDB
# This file is a part of Skybase
# Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
#
# This program is free software: you can redistribute it and/or modify
@ -19,10 +19,10 @@
#
#
name: TerrabaseDB Shell
name: Skybase Shell
version: 0.5.1
author: Sayan N. <ohsayan@outlook.com>
about: The TerrabaseDB Shell (tsh)
about: The Skybase Shell (skysh)
args:
- host:
short: h

@ -1,7 +1,7 @@
/*
* Created on Wed Jul 01 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,7 +1,7 @@
/*
* Created on Tue Aug 04 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -21,8 +21,8 @@
//! This module provides methods to deserialize an incoming response packet
use libtdb::terrapipe::RespCodes;
use libtdb::util::terminal;
use libsky::terrapipe::RespCodes;
use libsky::util::terminal;
use std::fmt;
#[derive(Debug, PartialEq)]

@ -1,7 +1,7 @@
/*
* Created on Tue Aug 04 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -23,9 +23,9 @@ mod deserializer;
use bytes::{Buf, BytesMut};
use deserializer::ClientResult;
use lazy_static::lazy_static;
use libtdb::terrapipe;
use libtdb::TResult;
use libtdb::BUF_CAP;
use libsky::terrapipe;
use libsky::TResult;
use libsky::BUF_CAP;
use openssl::ssl::Ssl;
use openssl::ssl::SslContext;
use openssl::ssl::SslMethod;

@ -1,6 +1,6 @@
[server]
host = "127.0.0.1" # The IP address to which you want TDB to bind to
port = 2003 # The port to which you want TDB to bind to
host = "127.0.0.1" # The IP address to which you want sdb to bind to
port = 2003 # The port to which you want sdb to bind to
# Set `noart` to true if you want to disable terminal artwork
noart = false

@ -1,4 +1,4 @@
# This is a complete TDB configuration template which is always kept updated
# This is a complete sdb configuration template which is always kept updated
# to include all the configuration options. I encourage you to always use this
# when you use a configuration file
# Instead of deleting entire sections from this file, comment them out, so that you
@ -7,8 +7,8 @@
# This is a *REQUIRED* key
[server]
host = "127.0.0.1" # The IP address to which you want TDB to bind to
port = 2003 # The port to which you want TDB to bind to
host = "127.0.0.1" # The IP address to which you want sdb to bind to
port = 2003 # The port to which you want sdb to bind to
# Set `noart` to true if you want to disable terminal artwork
noart = false

@ -1,5 +1,5 @@
[package]
name = "libtdb"
name = "libsky"
version = "0.5.0"
authors = ["Sayan Nandan <ohsayan@outlook.com>"]
edition = "2018"

@ -1,7 +1,7 @@
/*
* Created on Mon Jul 20 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -19,7 +19,7 @@
*
*/
//! The core library for the TerrabaseDB
//! The core library for the Skybase
//!
//! This contains modules which are shared by both the `cli` and the `server` modules

@ -1,7 +1,7 @@
/*
* Created on Sat Jul 18 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,7 +1,7 @@
/*
* Created on Tue Aug 18 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,5 +1,5 @@
# This is a simple script which creates a release build and
# moves the release builds into my $HOME/bin folder
cargo build --release
cp -f target/release/tdb target/release/tsh target/release/tdb-bench $HOME/bin
cp -f target/release/sdb target/release/skysh target/release/sky-bench $HOME/bin
echo 'Done!'

@ -1,5 +1,5 @@
[package]
name = "tdb"
name = "sdb"
version = "0.5.0"
authors = ["Sayan Nandan <ohsayan@outlook.com>"]
edition = "2018"
@ -9,7 +9,7 @@ edition = "2018"
[dependencies]
tokio = { version = "1.2.0", features = ["full"] }
bytes = "1.0.1"
libtdb = {path ="../libtdb"}
libsky = {path ="../libsky"}
bincode = "1.3.1"
parking_lot = "0.11.1"
lazy_static = "1.4.0"
@ -22,7 +22,7 @@ env_logger = "0.8.2"
log = "0.4.14"
chrono = "0.4.19"
regex = "1.4.3"
tdb_macros = {path="../tdb-macros"}
sky_macros = {path="../sky-macros"}
tokio-openssl = "0.6.1"
openssl = { version = "0.10", features = ["vendored"] }
[target.'cfg(not(target_env = "msvc"))'.dependencies]

@ -1,7 +1,7 @@
/*
* Created on Fri Aug 07 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,7 +1,7 @@
/*
* Created on Tue Oct 13 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,8 +26,8 @@ use crate::diskstore::snapshot::SnapshotEngine;
use crate::diskstore::snapshot::DIR_SNAPSHOT;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::terrapipe::RespCodes;
use libtdb::TResult;
use libsky::terrapipe::RespCodes;
use libsky::TResult;
use std::hint::unreachable_unchecked;
use std::path::PathBuf;

@ -1,7 +1,7 @@
/*
* Created on Tue Nov 03 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -19,6 +19,6 @@
*
*/
//! Modules for administration of TerrabaseDB
//! Modules for administration of Skybase
pub mod mksnap;

@ -1,14 +1,14 @@
name: TerrabaseDB Server
name: Skybase Server
version: 0.5.1
author: Sayan N. <ohsayan@outlook.com>
about: The TerrabaseDB Database server
about: The Skybase Database server
args:
- config:
short: c
required: false
long: withconfig
value_name: cfgfile
help: Sets a configuration file to start tdb
help: Sets a configuration file to start sdb
takes_value: true
- restore:
short: r

@ -1,7 +1,7 @@
/*
* Created on Tue Sep 01 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -22,7 +22,7 @@
//! This module provides tools to handle configuration files and settings
#[cfg(test)]
use libtdb::TResult;
use libsky::TResult;
use serde::Deserialize;
use std::error::Error;
use std::fmt;
@ -47,7 +47,7 @@ pub struct Config {
/* TODO(@ohsayan): As of now, we will keep this optional, but post 0.5.1,
* we will make it compulsory (so that we don't break semver)
* See the link below for more details:
* https://github.com/terrabasedb/terrabasedb/issues/21#issuecomment-693217709
* https://github.com/Skybase/Skybase/issues/21#issuecomment-693217709
*/
bgsave: Option<ConfigKeyBGSAVE>,
/// The snapshot key
@ -646,24 +646,24 @@ mod tests {
#[test]
fn test_config_file_ok() {
let file = get_toml_from_examples_dir("tdb.toml".to_owned()).unwrap();
let file = get_toml_from_examples_dir("sdb.toml".to_owned()).unwrap();
let cfg = ParsedConfig::new_from_toml_str(file).unwrap();
assert_eq!(cfg, ParsedConfig::default());
}
#[test]
fn test_config_file_err() {
let file = get_toml_from_examples_dir("tdb.toml".to_owned()).unwrap();
let file = get_toml_from_examples_dir("sdb.toml".to_owned()).unwrap();
let cfg = ParsedConfig::new_from_file(file);
assert!(cfg.is_err());
}
#[test]
fn test_args() {
let cmdlineargs = vec!["tdb", "--withconfig", "../examples/config-files/tdb.toml"];
let cmdlineargs = vec!["sdb", "--withconfig", "../examples/config-files/sdb.toml"];
let cfg_layout = load_yaml!("../cli.yml");
let matches = App::from_yaml(cfg_layout).get_matches_from(cmdlineargs);
let filename = matches.value_of("config").unwrap();
assert_eq!("../examples/config-files/tdb.toml", filename);
assert_eq!("../examples/config-files/sdb.toml", filename);
let cfg =
ParsedConfig::new_from_toml_str(std::fs::read_to_string(filename).unwrap()).unwrap();
assert_eq!(cfg, ParsedConfig::default());

@ -1,7 +1,7 @@
/*
* Created on Mon Jul 13 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -30,7 +30,7 @@ use crate::protocol::Query;
use crate::queryengine;
use bytes::Bytes;
use diskstore::PERSIST_FILE;
use libtdb::TResult;
use libsky::TResult;
use parking_lot::RwLock;
use parking_lot::RwLockReadGuard;
use parking_lot::RwLockWriteGuard;

@ -1,7 +1,7 @@
/*
* Created on Tue Jul 21 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -44,8 +44,8 @@ use crate::protocol::tls::SslListener;
use crate::protocol::{Connection, QueryResult::*};
use crate::resp::Writable;
use crate::CoreDB;
use libtdb::util::terminal;
use libtdb::TResult;
use libsky::util::terminal;
use libsky::TResult;
use std::fs;
use std::future::Future;
use std::io::ErrorKind;

@ -1,7 +1,7 @@
/*
* Created on Wed Aug 05 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -25,7 +25,7 @@ use crate::config::BGSave;
use crate::coredb::{self, Data};
use bincode;
use bytes::Bytes;
use libtdb::TResult;
use libsky::TResult;
use std::collections::HashMap;
use std::fs;
use std::io::{ErrorKind, Write};

@ -1,7 +1,7 @@
/*
* Created on Thu Oct 01 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -27,7 +27,7 @@ use crate::coredb::CoreDB;
use crate::coredb::SnapshotStatus;
use crate::diskstore;
use chrono::prelude::*;
use libtdb::TResult;
use libsky::TResult;
use regex::Regex;
use std::fs;
use std::hint::unreachable_unchecked;

@ -1,7 +1,7 @@
/*
* Created on Wed Dec 02 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,7 +1,7 @@
/*
* Created on Thu Sep 24 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -22,7 +22,7 @@ use crate::coredb::CoreDB;
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::TResult;
use libsky::TResult;
/// Get the number of keys in the database
pub async fn dbsize(handle: &CoreDB, con: &mut Con<'_>, act: ActionGroup) -> TResult<()> {

@ -1,7 +1,7 @@
/*
* Created on Wed Aug 19 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,7 +26,7 @@ use crate::coredb::CoreDB;
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::TResult;
use libsky::TResult;
/// Run a `DEL` query
///

@ -1,7 +1,7 @@
/*
* Created on Wed Aug 19 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,7 +26,7 @@ use crate::coredb::CoreDB;
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::TResult;
use libsky::TResult;
/// Run an `EXISTS` query
pub async fn exists(handle: &CoreDB, con: &mut Con<'_>, act: ActionGroup) -> TResult<()> {

@ -1,7 +1,7 @@
/*
* Created on Thu Sep 24 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -22,7 +22,7 @@
use crate::coredb::CoreDB;
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use libtdb::TResult;
use libsky::TResult;
/// Delete all the keys in the database
pub async fn flushdb(handle: &CoreDB, con: &mut Con<'_>, act: ActionGroup) -> TResult<()> {

@ -1,7 +1,7 @@
/*
* Created on Fri Aug 14 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -27,7 +27,7 @@ use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::{BytesWrapper, GroupBegin};
use bytes::Bytes;
use libtdb::TResult;
use libsky::TResult;
/// Run a `GET` query
pub async fn get(handle: &CoreDB, con: &mut Con<'_>, act: ActionGroup) -> TResult<()> {

@ -1,7 +1,7 @@
/*
* Created on Mon Aug 31 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,7 +26,7 @@
use crate::coredb::CoreDB;
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use libtdb::TResult;
use libsky::TResult;
/// Run a `JGET` query
/// This returns a JSON key/value pair of keys and values

@ -1,7 +1,7 @@
/*
* Created on Sun Sep 27 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -22,7 +22,7 @@ use crate::coredb::CoreDB;
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::TResult;
use libsky::TResult;
/// Run a `KEYLEN` query
///

@ -1,7 +1,7 @@
/*
* Created on Thu Aug 27 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -24,8 +24,8 @@ use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::{BytesWrapper, GroupBegin};
use bytes::Bytes;
use libtdb::terrapipe::RespCodes;
use libtdb::TResult;
use libsky::terrapipe::RespCodes;
use libsky::TResult;
/// Run an `MGET` query
///

@ -1,7 +1,7 @@
/*
* Created on Wed Aug 19 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -20,8 +20,8 @@
*/
//! # The Key/Value Engine
//! This is TerrabaseDB's K/V engine. It contains utilities to interface with
//! TDB's K/V store
//! This is Skybase's K/V engine. It contains utilities to interface with
//! sdb's K/V store
pub mod dbsize;
pub mod del;
@ -43,7 +43,7 @@ pub mod heya {
use crate::protocol;
use crate::protocol::ActionGroup;
use crate::CoreDB;
use libtdb::TResult;
use libsky::TResult;
use protocol::responses;
/// Returns a `HEY!` `Response`
pub async fn heya(_db: &CoreDB, con: &mut Con<'_>, _buf: ActionGroup) -> TResult<()> {

@ -1,7 +1,7 @@
/*
* Created on Thu Aug 27 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -23,7 +23,7 @@ use crate::coredb::{self, CoreDB};
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::TResult;
use libsky::TResult;
use std::collections::hash_map::Entry;
/// Run an `MSET` query

@ -1,7 +1,7 @@
/*
* Created on Thu Aug 27 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -23,7 +23,7 @@ use crate::coredb::{self, CoreDB};
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::TResult;
use libsky::TResult;
use std::collections::hash_map::Entry;
/// Run an `MUPDATE` query

@ -1,7 +1,7 @@
/*
* Created on Fri Aug 14 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,7 +26,7 @@ use crate::coredb::{self, CoreDB};
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use coredb::Data;
use libtdb::TResult;
use libsky::TResult;
use std::collections::hash_map::Entry;
use std::hint::unreachable_unchecked;

@ -1,7 +1,7 @@
/*
* Created on Mon Sep 21 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -33,7 +33,7 @@
use crate::coredb::{CoreDB, Data};
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use libtdb::TResult;
use libsky::TResult;
use std::hint::unreachable_unchecked;
/// Run an `SSET` query

@ -1,7 +1,7 @@
/*
* Created on Mon Aug 17 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,7 +26,7 @@ use crate::coredb::{self, CoreDB};
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use coredb::Data;
use libtdb::TResult;
use libsky::TResult;
use std::collections::hash_map::Entry;
use std::hint::unreachable_unchecked;

@ -1,7 +1,7 @@
/*
* Created on Fri Sep 25 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -23,7 +23,7 @@ use crate::coredb::{self, CoreDB};
use crate::dbnet::Con;
use crate::protocol::{responses, ActionGroup};
use crate::resp::GroupBegin;
use libtdb::TResult;
use libsky::TResult;
/// Run an `USET` query
///

@ -1,7 +1,7 @@
/*
* Created on Thu Jul 02 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -19,9 +19,9 @@
*
*/
//! # TerrabaseDB
//! # Skybase
//!
//! The `tdb` crate (or the `server` folder) is TerrabaseDB's database server and maybe
//! The `sdb` crate (or the `server` folder) is Skybase's database server and maybe
//! is the most important part of the project. There are several modules within this crate; see
//! the modules for their respective documentation.
@ -54,7 +54,7 @@ use jemallocator::Jemalloc;
static GLOBAL: Jemalloc = Jemalloc;
/// The version text
static MSG: &'static str = "TerrabaseDB v0.5.1 | https://github.com/terrabasedb/terrabasedb";
static MSG: &'static str = "Skybase v0.5.1 | https://github.com/skybasedb/skybase";
/// The terminal art for `!noart` configurations
static TEXT: &'static str = "
_______ _ _____ ____
@ -71,7 +71,7 @@ static TEXT: &'static str = "
#[tokio::main]
async fn main() {
Builder::new()
.parse_filters(&env::var("TDB_LOG").unwrap_or("info".to_owned()))
.parse_filters(&env::var("SKY_LOG").unwrap_or("info".to_owned()))
.init();
// Start the server which asynchronously waits for a CTRL+C signal
// which will safely shut down the server

@ -1,7 +1,7 @@
/*
* Created on Thu Jul 30 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,7 +1,7 @@
/*
* Created on Thu Jul 30 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -32,8 +32,8 @@ use bytes::{Buf, BytesMut};
pub use deserializer::ActionGroup;
pub use deserializer::ParseResult;
pub use deserializer::Query;
use libtdb::TResult;
use libtdb::BUF_CAP;
use libsky::TResult;
use libsky::BUF_CAP;
use std::io::Result as IoResult;
use std::net::SocketAddr;
use tokio::io::{AsyncReadExt, AsyncWriteExt, BufWriter};

@ -1,7 +1,7 @@
/*
* Created on Sat Aug 22 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,7 +1,7 @@
/*
* Created on Fri Dec 18 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -30,8 +30,8 @@ use crate::resp::Writable;
use crate::CoreDB;
use bytes::Buf;
use bytes::BytesMut;
use libtdb::TResult;
use libtdb::BUF_CAP;
use libsky::TResult;
use libsky::BUF_CAP;
use openssl::ssl::{Ssl, SslAcceptor, SslFiletype, SslMethod};
use std::net::SocketAddr;
use std::pin::Pin;

@ -1,7 +1,7 @@
/*
* Created on Mon Aug 03 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,7 +26,7 @@ use crate::dbnet::Con;
use crate::protocol::ActionGroup;
use crate::protocol::{responses};
use crate::{admin, kvengine};
use libtdb::TResult;
use libsky::TResult;
mod tags {
//! This module is a collection of tags/strings used for evaluating queries
//! and responses

@ -1,7 +1,7 @@
/*
* Created on Mon Aug 17 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -22,7 +22,7 @@
//! Utilities for generating responses, which are only used by the `server`
//!
use bytes::Bytes;
use libtdb::terrapipe::RespCodes;
use libsky::terrapipe::RespCodes;
use std::error::Error;
use std::future::Future;
use std::io::Error as IoError;

@ -1,7 +1,7 @@
/*
* Created on Thu Sep 10 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -19,10 +19,10 @@
*
*/
#[tdb_macros::dbtest(skip = "set_values")]
#[sky_macros::dbtest(skip = "set_values")]
mod __private {
use crate::protocol::responses::fresp;
use libtdb::terrapipe;
use libsky::terrapipe;
use tokio::io::{AsyncReadExt, AsyncWriteExt};
/// Test a HEYA query: The server should return HEY!
async fn test_heya() {
@ -85,7 +85,7 @@ mod __private {
let mut query = String::from("MSET ");
query.push_str(values_split_with_whitespace.as_ref());
let count_bytes_len = homwany.to_string().as_bytes().len();
let q = libtdb::terrapipe::proc_query(query);
let q = libsky::terrapipe::proc_query(query);
stream.write_all(&q).await.unwrap();
let res_should_be =
format!("#2\n*1\n#2\n&1\n:{}\n{}\n", count_bytes_len, homwany).into_bytes();

@ -1,7 +1,7 @@
/*
* Created on Tue Aug 25 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify

@ -1,5 +1,5 @@
[package]
name = "tdb-bench"
name = "sky-bench"
version = "0.5.0"
authors = ["Sayan Nandan <ohsayan@outlook.com>"]
edition = "2018"
@ -9,7 +9,7 @@ edition = "2018"
[dependencies]
rand = "0.8.3"
devtimer = "4.0.1"
libtdb = {path="../libtdb"}
libsky = {path="../libsky"}
clap = {version = "2.33.3", features=["yaml"]}
serde = {version="1.0.123", features=["derive"]}
serde_json = "1.0.62"

@ -1,7 +1,7 @@
#
# Created on Tue Nov 03 2020
#
# This file is a part of TerrabaseDB
# This file is a part of Skybase
# Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
#
# This program is free software: you can redistribute it and/or modify
@ -19,12 +19,12 @@
#
#
name: TerrabaseDB Benchmark Tool
name: Skybase Benchmark Tool
version: 0.5.1
author: Sayan N. <ohsayan@outlook.com>
about: |
The TerrabaseDB benchmark tool can be used to benchmark TerrabaseDB installations.
If you find any issues, then report one here: https://github.com/terrabasedb/terrabasedb
The Skybase benchmark tool can be used to benchmark Skybase installations.
If you find any issues, then report one here: https://github.com/Skybase/Skybase
args:
- connections:
short: c

@ -1,7 +1,7 @@
/*
* Created on Sun Sep 13 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -26,7 +26,7 @@
mod benchtool {
use clap::{load_yaml, App};
use devtimer::DevTime;
use libtdb::terrapipe;
use libsky::terrapipe;
use rand::distributions::Alphanumeric;
use rand::thread_rng;
use serde::Serialize;

@ -1,5 +1,5 @@
[package]
name = "tdb_macros"
name = "sky_macros"
version = "0.5.0"
authors = ["Sayan Nandan <ohsayan@outlook.com>"]
edition = "2018"

@ -1,7 +1,7 @@
/*
* Created on Sun Sep 13 2020
*
* This file is a part of TerrabaseDB
* This file is a part of Skybase
* Copyright (c) 2020, Sayan Nandan <ohsayan at outlook dot com>
*
* This program is free software: you can redistribute it and/or modify
@ -19,7 +19,7 @@
*
*/
//! A library containing a collection of custom derives used by TerrabaseDB
//! A library containing a collection of custom derives used by Skybase
//!
//! ## Ghost values
//! We extensively use jargon like 'Ghost values'...but what exactly are they?
@ -31,7 +31,7 @@
//! ### Macros and ghost values
//! - `#[dbtest]`:
//! - `stream` - `tokio::net::TcpListener`
//! - `asyncdb` - `tdb::coredb::CoreDB`
//! - `asyncdb` - `sdb::coredb::CoreDB`
use proc_macro::TokenStream;
use proc_macro2::Span;
@ -244,11 +244,11 @@ fn parse_string(int: syn::Lit, span: Span, field: &str) -> Result<String, syn::E
#[proc_macro_attribute]
/// The `dbtest` macro starts an async server in the background and is meant for
/// use within the `tdb` or `WORKSPACEROOT/server/` crate. If you use this compiler
/// use within the `sdb` or `WORKSPACEROOT/server/` crate. If you use this compiler
/// macro in any other crate, you'll simply get compilation errors
///
/// ## _Ghost_ values
/// This macro gives a `tokio::net::TcpStream` accessible by the `stream` variable and a `tdb::coredb::CoreDB`
/// This macro gives a `tokio::net::TcpStream` accessible by the `stream` variable and a `sdb::coredb::CoreDB`
/// accessible by the `asyncdb` variable.
///
/// ## Requirements
Loading…
Cancel
Save