Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update naming to to Valkey #62

Merged
merged 7 commits into from Mar 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/codeql-analysis.yml
Expand Up @@ -10,7 +10,7 @@ jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
if: github.event_name != 'schedule' || github.repository == 'placeholderkv/placeholderkv'
if: github.event_name != 'schedule' || github.repository == 'valkey-io/valkey'

strategy:
fail-fast: false
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/coverity.yml
Expand Up @@ -8,24 +8,24 @@ on:
workflow_dispatch:
jobs:
coverity:
if: github.repository == 'placeholderkv/placeholderkv'
if: github.repository == 'valkey-io/valkey'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@main
- name: Download and extract the Coverity Build Tool
run: |
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=${{ secrets.COVERITY_SCAN_TOKEN }}&project=placeholderkv-unstable" -O cov-analysis-linux64.tar.gz
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=${{ secrets.COVERITY_SCAN_TOKEN }}&project=valkey-unstable" -O cov-analysis-linux64.tar.gz
mkdir cov-analysis-linux64
tar xzf cov-analysis-linux64.tar.gz --strip 1 -C cov-analysis-linux64
- name: Install placeholderkv dependencies
- name: Install Valkey dependencies
run: sudo apt install -y gcc tcl8.6 tclx procps libssl-dev
- name: Build with cov-build
run: cov-analysis-linux64/bin/cov-build --dir cov-int make
- name: Upload the result
run: |
tar czvf cov-int.tgz cov-int
curl \
--form project=placeholderkv-unstable \
--form project=valkey-unstable \
--form email=${{ secrets.COVERITY_SCAN_EMAIL }} \
--form token=${{ secrets.COVERITY_SCAN_TOKEN }} \
--form file=@cov-int.tgz \
Expand Down
140 changes: 70 additions & 70 deletions .github/workflows/daily.yml

Large diffs are not rendered by default.

20 changes: 10 additions & 10 deletions .github/workflows/external.yml
Expand Up @@ -9,15 +9,15 @@ on:
jobs:
test-external-standalone:
runs-on: ubuntu-latest
if: github.event_name != 'schedule' || github.repository == 'placeholderkv/placeholderkv'
if: github.event_name != 'schedule' || github.repository == 'valkey-io/valkey'
timeout-minutes: 14400
steps:
- uses: actions/checkout@v3
- name: Build
run: make SERVER_CFLAGS=-Werror
- name: Start placeholderkv-server
- name: Start valkey-server
run: |
./src/placeholderkv-server --daemonize yes --save "" --logfile external-server.log \
./src/valkey-server --daemonize yes --save "" --logfile external-server.log \
--enable-protected-configs yes --enable-debug-command yes --enable-module-command yes
- name: Run external test
run: |
Expand All @@ -34,18 +34,18 @@ jobs:

test-external-cluster:
runs-on: ubuntu-latest
if: github.event_name != 'schedule' || github.repository == 'placeholderkv/placeholderkv'
if: github.event_name != 'schedule' || github.repository == 'valkey-io/valkey'
timeout-minutes: 14400
steps:
- uses: actions/checkout@v3
- name: Build
run: make SERVER_CFLAGS=-Werror
- name: Start placeholderkv-server
- name: Start valkey-server
run: |
./src/placeholderkv-server --cluster-enabled yes --daemonize yes --save "" --logfile external-server.log \
./src/valkey-server --cluster-enabled yes --daemonize yes --save "" --logfile external-server.log \
--enable-protected-configs yes --enable-debug-command yes --enable-module-command yes
- name: Create a single node cluster
run: ./src/placeholderkv-cli cluster addslots $(for slot in {0..16383}; do echo $slot; done); sleep 5
run: ./src/valkey-cli cluster addslots $(for slot in {0..16383}; do echo $slot; done); sleep 5
- name: Run external test
run: |
./runtest \
Expand All @@ -62,15 +62,15 @@ jobs:

