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

cluster create error #77

Closed
drawhan opened this issue Jul 12, 2016 · 7 comments
Closed

cluster create error #77

drawhan opened this issue Jul 12, 2016 · 7 comments

Comments

@drawhan
Copy link

drawhan commented Jul 12, 2016

system : centos 7.1 x64 / Linux redis1 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 23 17:05:11 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

fab main

#4 cluster create

Cluster name : cluster
PG count : 4
Replication number : 2
PGS Physical Machine list([["PM_NAME PM_IP", "PM_NAME PM_IP"], ["PM_NAME PM_IP", "PM_NAME PM_IP"], ...]) [["redis1 10.0.0.151", "redis2 10.0.0.152"]]
Gateway Physical Machine list([PM_NAME PM_IP, PM_NAME PM_IP, ...]) ["redis1 10.0.0.151", "redis2 10.0.0.152"]
Cronsave number 2
[user@10.0.0.151] Executing task 'get_ports'

[user@10.0.0.151] Get using ports
[user@10.0.0.151] Login password for 'user':
[user@10.0.0.152] Executing task 'get_ports'

[user@10.0.0.152] Get using ports
[user@10.0.0.151] Executing task 'get_ports'

[user@10.0.0.151] Get using ports
[user@10.0.0.152] Executing task 'get_ports'

[user@10.0.0.152] Get using ports

Print script? [Y/n]

[SCRIPT]
CLUSTER:
cluster_add cluster 0:1

GW:
cluster 1 redis1 10.0.0.151 6000
cluster 2 redis2 10.0.0.152 6000

PG:
pg_add cluster 0
pg_add cluster 1
pg_add cluster 2
pg_add cluster 3

PN PG MAP:
slot_set_pg cluster 0:2047 0
slot_set_pg cluster 2048:4095 1
slot_set_pg cluster 4096:6143 2
slot_set_pg cluster 6144:8191 3

PGS:
cluster 0 0 redis1 10.0.0.151 7000
cluster 50 0 redis2 10.0.0.152 7000
cluster 1 1 redis1 10.0.0.151 7010
cluster 51 1 redis2 10.0.0.152 7010
cluster 2 2 redis1 10.0.0.151 7020
cluster 52 2 redis2 10.0.0.152 7020
cluster 3 3 redis1 10.0.0.151 7030
cluster 53 3 redis2 10.0.0.152 7030

Print configuration? [Y/n]

[GW INFORMATION]
+-------+------------------------------------------+--------+
| GW_ID | PM | PORT |
+-------+------------------------------------------+--------+
| 1 | ['redis1', '10.0.0.151'] | 6000 |
| 2 | ['redis2', '10.0.0.152'] | 6000 |
+-------+------------------------------------------+--------+

[PG INFORMATION]
+-------+--------------+-----------+
| PG_ID | SLOT | SLOT SIZE |
+-------+--------------+-----------+
| 0 | 0 2047 | 2048 |
| 1 | 2048 4095 | 2048 |
| 2 | 4096 6143 | 2048 |
| 3 | 6144 8191 | 2048 |
+-------+--------------+-----------+

[PGS INFORMATION]
+-------+--------+------------------------------------------+--------+
| PG_ID | PGS_ID | PM | PORT |
+-------+--------+------------------------------------------+--------+
| 0 | 0 | ['redis1', '10.0.0.151'] | 7000 |
| 0 | 50 | ['redis2', '10.0.0.152'] | 7000 |
| 1 | 1 | ['redis1', '10.0.0.151'] | 7010 |
| 1 | 51 | ['redis2', '10.0.0.152'] | 7010 |
| 2 | 2 | ['redis1', '10.0.0.151'] | 7020 |
| 2 | 52 | ['redis2', '10.0.0.152'] | 7020 |
| 3 | 3 | ['redis1', '10.0.0.151'] | 7030 |
| 3 | 53 | ['redis2', '10.0.0.152'] | 7030 |
+-------+--------+------------------------------------------+--------+

[PGS INFORMATION, After Arranging locations of masters]
+-------+--------+------------------------------------------+--------+
| PG_ID | PGS_ID | PM | PORT |
+-------+--------+------------------------------------------+--------+
| 0 | 0 | ['redis1', '10.0.0.151'] | 7000 |
| 0 | 50 | ['redis2', '10.0.0.152'] | 7000 |
| 1 | 51 | ['redis2', '10.0.0.152'] | 7010 |
| 2 | 2 | ['redis1', '10.0.0.151'] | 7020 |
| 2 | 52 | ['redis2', '10.0.0.152'] | 7020 |
| 3 | 53 | ['redis2', '10.0.0.152'] | 7030 |
| 1 | 1 | ['redis1', '10.0.0.151'] | 7010 |
| 3 | 3 | ['redis1', '10.0.0.151'] | 7030 |
+-------+--------+------------------------------------------+--------+

[MASTER COUNT]
10.0.0.152 : 2
10.0.0.151 : 2

Create PGS, Continue? [Y/n]
Confirm Mode? [Y/n]

Warning: PM Add fail. cmd:pm_add redis1 10.0.0.151, ret:{"state":"error","msg":"-ERR required state is 2, but 1"}

confmaster error

2016/07/12 10:25:43.836 ERR 016 CM Exception occur while handle request. length: 30, message: "pm_add redis1 10.0.0.151"... com.navercorp.nbasearc.confmaster.ConfMasterException$MgmtStateNotSatisfiedException: -ERR required state is 2, but

@otheng03
Copy link

otheng03 commented Jul 12, 2016

  • Problem
    • {"state":"error","msg":"-ERR required state is 2, but 1"}
  • Solution
    • From 1.3 version of ConfMaster, it is neccesary to send cm_start command to ConfMaster in order to begin ConfMaster service.
    • Follow below steps
      1. Connect to leader ConfMaster. (I usually use 'telnet')
      2. execute cm_start
      3. cm_info to check state of ConfMaster
    • ex (must replace ip and port with yours ConfMaster)
      image

Sorry for that is not applied to the manual. If any other problems after you execute cm_start command, comment your problems, please.

@drawhan
Copy link
Author

drawhan commented Jul 12, 2016

thank you for your[@otheng03 ] answer

execute cm_start and install is fine... but other error occur

execute batch log

[localhost] Check Local Binary
[localhost] local: test -e ~/nbase-arc/bin/redis-arc-v1.3.0-6-gbe31eca
[localhost] local: test -e ~/nbase-arc/bin/cluster-util-v1.3.0-6-gbe31eca
[localhost] local: test -e ~/nbase-arc/bin/redis-gateway-v1.3.0-6-gbe31eca
[localhost] local: test -e ~/nbase-arc/bin/smr-replicator-v1.3.0-6-gbe31eca
[localhost] local: test -e ~/nbase-arc/bin/smr-logutil-v1.3.0-6-gbe31eca
[localhost] Check Local Binary Success

[ttp@localhost] copy_binary begin
[ttp@localhost] Executing task 'copy_binary'
[ttp@localhost] copy_binary end
[ttp@localhost] Executing task 'path_exist'
[ttp@localhost] Executing task 'path_exist'
[ttp@localhost] Executing task 'make_remote_path'
[ttp@localhost] Create directory, ~/nbase-arc/pgs/7020/smr/log. Continue? [Y/n]

zookeeper log

2016/07/12 14:27:48.905 ERR 042 CM -ERR pgs does not exist. cluster_redis/pgs:50
2016/07/12 14:27:48.905 ERR 042 CM Exception occur while handle request. length: 20, message: "pgs_info cluster_redis 50"... java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.navercorp.nbasearc.confmaster.server.mapping.Caller.invoke(Caller.java:49)
at com.navercorp.nbasearc.confmaster.server.command.CommandTemplate.lock(CommandTemplate.java:209)
at com.navercorp.nbasearc.confmaster.server.command.CommandTemplate.call(CommandTemplate.java:87)
at com.navercorp.nbasearc.confmaster.server.command.CommandTemplate.call(CommandTemplate.java:50)
at com.navercorp.nbasearc.confmaster.context.ExecutionContext.call(ExecutionContext.java:47)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalArgumentException: -ERR pgs does not exist. cluster_redis/pgs:50
at com.navercorp.nbasearc.confmaster.repository.lock.HierarchicalLockPGS.(HierarchicalLockPGS.java:53)
at com.navercorp.nbasearc.confmaster.repository.lock.HierarchicalLockPG.pgs(HierarchicalLockPG.java:50)
at com.navercorp.nbasearc.confmaster.server.command.PartitionGroupServerService.pggInfoLock(PartitionGroupServerService.java:351)
... 14 more