test-external-nodebug:
runs-on: ubuntu-latest
if: github.event_name != 'schedule' || github.repository == 'placeholderkv/placeholderkv'
if: github.event_name != 'schedule' || github.repository == 'valkey-io/valkey'
timeout-minutes: 14400
steps:
- uses: actions/checkout@v3
- name: Build
run: make SERVER_CFLAGS=-Werror
- name: Start placeholderkv-server
- name: Start valkey-server
run: |
./src/placeholderkv-server --daemonize yes --save "" --logfile external-server.log
./src/valkey-server --daemonize yes --save "" --logfile external-server.log
- name: Run external test
run: |
./runtest \
Expand Down
14 changes: 7 additions & 7 deletions .gitignore
Expand Up @@ -5,13 +5,13 @@
*.d
*.log
dump.rdb
placeholderkv-benchmark
placeholderkv-check-aof
placeholderkv-check-rdb
placeholderkv-check-dump
placeholderkv-cli
placeholderkv-sentinel
placeholderkv-server
*-benchmark
PingXie marked this conversation as resolved.
Show resolved Hide resolved
*-check-aof
*-check-rdb
*-check-dump
*-cli
*-sentinel
*-server
doc-tools
release
misc/*
Expand Down
2 changes: 1 addition & 1 deletion BUGS
@@ -1 +1 @@
Please check https://github.com/placeholderkv/placeholderkv/issues
Please check https://github.com/valkey-io/valkey/issues
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Expand Up @@ -19,9 +19,9 @@ There is also an active community of Redis users at Stack Overflow:

https://stackoverflow.com/questions/tagged/redis

Issues and pull requests for documentation belong on the placeholderkv-doc repo:
Issues and pull requests for documentation belong on the valkey-doc repo:

https://github.com/placeholderkv/placeholderkv-doc
https://github.com/valkey-io/valkey-doc

If you are reporting a security bug or vulnerability, see SECURITY.md.

Expand Down Expand Up @@ -58,7 +58,7 @@ By making a contribution to this project, I certify that:
involved.
```

We require that every contribution to placeholderkv to be signed with a DCO. We require the usage of known identity (such as a real or preferred name). We do not accept anonymous contributors nor those utilizing pseudonyms. A DCO signed commit will contain a line like:
We require that every contribution to Valkey to be signed with a DCO. We require the usage of known identity (such as a real or preferred name). We do not accept anonymous contributors nor those utilizing pseudonyms. A DCO signed commit will contain a line like:

```
Signed-off-by: Jane Smith <jane.smith@email.com>
Expand All @@ -75,7 +75,7 @@ to accomplish and why. Use cases are important for features to be accepted.
Here you can see if there is consensus about your idea.

2. If in step 1 you get an acknowledgment from the project leaders, use the following procedure to submit a patch:
1. Fork placeholderkv on GitHub ( https://docs.github.com/en/github/getting-started-with-github/fork-a-repo )
1. Fork Valkey on GitHub ( https://docs.github.com/en/github/getting-started-with-github/fork-a-repo )
1. Create a topic branch (git checkout -b my_branch)
1. Make the needed changes and commit with a DCO. (git commit -s)
1. Push to your branch (git push origin my_branch)
Expand Down
103 changes: 48 additions & 55 deletions README.md
Expand Up @@ -4,19 +4,20 @@ This project was forked from the open source Redis project right before the tran

This README is just a fast *quick start* document. We are currently working on a more permanent documentation page.

What is PlaceHolderKV?
What is Valkey?
--------------
The name is temporary, as we work to find a new name that the community accepts. It also happens to be a very easy string to search for.
Valkey is a high-performance data structure server that primarily serves key/value workloads.
It supports a wide range of native structures and an extensible plugin system for adding new data structures and access patterns.

Building PlaceHolderKV
Building Valkey
--------------

PlaceHolderKV can be compiled and used on Linux, OSX, OpenBSD, NetBSD, FreeBSD.
Valkey can be compiled and used on Linux, OSX, OpenBSD, NetBSD, FreeBSD.
We support big endian and little endian architectures, and both 32 bit
and 64 bit systems.

It may compile on Solaris derived systems (for instance SmartOS) but our
support for this platform is *best effort* and PlaceHolderKV is not guaranteed to
support for this platform is *best effort* and Valkey is not guaranteed to
work as well as in Linux, OSX, and \*BSD.

It is as simple as:
Expand All @@ -33,15 +34,15 @@ as libsystemd-dev on Debian/Ubuntu or systemd-devel on CentOS) and run:

% make USE_SYSTEMD=yes

To append a suffix to PlaceHolderKV program names, use:
To append a suffix to Valkey program names, use:

% make PROG_SUFFIX="-alt"

You can build a 32 bit PlaceHolderKV binary using:
You can build a 32 bit Valkey binary using:

% make 32bit

After building PlaceHolderKV, it is a good idea to test it using:
After building Valkey, it is a good idea to test it using:

% make test

Expand All @@ -55,7 +56,7 @@ installed):
Fixing build problems with dependencies or cached build options
---------

PlaceHolderKV has some dependencies which are included in the `deps` directory.
Valkey has some dependencies which are included in the `deps` directory.
`make` does not automatically rebuild dependencies even if something in
the source code of dependencies changes.

Expand All @@ -65,7 +66,7 @@ command in order to really clean everything and rebuild from scratch:

% make distclean

This will clean: jemalloc, lua, hiplaceholderkv, linenoise and other dependencies.
This will clean: jemalloc, lua, hiredis, linenoise and other dependencies.
madolson marked this conversation as resolved.
Show resolved Hide resolved

Also if you force certain build options like 32bit target, no C compiler
optimizations (for debugging purposes), and other similar build time options,
Expand All @@ -75,11 +76,11 @@ command.
Fixing problems building 32 bit binaries
---------

If after building PlaceHolderKV with a 32 bit target you need to rebuild it
If after building Valkey with a 32 bit target you need to rebuild it
with a 64 bit target, or the other way around, you need to perform a
`make distclean` in the root directory of the PlaceHolderKV distribution.
`make distclean` in the root directory of the Valkey distribution.

In case of build errors when trying to build a 32 bit binary of PlaceHolderKV, try
In case of build errors when trying to build a 32 bit binary of Valkey, try
the following steps:

* Install the package libc6-dev-i386 (also try g++-multilib).
Expand All @@ -89,8 +90,8 @@ the following steps:
Allocator
---------

Selecting a non-default memory allocator when building PlaceHolderKV is done by setting
the `MALLOC` environment variable. PlaceHolderKV is compiled and linked against libc
Selecting a non-default memory allocator when building Valkey is done by setting
the `MALLOC` environment variable. Valkey is compiled and linked against libc
malloc by default, with the exception of jemalloc being the default on Linux
systems. This default was picked because jemalloc has proven to have fewer
fragmentation problems than libc malloc.
Expand All @@ -106,7 +107,7 @@ To compile against jemalloc on Mac OS X systems, use:
Monotonic clock
---------------

By default, PlaceHolderKV will build using the POSIX clock_gettime function as the
By default, Valkey will build using the POSIX clock_gettime function as the
monotonic clock source. On most modern systems, the internal processor clock
can be used to improve performance. Cautions can be found here:
http://oliveryang.net/2015/09/pitfalls-of-TSC-usage/
Expand All @@ -118,64 +119,64 @@ To build with support for the processor's internal instruction clock, use:
Verbose build
-------------

PlaceHolderKV will build with a user-friendly colorized output by default.
Valkey will build with a user-friendly colorized output by default.
If you want to see a more verbose output, use the following:

% make V=1

Running PlaceHolderKV
Running Valkey
-------------

To run PlaceHolderKV with the default configuration, just type:
To run Valkey with the default configuration, just type:

% cd src
% ./placeholderkv-server
% ./valkey-server

If you want to provide your placeholderkv.conf, you have to run it using an additional
If you want to provide your valkey.conf, you have to run it using an additional
parameter (the path of the configuration file):

% cd src
% ./placeholderkv-server /path/to/placeholderkv.conf
% ./valkey-server /path/to/valkey.conf

It is possible to alter the PlaceHolderKV configuration by passing parameters directly
It is possible to alter the Valkey configuration by passing parameters directly
as options using the command line. Examples:

% ./placeholderkv-server --port 9999 --replicaof 127.0.0.1 6379
% ./placeholderkv-server /etc/placeholderkv/6379.conf --loglevel debug
% ./valkey-server --port 9999 --replicaof 127.0.0.1 6379
% ./valkey-server /etc/valkey/6379.conf --loglevel debug

All the options in placeholderkv.conf are also supported as options using the command
All the options in valkey.conf are also supported as options using the command
line, with exactly the same name.

Running PlaceHolderKV with TLS:
Running Valkey with TLS:
------------------

Please consult the [TLS.md](TLS.md) file for more information on
how to use PlaceHolderKV with TLS.
how to use Valkey with TLS.

Playing with PlaceHolderKV
Playing with Valkey
------------------

You can use placeholderkv-cli to play with PlaceHolderKV. Start a placeholderkv-server instance,
You can use valkey-cli to play with Valkey. Start a valkey-server instance,
then in another terminal try the following:

% cd src
% ./placeholderkv-cli
placeholderkv> ping
% ./valkey-cli
valkey> ping
PONG
placeholderkv> set foo bar
valkey> set foo bar
OK
placeholderkv> get foo
valkey> get foo
"bar"
placeholderkv> incr mycounter
valkey> incr mycounter
(integer) 1
placeholderkv> incr mycounter
valkey> incr mycounter
(integer) 2
placeholderkv>
valkey>

Installing PlaceHolderKV
Installing Valkey
-----------------

In order to install PlaceHolderKV binaries into /usr/local/bin, just use:
In order to install Valkey binaries into /usr/local/bin, just use:

% make install

Expand All @@ -184,7 +185,7 @@ different destination.

`make install` will just install binaries in your system, but will not configure
init scripts and configuration files in the appropriate place. This is not
needed if you just want to play a bit with PlaceHolderKV, but if you are installing
needed if you just want to play a bit with Valkey, but if you are installing
it the proper way for a production system, we have a script that does this
for Ubuntu and Debian systems:

Expand All @@ -194,24 +195,16 @@ for Ubuntu and Debian systems:
_Note_: `install_server.sh` will not work on Mac OSX; it is built for Linux only.

The script will ask you a few questions and will setup everything you need
to run PlaceHolderKV properly as a background daemon that will start again on
to run Valkey properly as a background daemon that will start again on
system reboots.

You'll be able to stop and start PlaceHolderKV using the script named
`/etc/init.d/placeholderkv_<portnumber>`, for instance `/etc/init.d/placeholderkv_6379`.
You'll be able to stop and start Valkey using the script named
`/etc/init.d/valkey_<portnumber>`, for instance `/etc/init.d/valkey_6379`.

Code contributions
-----------------
Please see the [CONTRIBUTING.md][2]. For security bugs and vulnerabilities, please see [SECURITY.md][3].

Note: By contributing code to the PlaceHolderKV project in any form, including sending
a pull request via Github, a code fragment or patch via private email or
public discussion groups, you agree to release your code under the terms
of the BSD license that you can find in the [COPYING][1] file included in the PlaceHolderKV
source distribution.

Please see the [CONTRIBUTING.md][2] file in this source distribution for more
information. For security bugs and vulnerabilities, please see [SECURITY.md][3].

[1]: https://github.com/madolson/placeholderkv/blob/unstable/COPYING
[2]: https://github.com/madolson/placeholderkv/blob/unstable/CONTRIBUTING.md
[3]: https://github.com/madolson/placeholderkv/blob/unstable/SECURITY.md
[1]: https://github.com/valkey-io/valkey/blob/unstable/COPYING
[2]: https://github.com/valkey-io/valkey/blob/unstable/CONTRIBUTING.md
[3]: https://github.com/valkey-io/valkey/blob/unstable/SECURITY.md
2 changes: 1 addition & 1 deletion src/Makefile
Expand Up @@ -349,7 +349,7 @@ else
GEN_COMMANDS_FLAGS=
endif

ENGINE_NAME=placeholderkv
ENGINE_NAME=valkey
SERVER_NAME=$(ENGINE_NAME)-server$(PROG_SUFFIX)
ENGINE_SENTINEL_NAME=$(ENGINE_NAME)-sentinel$(PROG_SUFFIX)
ENGINE_SERVER_OBJ=threads_mngr.o adlist.o quicklist.o ae.o anet.o dict.o kvstore.o server.o sds.o zmalloc.o lzf_c.o lzf_d.o pqsort.o zipmap.o sha1.o ziplist.o release.o networking.o util.o object.o db.o replication.o rdb.o t_string.o t_list.o t_set.o t_zset.o t_hash.o config.o aof.o pubsub.o multi.o debug.o sort.o intset.o syncio.o cluster.o cluster_legacy.o crc16.o endianconv.o slowlog.o eval.o bio.o rio.o rand.o memtest.o syscheck.o crcspeed.o crc64.o bitops.o sentinel.o notify.o setproctitle.o blocked.o hyperloglog.o latency.o sparkline.o redis-check-rdb.o redis-check-aof.o geo.o lazyfree.o module.o evict.o expire.o geohash.o geohash_helper.o childinfo.o defrag.o siphash.o rax.o t_stream.o listpack.o localtime.o lolwut.o lolwut5.o lolwut6.o acl.o tracking.o socket.o tls.o sha256.o timeout.o setcpuaffinity.o monotonic.o mt19937-64.o resp_parser.o call_reply.o script_lua.o script.o functions.o function_lua.o commands.o strl.o connection.o unix.o logreqres.o
Expand Down