additional error

[ttp@localhost] Executing task 'make_remote_path'
[ttp@localhost] run: mkdir -p ~/nbase-arc/gw/6060
[ttp@localhost] Make GW path ~/nbase-arc/gw/6060 success
[ttp@localhost] Executing task 'start_gateway'

[ttp@localhost] Start Gateway
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/fabric/main.py", line 745, in main
_args, *_kwargs
File "/usr/lib/python2.7/site-packages/fabric/tasks.py", line 427, in execute
results[''] = task.run(_args, *_new_kwargs)
File "/usr/lib/python2.7/site-packages/fabric/tasks.py", line 174, in run
return self.wrapped(_args, *_kwargs)
File "/home/ttp/nbase-arc/mgmt/fabfile.py", line 2328, in main
menu[menu_no - 1]1
File "/home/ttp/nbase-arc/mgmt/fabfile.py", line 1468, in menu_install_cluster
return install_cluster(cluster_name, quorum_policy, pg_count, rep_num, pm_list_str, gw_list_str, cronsave_num, log_delete_delay)
File "/home/ttp/nbase-arc/mgmt/fabfile.py", line 1767, in install_cluster
if install_gw(cluster_name, gw['gw_id'], pm_name, pm_ip, gw['port']) == False:
File "/home/ttp/nbase-arc/mgmt/fabfile.py", line 560, in install_gw
if execute(remote.start_gateway, cluster_name, pm_ip, port, config.CONF_MASTER_IP, config.CONF_MASTER_PORT)[host] != True:
File "/usr/lib/python2.7/site-packages/fabric/tasks.py", line 387, in execute
multiprocessing
File "/usr/lib/python2.7/site-packages/fabric/tasks.py", line 277, in _execute
return task.run(_args, *_kwargs)
File "/usr/lib/python2.7/site-packages/fabric/tasks.py", line 174, in run
return self.wrapped(_args, *_kwargs)
File "/home/ttp/nbase-arc/mgmt/remote.py", line 746, in start_gateway
exec_str = 'redis-gateway-%s -D -l gwlog -c %s -b %d -w %d -p %d -n %s %s' % (config.GW_VERSION, cmip, cmport, config.NUM_WORKERS_PER_GATEWAY, port, cluster_name, add_opt)
TypeError: %d format: a number is required, not str

@otheng03
Copy link

otheng03 commented Jul 12, 2016

  • Exceptions
    • exceptions in 'zookeeper log' section are not critical error, it is just a notice that pgs-50 does not exist. Mgmt script checks if pgs already exist, before installs it.
  • additional error
    • If you share your config files of mgmt script and I can help you.

@drawhan
Copy link
Author

drawhan commented Jul 13, 2016

thanks for your answer

here is my config of mgmt

$vi nbase-arc/mgmt/config/conf_mnode.py

import os

CM

CONF_MASTER_IP = "redis1"
CONF_MASTER_PORT = "1122"

CONF_MASTER_MGMT_CONS = 3

Local binary path

LOCAL_BINARY_PATH = '~/nbase-arc/bin'

Migration

MIN_TIME_TO_ATTEMPT_MIG2PC = 0.05 # Minimum time to try mig2pc in second

Remote

USERNAME = "user"

REMOTE_NBASE_ARC = '~/nbase-arc'
REMOTE_BIN_DIR = REMOTE_NBASE_ARC + '/bin'
REMOTE_PGS_DIR = REMOTE_NBASE_ARC + '/pgs'
REMOTE_GW_DIR = REMOTE_NBASE_ARC + '/gw'

Shell

ARC_BASH_PROFILE = 'bash.nbase-arc'
SHELL = '/bin/bash --rcfile ~/.%s -i -c' % ARC_BASH_PROFILE

@otheng03
Copy link

  • It is recommended to change the value of CONF_MASTER_PORT to a 16-bit integer.
    • CONF_MASTER_PORT = "1122"1122
  • Other configurations in conf_mnode.py seem reasonable. If other configurations are correct mgmt script will work fine.

@drawhan
Copy link
Author

drawhan commented Jul 16, 2016

i found new error when make test after get git file

[cc: error: ../../smr/smr/libsmr.a: No such file or directory]

[user@redis_server1 src]$ git clone https://github.com/naver/nbase-arc.git
Cloning into 'nbase-arc'...
remote: Counting objects: 3405, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 3405 (delta 1), reused 0 (delta 0), pack-reused 3399
Receiving objects: 100% (3405/3405), 4.09 MiB | 1.83 MiB/s, done.
Resolving deltas: 100% (1672/1672), done.
[user@redis_server1 src]$ cd nbase-arc/
[user@redis_server1 nbase-arc]$ make test
cd smr && make test
make[1]: Entering directory /home/ttp/src/nbase-arc/smr' make[1]: Nothing to be done fortest'.
make[1]: Leaving directory /home/ttp/src/nbase-arc/smr' cd redis-2.8.8 && make test make[1]: Entering directory/home/ttp/src/nbase-arc/redis-2.8.8'
cd src && make test
make[2]: Entering directory /home/ttp/src/nbase-arc/redis-2.8.8/src' rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-dump redis-check-aof redis-arc cluster-util dump-util *.o *.gcda *.gcno *.gcov redis.info lcov-html *.so (cd ../deps && make distclean) make[3]: Entering directory/home/ttp/src/nbase-arc/redis-2.8.8/deps'
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-)
make[3]: Leaving directory /home/ttp/src/nbase-arc/redis-2.8.8/deps' (rm -f .make-_) echo STD=-std=c99 -pedantic >> .make-settings echo WARN=-Wall >> .make-settings echo OPT=-O2 >> .make-settings echo MALLOC=jemalloc >> .make-settings echo CFLAGS= >> .make-settings echo LDFLAGS= >> .make-settings echo REDIS_CFLAGS= >> .make-settings echo REDIS_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-std=c99 -pedantic -Wall -O2 -g -ggdb -DNBASE_ARC -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -I../../smr/smr -DUSE_JEMALLOC -I../deps/jemalloc/include >> .make-settings echo PREV_FINAL_LDFLAGS= -g -ggdb -rdynamic >> .make-settings (cd ../deps && make hiredis linenoise lua jemalloc) make[3]: Entering directory /home/ttp/src/nbase-arc/redis-2.8.8/deps'
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-*)
(echo "" > .make-cflags)
(echo "" > .make-ldflags)
MAKE hiredis
cd hiredis && make static
make[4]: Entering directory/home/ttp/src/nbase-arc/redis-2.8.8/deps/hiredis' cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb hiredis.c cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb sds.c cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb async.c ar rcs libhiredis.a net.o hiredis.o sds.o async.o make[4]: Leaving directory /home/ttp/src/nbase-arc/redis-2.8.8/deps/hiredis'
MAKE linenoise
cd linenoise && make
make[4]: Entering directory/home/ttp/src/nbase-arc/redis-2.8.8/deps/linenoise' cc -Wall -Os -g -c linenoise.c make[4]: Leaving directory /home/ttp/src/nbase-arc/redis-2.8.8/deps/linenoise'
MAKE lua
cd lua/src && make all CFLAGS="-O2 -Wall -DLUA_ANSI " MYLDFLAGS=""
make[4]: Entering directory/home/ttp/src/nbase-arc/redis-2.8.8/deps/lua/src' cc -O2 -Wall -DLUA_ANSI -c -o lapi.o lapi.c cc -O2 -Wall -DLUA_ANSI -c -o lcode.o lcode.c cc -O2 -Wall -DLUA_ANSI -c -o ldebug.o ldebug.c cc -O2 -Wall -DLUA_ANSI -c -o ldo.o ldo.c cc -O2 -Wall -DLUA_ANSI -c -o ldump.o ldump.c cc -O2 -Wall -DLUA_ANSI -c -o lfunc.o lfunc.c cc -O2 -Wall -DLUA_ANSI -c -o lgc.o lgc.c cc -O2 -Wall -DLUA_ANSI -c -o llex.o llex.c cc -O2 -Wall -DLUA_ANSI -c -o lmem.o lmem.c cc -O2 -Wall -DLUA_ANSI -c -o lobject.o lobject.c cc -O2 -Wall -DLUA_ANSI -c -o lopcodes.o lopcodes.c cc -O2 -Wall -DLUA_ANSI -c -o lparser.o lparser.c cc -O2 -Wall -DLUA_ANSI -c -o lstate.o lstate.c cc -O2 -Wall -DLUA_ANSI -c -o lstring.o lstring.c cc -O2 -Wall -DLUA_ANSI -c -o ltable.o ltable.c cc -O2 -Wall -DLUA_ANSI -c -o ltm.o ltm.c cc -O2 -Wall -DLUA_ANSI -c -o lundump.o lundump.c cc -O2 -Wall -DLUA_ANSI -c -o lvm.o lvm.c cc -O2 -Wall -DLUA_ANSI -c -o lzio.o lzio.c cc -O2 -Wall -DLUA_ANSI -c -o strbuf.o strbuf.c cc -O2 -Wall -DLUA_ANSI -c -o lauxlib.o lauxlib.c cc -O2 -Wall -DLUA_ANSI -c -o lbaselib.o lbaselib.c cc -O2 -Wall -DLUA_ANSI -c -o ldblib.o ldblib.c cc -O2 -Wall -DLUA_ANSI -c -o liolib.o liolib.c cc -O2 -Wall -DLUA_ANSI -c -o lmathlib.o lmathlib.c cc -O2 -Wall -DLUA_ANSI -c -o loslib.o loslib.c cc -O2 -Wall -DLUA_ANSI -c -o ltablib.o ltablib.c cc -O2 -Wall -DLUA_ANSI -c -o lstrlib.o lstrlib.c cc -O2 -Wall -DLUA_ANSI -c -o loadlib.o loadlib.c cc -O2 -Wall -DLUA_ANSI -c -o linit.o linit.c cc -O2 -Wall -DLUA_ANSI -c -o lua_cjson.o lua_cjson.c cc -O2 -Wall -DLUA_ANSI -c -o lua_struct.o lua_struct.c cc -O2 -Wall -DLUA_ANSI -c -o lua_cmsgpack.o lua_cmsgpack.c lua_cmsgpack.c: In function ‘table_is_an_array’: lua_cmsgpack.c:370:21: warning: variable ‘max’ set but not used [-Wunused-but-set-variable] long count = 0, max = 0, idx = 0; ^ ar rcu liblua.a lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o strbuf.o lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o lstrlib.o loadlib.o linit.o lua_cjson.o lua_struct.o lua_cmsgpack.o # DLL needs all object files ranlib liblua.a cc -O2 -Wall -DLUA_ANSI -c -o lua.o lua.c cc -o lua lua.o liblua.a -lm cc -O2 -Wall -DLUA_ANSI -c -o luac.o luac.c cc -O2 -Wall -DLUA_ANSI -c -o print.o print.c cc -o luac luac.o print.o liblua.a -lm make[4]: Leaving directory /home/ttp/src/nbase-arc/redis-2.8.8/deps/lua/src'
MAKE jemalloc
cd jemalloc && ./configure --with-jemalloc-prefix=je
--enable-cc-silence CFLAGS="-std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops " LDFLAGS=""
checking for xsltproc... /usr/bin/xsltproc
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether byte ordering is bigendian... no
checking size of void _... 8
checking size of int... 4
checking size of long... 8
checking size of intmax_t... 8
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking whether pause instruction is compilable... yes
checking whether SSE2 intrinsics is compilable... yes
checking for ar... ar
checking whether attribute syntax is compilable... yes
checking whether compiler supports -fvisibility=hidden... yes
checking whether compiler supports -Werror... yes
checking whether tls_model attribute is compilable... no
checking for a BSD-compatible install... /usr/bin/install -c
checking for ranlib... ranlib
checking for ld... /usr/bin/ld
checking for autoconf... /usr/bin/autoconf
checking for memalign... yes
checking for valloc... yes
checking configured backtracing method... N/A
checking for sbrk... yes
checking whether utrace(2) is compilable... no
checking whether valgrind is compilable... no
checking STATIC_PAGE_SHIFT... 12
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking for pthread_create in -lpthread... yes
checking for _malloc_thread_cleanup... no
checking for pthread_mutex_init_calloc_cb... no
checking for TLS... yes
checking whether a program using ffsl is compilable... yes
checking whether atomic(9) is compilable... no
checking whether Darwin OSAtomic
() is compilable... no
checking whether to force 32-bit _sync{add,sub}_and_fetch()... no
checking whether to force 64-bit _sync{add,sub}_and_fetch()... no
checking whether Darwin OSSpin*() is compilable... no
checking for stdbool.h that conforms to C99... yes
checking for _Bool... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/html.xsl
config.status: creating doc/manpages.xsl
config.status: creating doc/jemalloc.xml
config.status: creating include/jemalloc/jemalloc_macros.h
config.status: creating include/jemalloc/jemalloc_protos.h
config.status: creating include/jemalloc/internal/jemalloc_internal.h
config.status: creating test/test.sh
config.status: creating test/include/test/jemalloc_test.h
config.status: creating config.stamp
config.status: creating bin/jemalloc.sh
config.status: creating include/jemalloc/jemalloc_defs.h
config.status: creating include/jemalloc/internal/jemalloc_internal_defs.h
config.status: creating test/include/test/jemalloc_test_defs.h
config.status: executing include/jemalloc/internal/private_namespace.h commands
config.status: executing include/jemalloc/internal/private_unnamespace.h commands
config.status: executing include/jemalloc/internal/public_symbols.txt commands
config.status: executing include/jemalloc/internal/public_namespace.h commands
config.status: executing include/jemalloc/internal/public_unnamespace.h commands
config.status: executing include/jemalloc/internal/size_classes.h commands
config.status: executing include/jemalloc/jemalloc_protos_jet.h commands
config.status: executing include/jemalloc/jemalloc_rename.h commands
config.status: executing include/jemalloc/jemalloc_mangle.h commands
config.status: executing include/jemalloc/jemalloc_mangle_jet.h commands

config.status: executing include/jemalloc/jemalloc.h commands

jemalloc version : 3.6.0-0-g46c0af68bd248b04df75e4f92d5fb804c3d75340
library revision : 1

CC : gcc
CPPFLAGS : -D_GNU_SOURCE -D_REENTRANT
CFLAGS : -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -fvisibility=hidden
LDFLAGS :
EXTRA_LDFLAGS :
LIBS : -lpthread
RPATH_EXTRA :

XSLTPROC : /usr/bin/xsltproc
XSLROOT :

PREFIX : /usr/local
BINDIR : /usr/local/bin
INCLUDEDIR : /usr/local/include
LIBDIR : /usr/local/lib
DATADIR : /usr/local/share
MANDIR : /usr/local/share/man

srcroot :
abs_srcroot : /home/ttp/src/nbase-arc/redis-2.8.8/deps/jemalloc/
objroot :
abs_objroot : /home/ttp/src/nbase-arc/redis-2.8.8/deps/jemalloc/

JEMALLOC_PREFIX : je_
JEMALLOC_PRIVATE_NAMESPACE
: je_
install_suffix :
autogen : 0
experimental : 1
cc-silence : 1
debug : 0
code-coverage : 0
stats : 1
prof : 0
prof-libunwind : 0
prof-libgcc : 0
prof-gcc : 0
tcache : 1
fill : 1
utrace : 0
valgrind : 0
xmalloc : 0
mremap : 0
munmap : 0
dss : 0
lazy_lock : 0

tls : 1

cd jemalloc && make CFLAGS="-std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops " LDFLAGS="" lib/libjemalloc.a
make[4]: Entering directory /home/ttp/src/nbase-arc/redis-2.8.8/deps/jemalloc' gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/jemalloc.o src/jemalloc.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/arena.o src/arena.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/atomic.o src/atomic.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/base.o src/base.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/bitmap.o src/bitmap.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk.o src/chunk.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk_dss.o src/chunk_dss.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/chunk_mmap.o src/chunk_mmap.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ckh.o src/ckh.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/ctl.o src/ctl.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/extent.o src/extent.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/hash.o src/hash.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/huge.o src/huge.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/mb.o src/mb.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/mutex.o src/mutex.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/prof.o src/prof.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/quarantine.o src/quarantine.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/rtree.o src/rtree.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/stats.o src/stats.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/tcache.o src/tcache.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/util.o src/util.c gcc -std=gnu99 -Wall -pipe -g3 -O3 -funroll-loops -c -D_GNU_SOURCE -D_REENTRANT -Iinclude -Iinclude -o src/tsd.o src/tsd.c ar crus lib/libjemalloc.a src/jemalloc.o src/arena.o src/atomic.o src/base.o src/bitmap.o src/chunk.o src/chunk_dss.o src/chunk_mmap.o src/ckh.o src/ctl.o src/extent.o src/hash.o src/huge.o src/mb.o src/mutex.o src/prof.o src/quarantine.o src/rtree.o src/stats.o src/tcache.o src/util.o src/tsd.o make[4]: Leaving directory/home/ttp/src/nbase-arc/redis-2.8.8/deps/jemalloc'
make[3]: Leaving directory /home/ttp/src/nbase-arc/redis-2.8.8/deps' CC adlist.o CC ae.o CC anet.o CC dict.o CC redis.o redis.c: In function ‘adjustOpenFilesLimit’: redis.c:1870:25: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘rlim_t’ [-Wformat=] "%llu. Exiting.", oldlimit, maxfiles); ^ redis.c:1870:25: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘rlim_t’ [-Wformat=] redis.c:1875:21: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘rlim_t’ [-Wformat=] old_maxclients, maxfiles); ^ redis.c:1878:21: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘rlim_t’ [-Wformat=] maxfiles, strerror(setrlimit_error)); ^ redis.c:1883:21: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘rlim_t’ [-Wformat=] oldlimit, server.maxclients); ^ redis.c:1887:21: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 3 has type ‘rlim_t’ [-Wformat=] maxfiles, oldlimit); ^ redis.c:1887:21: warning: format ‘%llu’ expects argument of type ‘long long unsigned int’, but argument 4 has type ‘rlim_t’ [-Wformat=] CC sds.o CC zmalloc.o CC lzf_c.o CC lzf_d.o CC pqsort.o CC zipmap.o CC sha1.o CC ziplist.o CC release.o CC networking.o CC util.o CC object.o CC db.o CC replication.o CC rdb.o CC t_string.o CC t_list.o CC t_set.o CC t_zset.o CC t_hash.o CC t_sss2.o t_sss2.c: In function ‘sssGcCron’: t_sss2.c:2614:7: warning: variable ‘num_dead’ set but not used [-Wunused-but-set-variable] int num_dead; ^ CC config.o CC aof.o CC pubsub.o CC multi.o CC debug.o CC sort.o CC intset.o CC syncio.o CC migrate.o CC endianconv.o CC slowlog.o CC scripting.o CC bio.o CC rio.o CC rand.o CC memtest.o CC crc64.o CC bitops.o CC sentinel.o CC notify.o CC setproctitle.o CC smr_networking.o CC smr_checkpoint.o CC redis-arc.o CC cluster-util.o CC dump-util.o LINK redis-server cc: error: ../../smr/smr/libsmr.a: No such file or directory make[2]: *** [redis-server] Error 1 make[2]: Leaving directory/home/ttp/src/nbase-arc/redis-2.8.8/src'
make[1]: *** [test] Error 2
make[1]: Leaving directory `/home/ttp/src/nbase-arc/redis-2.8.8'
make: *** [test] Error 2

Is it Okay?

@otheng03
Copy link

@drawhan
It seems a compilation error therefore it should branch to a new issue #79

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants