Giter VIP home page Giter VIP logo

fastdfs's People

Stargazers

 avatar

Watchers

 avatar

fastdfs's Issues

trunk文件无法删除的问题

你好,我使用的v3.04版本,我因为是存储海量的小文件,所以
开启了trunk功能,参数配置如下:
use_trunk_file = false
slot_min_size = 256
slot_max_size = 16MB
trunk_file_size = 64MB
我上传文件,下载文件,删除每个上传的文件,都没有任何��
�题。
但是我把上传的文件全部删除完后,发现服务器上的trunk文件
无法删除。依然占用着磁盘空间。
[root@hadoop 00]# ls
000001  000007  000013  000019  000025  000031  000037  000043  000049  000055
000002  000008  000014  000020  000026  000032  000038  000044  000050  000056
000003  000009  000015  000021  000027  000033  000039  000045  000051
请问作者,这些trunk文件用啥接口可以删除。我认为这是fastdf
s的一个BUG,理论上我将trunk文件中保存的小文件全部删除完��
�后,fastdfs应该自动清除trunk文件。

Original issue reported on code.google.com by [email protected] on 15 Dec 2011 at 9:30

能给个联系方式吗?


   您好!
   看了一下您做的fastdfs,觉得不错,不过我们的应用与网站有一些差别,希望能在fastdfs基础上面
做修改,不知道是否可以提供支持。

Original issue reported on code.google.com by [email protected] on 28 Jan 2010 at 5:36

nginx+fastdfs-nginx-module compile error

objs/addon/src/ngx_http_fastdfs_module.o: In function 
`fdfs_http_request_handler':
fastdfs-nginx-module/src/common.c:417: undefined reference to 
`fdfs_get_file_info_ex'
collect2: ld returned 1 exit status
make[1]: *** [objs/nginx] Error 1

source version:
   nginx-0.8.53
   fastdfs-nginx-module_v1.02.tar.gz
linux: rhel5.4

Original issue reported on code.google.com by [email protected] on 30 Dec 2010 at 1:23

fastdfs-nginx-module有错误

gcc version 4.2.4
nginx-0.8.53
fastdfs-nginx-module_v1.01.tar.gz

编译时过不去,报错如下:
make[1]: Entering directory `/root/nginx-0.8.53'
gcc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter 
-Wunused-function -Wunused-variable -Wunused-value -Werror -g  
-D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' 
-DFDFS_MOD_CONF_FILENAME='"/etc/fdfs/mod_fastdfs.conf"'  -I src/core -I 
src/event -I src/event/modules -I src/os/unix -I /usr/local/include/fastdfs -I 
/usr/local/include/fastcommon/ -I objs -I src/http -I src/http/modules -I 
src/mail \
                -o objs/addon/src/ngx_http_fastdfs_module.o \
                /root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c
cc1: warnings being treated as errors
/root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c: In function 
'fdfs_output_headers':
/root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c:141: warning: pointer 
targets in assignment differ in signedness
/root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c: In function 
'ngx_http_fastdfs_proxy_create_request':
/root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c:382: warning: pointer 
targets in passing argument 1 of '__builtin_strchr' differ in signedness
/root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c: In function 
'ngx_http_fastdfs_handler':
/root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c:734: warning: pointer 
targets in assignment differ in signedness
/root/fastdfs-nginx-module/src/ngx_http_fastdfs_module.c:735: warning: pointer 
targets in assignment differ in signedness
make[1]: *** [objs/addon/src/ngx_http_fastdfs_module.o] Error 1
make[1]: Leaving directory `/root/nginx-0.8.53'
make: *** [build] Error 2

Original issue reported on code.google.com by [email protected] on 1 Dec 2010 at 8:48

python客户端安装失败

python setup.py install


C:\fdfs_client-py-1.2.6>python setup.
py install
running install
running build
running build_py
creating build
creating build\lib.win-amd64-2.6
creating build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\client.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\connection.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\exceptions.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\fdfs_protol.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\fdfs_test.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\storage_client.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\tracker_client.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\utils.py -> build\lib.win-amd64-2.6\fdfs_client
copying fdfs_client\__init__.py -> build\lib.win-amd64-2.6\fdfs_client
running build_ext
building 'fdfs_client.sendfile' extension
Traceback (most recent call last):
  File "setup.py", line 37, in <module>
    setup(**sdict)
  File "C:\Python26\lib\distutils\core.py", line 152, in setup
    dist.run_commands()
  File "C:\Python26\lib\distutils\dist.py", line 975, in run_commands
    self.run_command(cmd)
  File "C:\Python26\lib\distutils\dist.py", line 995, in run_command
    cmd_obj.run()
  File "C:\Python26\lib\distutils\command\install.py", line 577, in run
    self.run_command('build')
  File "C:\Python26\lib\distutils\cmd.py", line 333, in run_command
    self.distribution.run_command(command)
  File "C:\Python26\lib\distutils\dist.py", line 995, in run_command
    cmd_obj.run()
  File "C:\Python26\lib\distutils\command\build.py", line 134, in run
    self.run_command(cmd_name)
  File "C:\Python26\lib\distutils\cmd.py", line 333, in run_command
    self.distribution.run_command(command)
  File "C:\Python26\lib\distutils\dist.py", line 995, in run_command
    cmd_obj.run()
  File "C:\Python26\lib\distutils\command\build_ext.py", line 340, in run
    self.build_extensions()
  File "C:\Python26\lib\distutils\command\build_ext.py", line 449, in build_exte
nsions
    self.build_extension(ext)
  File "C:\Python26\lib\distutils\command\build_ext.py", line 499, in build_exte
nsion
    depends=ext.depends)
  File "C:\Python26\lib\distutils\msvc9compiler.py", line 458, in compile
    self.initialize()
  File "C:\Python26\lib\distutils\msvc9compiler.py", line 368, in initialize
    vc_env = query_vcvarsall(VERSION, plat_spec)
  File "C:\Python26\lib\distutils\msvc9compiler.py", line 284, in query_vcvarsal
l
    raise ValueError(str(list(result.keys())))
ValueError: [u'path']


环境:
windows7 64位+python 2.6.6

Original issue reported on code.google.com by yibin.net on 29 Aug 2012 at 2:14

fastdfs delete issue

fastdfs delete 
方式是用来删除remote_filename的,似乎只是用来删除软链接。而�
��有删除真正在storage上的文件。 
如何删除呢。这是基于什么考虑呢。

Original issue reported on code.google.com by [email protected] on 21 Aug 2012 at 2:24

几个疑问请教

在研究代码时有几个困惑,希望能解答:

1. 
client端读取client.conf配置文件后,会获得所有tracker服务器信��
�,但访问机制上,我怎么看着始终是访问的同一个tracker?

     server_index在整个代码里没看到有做任何控制,使得连接tracker server的时候没有调度策略。

     这个问题不知道是不是我理解有问题,请教!

server_index = pTrackerGroup->server_index;
 if (server_index >= pTrackerGroup->server_count)
 {
  server_index = 0;
 }


2.代码里看到一个group内的storage 
server数目上限是32个,而我目前代码中看到的一个storage存储��
�一个数据文件后,仅仅从剩余的storage 
server中又拿了一个slave进行了update,而并未对其余server进行更
新。而从FastDFS的整体介绍来看,一个group内的
所有storage server 
应该是存储了一样的数据,这个理解正确吗?如果是正确的��
� 那上述update操作为何仅仅更新一台server?
    目前,我理解你的group内的N+1台storage server 应该是N台做备份,不知道这个基本理解是不是错了?


Original issue reported on code.google.com by [email protected] on 8 Jun 2012 at 9:04

并发写出现的问题

采用多个客户端同时往一个tracker 
server插入数据,总出现下面的日志。

[2013-04-03 12:58:24] DEBUG - file: tracker_nio.c, line: 268, client ip: 
X.X.X.X, recv failed, connection disconnected.

是不是并行写有什么注意事项?

Original issue reported on code.google.com by [email protected] on 3 Apr 2013 at 9:10

在ubuntu下make.sh文件有一点小问题

由于我的系统是Ubuntu 11.10 x86_64 x86_64 x86_64 GNU/Linux
在执行时出现以下错误提示:

/home/zhxia/apps/db/FastDFS/tracker/../common/sched_thread.c:495: undefined 
reference to `pthread_create'
../common/pthread_func.o: In function `init_pthread_lock':
/home/zhxia/apps/db/FastDFS/tracker/../common/pthread_func.c:32: undefined 
reference to `pthread_mutexattr_init'
/home/zhxia/apps/db/FastDFS/tracker/../common/pthread_func.c:40: undefined 
reference to `pthread_mutexattr_settype'
/home/zhxia/apps/db/FastDFS/tracker/../common/pthread_func.c:57: undefined 
reference to `pthread_mutexattr_destroy'
../common/pthread_func.o: In function `init_pthread_attr':
/home/zhxia/apps/db/FastDFS/tracker/../common/pthread_func.c:84: undefined 
reference to `pthread_attr_getstacksize'
/home/zhxia/apps/db/FastDFS/tracker/../common/pthread_func.c:115: undefined 
reference to `pthread_attr_setstacksize'
../common/pthread_func.o: In function `create_work_threads':
/home/zhxia/apps/db/FastDFS/tracker/../common/pthread_func.c:156: undefined 
reference to `pthread_create'
../common/pthread_func.o: In function `kill_work_threads':
/home/zhxia/apps/db/FastDFS/tracker/../common/pthread_func.c:182: undefined 
reference to `pthread_kill'

经查,是在make.sh的92行的判断遗漏了本系统,需要加一个:
[ -f /usr/lib/x86_64-linux-gnu/libpthread.a ]

即可以正常编译!


Original issue reported on code.google.com by [email protected] on 25 Feb 2013 at 10:31

Tests通不过..

V1.18中存在test目录下的程序编译不通过的问题。
最新的代码中修复了这个问题。大家可以下载最新代码:
svn checkout http://fastdfs.googlecode.com/svn/trunk/ fastdfs-read-only
或者
svn export http://fastdfs.googlecode.com/svn/trunk/ fastdfs-read-only

Original issue reported on code.google.com by xurenlu on 4 May 2009 at 8:56

java client 1.23: StorageServer在何处关闭的问题

do_upload_file等方法中,对于从外部传入的StorageServer也在用完��
�后关闭。我的问题是,按照谁调用谁释放的原则,不是应该�
��调用者就主动调用StorageServer.close()方法关闭么?

代码:
this.storageServer.close();//这句不是应该留给调用者关闭么?不知
您放在这里关闭,是不是有什么考虑?
if (bNewConnection) {
    this.storageServer = null;
}

Original issue reported on code.google.com by [email protected] on 30 Nov 2012 at 6:25

连接池的bug,看description 的38行

ConnectionInfo *conn_pool_get_connection(ConnectionPool *cp, 
    const ConnectionInfo *conn, int *err_no)
{
............
if (cm->head == NULL)
        {
            if ((cp->max_count_per_entry > 0) && 
                (cm->total_count >= cp->max_count_per_entry))
            {
                *err_no = ENOSPC;
                logError("file: "__FILE__", line: %d, " \
                    "connections: %d of server %s:%d " \
                    "exceed limit: %d", __LINE__, \
                    cm->total_count, conn->ip_addr, \
                    conn->port, cp->max_count_per_entry);
                pthread_mutex_unlock(&cm->lock);
                return NULL;
            }

            bytes = sizeof(ConnectionInfo) + sizeof(ConnectionNode);
            p = (char *)malloc(bytes);
            if (p == NULL)
            {
                *err_no = errno != 0 ? errno : ENOMEM;
                logError("file: "__FILE__", line: %d, " \
                    "malloc %d bytes fail, errno: %d, " \
                    "error info: %s", __LINE__, \
                    bytes, *err_no, STRERROR(*err_no));
                pthread_mutex_unlock(&cm->lock);
                return NULL;
            }

            node = (ConnectionNode *)(p + sizeof(ConnectionInfo));
            node->conn = (ConnectionInfo *)p;
            node->manager = cm;
            node->next = NULL;
            node->atime = 0;
  38                       cm->head = node //是不是应加上这行代码呢?
            cm->total_count++;
            pthread_mutex_unlock(&cm->lock);

            memcpy(node->conn, conn, sizeof(ConnectionInfo));
            node->conn->sock = -1;
            *err_no = conn_pool_connect_server(node->conn, \
                    cp->connect_timeout);
            if (*err_no != 0)
            {
                free(p);
                return NULL;
            }

            logDebug("file: "__FILE__", line: %d, " \
                "server %s:%d, new connection: %d, " \
                "total_count: %d, free_count: %d",   \
                __LINE__, conn->ip_addr, conn->port, \
                node->conn->sock, cm->total_count, \
                cm->free_count);
            return node->conn;
        }
        else
        {
            node = cm->head;
            ci = node->conn;
            cm->head = node->next;
            cm->free_count--;

            if (current_time - node->atime > cp->max_idle_time)
            {
                cm->total_count--;

                logDebug("file: "__FILE__", line: %d, " \
                    "server %s:%d, connection: %d idle " \
                    "time: %d exceeds max idle time: %d, "\
                    "total_count: %d, free_count: %d", \
                    __LINE__, conn->ip_addr, conn->port, \
                    ci->sock, \
                    (int)(current_time - node->atime), \
                    cp->max_idle_time, cm->total_count, \
                    cm->free_count);

                conn_pool_disconnect_server(ci);
                free(ci);
                continue;
            }

..............
}

Original issue reported on code.google.com by [email protected] on 10 Apr 2013 at 2:34

安装php_client的make的时候报错

FastDFS服务都安装好了,通过fdfs_test测试通过了,但是安装php_
client的make的时候报以下错误:

[root@172-1-1-105 php_client]# make
/bin/sh /data/soft/FastDFS/php_client/libtool --mode=compile cc  -I. 
-I/data/soft/FastDFS/php_client -DPHP_ATOM_INC 
-I/data/soft/FastDFS/php_client/include -I/data/soft/FastDFS/php_client/main 
-I/data/soft/FastDFS/php_client -I/usr/local/php/include/php 
-I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM 
-I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext 
-I/usr/local/php/include/php/ext/date/lib -I/usr/local/include  -DHAVE_CONFIG_H 
 -g -O2 -Werror -Wall   -c /data/soft/FastDFS/php_client/fastdfs_client.c -o 
fastdfs_client.lo 
mkdir .libs
 cc -I. -I/data/soft/FastDFS/php_client -DPHP_ATOM_INC -I/data/soft/FastDFS/php_client/include -I/data/soft/FastDFS/php_client/main -I/data/soft/FastDFS/php_client -I/usr/local/php/include/php -I/usr/local/php/include/php/main -I/usr/local/php/include/php/TSRM -I/usr/local/php/include/php/Zend -I/usr/local/php/include/php/ext -I/usr/local/php/include/php/ext/date/lib -I/usr/local/include -DHAVE_CONFIG_H -g -O2 -Werror -Wall -c /data/soft/FastDFS/php_client/fastdfs_client.c  -fPIC -DPIC -o .libs/fastdfs_client.o
/data/soft/FastDFS/php_client/fastdfs_client.c:80: error: expected '=', ',', 
';', 'asm' or '__attribute__' before 'fastdfs_client_functions'
/data/soft/FastDFS/php_client/fastdfs_client.c:116: error: 
'fastdfs_client_functions' undeclared here (not in a function)
/data/soft/FastDFS/php_client/fastdfs_client.c: In function 'php_fdfs_new':
/data/soft/FastDFS/php_client/fastdfs_client.c:3346: error: 'zend_class_entry' 
has no member named 'default_properties'
make: *** [fastdfs_client.lo] Error 1

我直接从make开始都贴出来了,望高手相助,本地PHP环境是5.4.
8

Original issue reported on code.google.com by [email protected] on 30 Jan 2013 at 3:23

fastdfs的php_client在php-5.3.6下编译出错了

fastdfs的php_client在ubuntu10.10 x86 
64位系统下php-5.3.6编译出现如下错误:
/home/ubuntu/下载/FastDFS/php_client/fastdfs_client.c:2443: error: 
‘tsrm_ls’ undeclared (first use in this function)
/home/ubuntu/下载/FastDFS/php_client/fastdfs_client.c:2443: error: (Each 
undeclared identifier is reported only once
/home/ubuntu/下载/FastDFS/php_client/fastdfs_client.c:2443: error: for each 
function it appears in.)
/home/ubuntu/下载/FastDFS/php_client/fastdfs_client.c: In function 
‘php_fdfs_download_callback’:
/home/ubuntu/下载/FastDFS/php_client/fastdfs_client.c:2492: error: 
‘tsrm_ls’ undeclared (first use in this function)
make: *** [fastdfs_client.lo] 错误 1

Original issue reported on code.google.com by [email protected] on 25 Sep 2011 at 2:05

the restart.sh should be renamed

After install the fastdfs, there's a restart.sh control file under
/usr/local/bin/.

I think this file should be renamed, for example,  fastdfs_restart.sh.

Original issue reported on code.google.com by [email protected] on 20 Aug 2009 at 7:51

php_client compilation failed with php 5.4rc1

What steps will reproduce the problem?
1. download and install php 5.4rc1 from php.net
2. compile fastdfs 3.04
3. compile fastdfs php extension whith php 5.4rc1

What is the expected output? What do you see instead?

Hope you have time to look at it. thanks.

What version of the product are you using? On what operating system?


Please provide any additional information below.

 cc -I. -I/data/src/FastDFS/php_client -DPHP_ATOM_INC -I/data/src/FastDFS/php_client/include -I/data/src/FastDFS/php_client/main -I/data/src/FastDFS/php_client -I/usr/local/php.540/include/php -I/usr/local/php.540/include/php/main -I/usr/local/php.540/include/php/TSRM -I/usr/local/php.540/include/php/Zend -I/usr/local/php.540/include/php/ext -I/usr/local/php.540/include/php/ext/date/lib -I/usr/local/include/fastcommon -I/usr/local/include/fastdfs -DHAVE_CONFIG_H -g -O2 -Werror -Wall -c /data/src/FastDFS/php_client/fastdfs_client.c  -fPIC -DPIC -o .libs/fastdfs_client.o
/data/src/FastDFS/php_client/fastdfs_client.c:97:2: error: unknown type name 
‘function_entry’
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: braces around scalar 
initializer [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: (near initialization 
for ‘fastdfs_client_functions[0]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: initialization makes 
integer from pointer without a cast [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: (near initialization 
for ‘fastdfs_client_functions[0]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: initializer element 
is not computable at load time
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: (near initialization 
for ‘fastdfs_client_functions[0]’)
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: excess elements in 
scalar initializer [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: (near initialization 
for ‘fastdfs_client_functions[0]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: excess elements in 
scalar initializer [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: (near initialization 
for ‘fastdfs_client_functions[0]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: excess elements in 
scalar initializer [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: (near initialization 
for ‘fastdfs_client_functions[0]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: excess elements in 
scalar initializer [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:98:3: error: (near initialization 
for ‘fastdfs_client_functions[0]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:99:3: error: braces around scalar 
initializer [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:99:3: error: (near initialization 
for ‘fastdfs_client_functions[1]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:99:3: error: initialization makes 
integer from pointer without a cast [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:99:3: error: (near initialization 
for ‘fastdfs_client_functions[1]’) [-Werror]
/data/src/FastDFS/php_client/fastdfs_client.c:99:3: error: initializer element 
is not computable at load time
/data/src/FastDFS/php_client/fastdfs_client.c:99:3: error: (near initialization 
for ‘fastdfs_client_functions[1]’)
/data/src/FastDFS/php_client/fastdfs_client.c:99:3: error: excess elements in 
scalar initializer [-Werror]

Original issue reported on code.google.com by [email protected] on 22 Nov 2011 at 4:04

fastdfs

在上传文件到 fastdfs 后文件似乎会被 同步到不同的节点 
但是不是以数据块的方式,而是整个文件的方式,这种方式��
�得在每个节点可以直接copy到客户上传的文件。 
有什么方法可以使得安全性提高。 
像HDFS这种分布式文件系统的构架  fastdfs 可以做到么 谢谢。

Original issue reported on code.google.com by [email protected] on 10 Aug 2012 at 7:07

A runnable sample for Java client is need

Runnable Sample could be a very good demo of how to use your library, and lower 
learning curve.
I just start to learn basic concept and usage of your product, it would be very 
helpful, if you can show some sample code for java client.

Original issue reported on code.google.com by [email protected] on 23 Nov 2010 at 2:14

fastdfs-nginx-module 能否增加url参数支持断点续传

如题:我们在做视频类服务时,由于flash 
player沙箱限制无法传入Range 
Header.悲剧啊,期望能够支持url方式设置起始点,类似ngx_http_flv
_module.c支持的功能,如:
http://xxx/group1/M01/00/3F/oYYBAFIWCDaAQPNDALsm3btjELI896.flv?start=10240

Original issue reported on code.google.com by [email protected] on 23 Aug 2013 at 8:03

本地文件操作接口太不给力

比如在cdn场景中,边缘节点从中心节点拉取视频文件(很大��
�,同时要边下载边向客户推流,
在这种场景下对本地文件的操作缺少有力的接口支持。

Original issue reported on code.google.com by [email protected] on 13 Jun 2012 at 8:08

能否改变算法?

感觉用卷名扩展的算法很不好,有个默认的时间顺序,不太��
�做到负载均衡。老机器写满后,
新加的组读写访问会很大。一般的数据,图片,视频,都是��
�数据大量被读写访问,这样不久就
有老机器沉
默,对性能很不好。
另外一个方面是,这不能完全做到客户端透明。客户端必须��
�到返回的卷号,才能了解数据存储
所在,不能只
凭已经的文件名就访问到数据。考虑到使用分布存储的,一��
�也是异步式的分布操作,这样非常
不方便。


Original issue reported on code.google.com by [email protected] on 26 Jul 2009 at 10:59

java 客户端并行上传文件,出现错误

2012-10-27 10:16:49,725 ERROR 
[com.starit.ueap.collect.worker.spi.impl.DefaultCollectDataPreserveStrategy] - 
<upload file "fileName4Test.xml" fails; nested exception is 
java.io.IOException: recv cmd: 0 is not correct, expect cmd: 100>
com.starit.ueap.collect.common.fastdfs.FileStorageException: upload file 
"fileName4Test.xml" fails; nested exception is java.io.IOException: recv cmd: 0 
is not correct, expect cmd: 100
    at com.starit.ueap.collect.common.fastdfs.FdfsStorageServiceImpl.uploadFile(FdfsStorageServiceImpl.java:72) ~[classes/:na]
    at com.starit.ueap.collect.common.fastdfs.FdfsStorageServiceImpl.uploadFile(FdfsStorageServiceImpl.java:50) ~[classes/:na]
    at com.starit.ueap.collect.worker.spi.impl.DefaultCollectDataPreserveStrategy.saveCollectData(DefaultCollectDataPreserveStrategy.java:36) ~[classes/:na]
    at com.starit.ueap.collect.worker.task.AbstractCollectTask.run(AbstractCollectTask.java:37) [classes/:na]
    at com.starit.ueap.collect.worker.support.CollectTaskManager$1.run(CollectTaskManager.java:50) [classes/:na]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [na:1.7.0]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [na:1.7.0]
    at java.lang.Thread.run(Thread.java:722) [na:1.7.0]
Caused by: java.io.IOException: recv cmd: 0 is not correct, expect cmd: 100
    at org.csource.fastdfs.ProtoCommon.recvHeader(ProtoCommon.java:214) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.ProtoCommon.recvPackage(ProtoCommon.java:245) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.TrackerClient.getStoreStorage(TrackerClient.java:143) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.StorageClient.newWritableStorageConnection(StorageClient.java:1913) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.StorageClient.do_upload_file(StorageClient.java:703) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.StorageClient.upload_file(StorageClient.java:266) ~[fastdfs-client-1.22.jar:na]
    at com.starit.ueap.collect.common.fastdfs.FdfsStorageServiceImpl.uploadFile(FdfsStorageServiceImpl.java:69) ~[classes/:na]
    ... 7 common frames omitted
2012-10-27 10:16:49,728 ERROR 
[com.starit.ueap.collect.worker.spi.impl.DefaultCollectDataPreserveStrategy] - 
<upload file "fileName4Test.xml" fails; nested exception is 
java.net.SocketException: Socket Closed>
com.starit.ueap.collect.common.fastdfs.FileStorageException: upload file 
"fileName4Test.xml" fails; nested exception is java.net.SocketException: Socket 
Closed
    at com.starit.ueap.collect.common.fastdfs.FdfsStorageServiceImpl.uploadFile(FdfsStorageServiceImpl.java:72) ~[classes/:na]
    at com.starit.ueap.collect.common.fastdfs.FdfsStorageServiceImpl.uploadFile(FdfsStorageServiceImpl.java:50) ~[classes/:na]
    at com.starit.ueap.collect.worker.spi.impl.DefaultCollectDataPreserveStrategy.saveCollectData(DefaultCollectDataPreserveStrategy.java:36) ~[classes/:na]
    at com.starit.ueap.collect.worker.task.AbstractCollectTask.run(AbstractCollectTask.java:37) [classes/:na]
    at com.starit.ueap.collect.worker.support.CollectTaskManager$1.run(CollectTaskManager.java:50) [classes/:na]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) [na:1.7.0]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) [na:1.7.0]
    at java.lang.Thread.run(Thread.java:722) [na:1.7.0]
Caused by: java.net.SocketException: Socket Closed
    at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.7.0]
    at java.net.SocketInputStream.read(SocketInputStream.java:150) ~[na:1.7.0]
    at java.net.SocketInputStream.read(SocketInputStream.java:121) ~[na:1.7.0]
    at org.csource.fastdfs.ProtoCommon.recvPackage(ProtoCommon.java:258) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.TrackerClient.getStoreStorage(TrackerClient.java:143) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.StorageClient.newWritableStorageConnection(StorageClient.java:1913) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.StorageClient.do_upload_file(StorageClient.java:703) ~[fastdfs-client-1.22.jar:na]
    at org.csource.fastdfs.StorageClient.upload_file(StorageClient.java:266) ~[fastdfs-client-1.22.jar:na]
    at com.starit.ueap.collect.common.fastdfs.FdfsStorageServiceImpl.uploadFile(FdfsStorageServiceImpl.java:69) ~[classes/:na]
    ... 7 common frames omitted



java 操作代码:
private TrackerServer trackerServer;
    private StorageClient1 client;

    @Override
    public void afterPropertiesSet() throws Exception {
        String classPath = FdfsStorageServiceImpl.class.getClassLoader().getResource(".").getPath();
        ClientGlobal.init(classPath + File.separator + dfsConfig);

        TrackerClient tracker = new TrackerClient();  
        trackerServer = tracker.getConnection();  
        StorageServer storageServer = null;  
        client = new StorageClient1(trackerServer, storageServer);  
    }

    @Override
    public void destroy() throws Exception {
        trackerServer.close();  
    }

    @Override
    public String uploadFile(String content, String uploadFileName) {
        byte[] buffer = content.getBytes();
        ByteArrayInputStream inStream = new ByteArrayInputStream(buffer);
        return this.uploadFile(inStream, uploadFileName, buffer.length);
    }

Original issue reported on code.google.com by [email protected] on 27 Oct 2012 at 2:22

why always this proplem

I have downloaded the last release (FastDFS_v1.24) archive and build it in
ubuntu (9.04 and 9.10) and ./make.sh install with no errors but when run it
with the command "/usr/local/bin/fdfs_trackerd tracker.conf" there is
always some error :
==========================================================================

*** buffer overflow detected ***: /usr/local/bin/fdfs_trackerd terminated
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6(__fortify_fail+0x48)[0xb7f07da8]
/lib/tls/i686/cmov/libc.so.6[0xb7f05eb0]
/lib/tls/i686/cmov/libc.so.6[0xb7f055a8]
/lib/tls/i686/cmov/libc.so.6(_IO_default_xsputn+0xc8)[0xb7e77bb8]
/lib/tls/i686/cmov/libc.so.6(_IO_vfprintf+0x133)[0xb7e49963]
/lib/tls/i686/cmov/libc.so.6(__vsprintf_chk+0xa4)[0xb7f05654]
/lib/tls/i686/cmov/libc.so.6(__sprintf_chk+0x2d)[0xb7f0559d]
/usr/local/bin/fdfs_trackerd[0x805100b]
/usr/local/bin/fdfs_trackerd[0x8051407]
/usr/local/bin/fdfs_trackerd[0x804ef24]
/usr/local/bin/fdfs_trackerd[0x804ffae]
/usr/local/bin/fdfs_trackerd[0x805080f]
/usr/local/bin/fdfs_trackerd[0x805f76b]
/usr/local/bin/fdfs_trackerd[0x804a35f]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe5)[0xb7e20775]
/usr/local/bin/fdfs_trackerd[0x804a1f1]
======= Memory map: ========
08048000-08066000 r-xp 00000000 08:02 40760      /usr/local/bin/fdfs_trackerd
08066000-08067000 r--p 0001d000 08:02 40760      /usr/local/bin/fdfs_trackerd
08067000-08068000 rw-p 0001e000 08:02 40760      /usr/local/bin/fdfs_trackerd
0991b000-0993c000 rw-p 0991b000 00:00 0          [heap]
b7dc1000-b7dce000 r-xp 00000000 08:02 1104       /lib/libgcc_s.so.1
b7dce000-b7dcf000 r--p 0000c000 08:02 1104       /lib/libgcc_s.so.1
b7dcf000-b7dd0000 rw-p 0000d000 08:02 1104       /lib/libgcc_s.so.1
b7dd0000-b7dd2000 rw-p b7dd0000 00:00 0 
b7dd2000-b7de4000 r-xp 00000000 08:02 3723      
/lib/tls/i686/cmov/libresolv-2.9.so
b7de4000-b7de5000 r--p 00011000 08:02 3723      
/lib/tls/i686/cmov/libresolv-2.9.so
b7de5000-b7de6000 rw-p 00012000 08:02 3723      
/lib/tls/i686/cmov/libresolv-2.9.so
b7de6000-b7de8000 rw-p b7de6000 00:00 0 
b7de8000-b7def000 r-xp 00000000 08:02 3724      
/lib/tls/i686/cmov/librt-2.9.so
b7def000-b7df0000 r--p 00006000 08:02 3724      
/lib/tls/i686/cmov/librt-2.9.so
b7df0000-b7df1000 rw-p 00007000 08:02 3724      
/lib/tls/i686/cmov/librt-2.9.so
b7df1000-b7e06000 r-xp 00000000 08:02 3713      
/lib/tls/i686/cmov/libnsl-2.9.so
b7e06000-b7e07000 r--p 00014000 08:02 3713      
/lib/tls/i686/cmov/libnsl-2.9.so
b7e07000-b7e08000 rw-p 00015000 08:02 3713      
/lib/tls/i686/cmov/libnsl-2.9.so
b7e08000-b7e0a000 rw-p b7e08000 00:00 0 
b7e0a000-b7f66000 r-xp 00000000 08:02 3707       /lib/tls/i686/cmov/libc-2.9.so
b7f66000-b7f67000 ---p 0015c000 08:02 3707       /lib/tls/i686/cmov/libc-2.9.so
b7f67000-b7f69000 r--p 0015c000 08:02 3707       /lib/tls/i686/cmov/libc-2.9.so
b7f69000-b7f6a000 rw-p 0015e000 08:02 3707       /lib/tls/i686/cmov/libc-2.9.so
b7f6a000-b7f6e000 rw-p b7f6a000 00:00 0 
b7f6e000-b7f83000 r-xp 00000000 08:02 3722      
/lib/tls/i686/cmov/libpthread-2.9.so
b7f83000-b7f84000 r--p 00014000 08:02 3722      
/lib/tls/i686/cmov/libpthread-2.9.so
b7f84000-b7f85000 rw-p 00015000 08:02 3722      
/lib/tls/i686/cmov/libpthread-2.9.so
b7f85000-b7f87000 rw-p b7f85000 00:00 0 
b7f87000-b7f9f000 r-xp 00000000 08:02 40875      /usr/lib/libevent-1.4.so.2.1.3
b7f9f000-b7fa0000 r--p 00017000 08:02 40875      /usr/lib/libevent-1.4.so.2.1.3
b7fa0000-b7fa1000 rw-p 00018000 08:02 40875      /usr/lib/libevent-1.4.so.2.1.3
b7fa5000-b7fa7000 rw-p b7fa5000 00:00 0 
b7fa7000-b7fa8000 r-xp b7fa7000 00:00 0          [vdso]
b7fa8000-b7fc4000 r-xp 00000000 08:02 15666      /lib/ld-2.9.so
b7fc4000-b7fc5000 r--p 0001b000 08:02 15666      /lib/ld-2.9.so
b7fc5000-b7fc6000 rw-p 0001c000 08:02 15666      /lib/ld-2.9.so
bfae8000-bfafd000 rw-p bffeb000 00:00 0          [stack]
Aborted


Original issue reported on code.google.com by [email protected] on 16 Jan 2010 at 4:59

add string desc for socket error

use the php client to upload a file.

the client report error: storage_upload_by_filename fail, result=28

I step into the storage client, tracker client and common php, and finally 
found the function fdfs_recv_header() repport the error. 

Then I google 'socket error 28', It's means device full.

So I suggest add string desc for the socket error. http://corz.org/public/
scripts/docs/php/php.TCP-IP.socket.error.codes.txt



Original issue reported on code.google.com by [email protected] on 25 Aug 2009 at 2:14

java client v1.23: get_file_info方法的疑问

if ((remote_filename.length() > ProtoCommon.FDFS_FILE_PATH_LEN + 
ProtoCommon.FDFS_FILENAME_BASE64_LENGTH + 
ProtoCommon.FDFS_FILE_EXT_NAME_MAX_LEN + 1) || (file_size == 
ProtoCommon.INFINITE_FILE_SIZE)) {
   //代码。。。
}

我使用upload_appender_file方法上传文件之后,拿回来的fileSize恒�
��0。fdfsdfs java client中的测试例子也是如此。

byte[] buff = 
base64.decodeAuto(remote_filename.substring(ProtoCommon.FDFS_FILE_PATH_LEN, 
ProtoCommon.FDFS_FILE_PATH_LEN+ ProtoCommon.FDFS_FILENAME_BASE64_LENGTH));
long file_size = ProtoCommon.buff2long(buff, 4 * 2);
这两条语句从fileId中解出文件的文件大小数值低32位恒为0.

if语句中的file_size==ProtoCommon.INFINITE_FILE_SIZE是正数,貌似这个�
��件在这个if语句中不会为真,导致appender的文件没有调用query
_file_info方法获取真实的文件大小。

Original issue reported on code.google.com by [email protected] on 29 Nov 2012 at 3:06

2.08版本,上传slave文件后,然后下载生成的file_id,出错?

如题:

我执行了/usr/local/bin/fdfs_test1 /etc/fdfs/client.conf upload wangmh.jpg 
生成group1/M00/00/00/fwAAAU15iLn8UYcDAAJwD34dv-M193_big.jpg的slave文件。

然后执行 /usr/local/bin/fdfs_test1 /etc/fdfs/client.conf download  
group1/M00/00/00/fwAAAU15iLn8UYcDAAJwD34dv-M193_big.jpg
结果报错 error 21;说是is a directory .

对版本2.07相同操作无问题

Original issue reported on code.google.com by [email protected] on 11 Mar 2011 at 11:05

fastdfs-nginx-module_v1.05 does not compile with FastDFS_v3.00

What steps will reproduce the problem?
1. make and install FastDFS 3.00
2. configure nginx with fastdfs nginx module
3. failed to make nginx and fastdfs module

What is the expected output? What do you see instead?
make[1]:  `/home/u10/src/nginx-1.0.4'
gcc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter 
-Wunused-function -Wunused-variable -Wunused-value -Werror -g  
-D_FILE_OFFSET_BITS=64 -DFDFS_OUTPUT_CHUNK_SIZE='256*1024' 
-DFDFS_MOD_CONF_FILENAME='"/etc/fdfs/mod_fastdfs.conf"'  -I src/core -I 
src/event -I src/event/modules -I src/os/unix -I /usr/local/include/fastdfs -I 
/usr/local/include/fastcommon/ -I objs -I src/http -I src/http/modules -I 
src/mail \
                -o objs/addon/src/ngx_http_fastdfs_module.o \
                /home/u10/src/fastdfs-nginx-module/src//ngx_http_fastdfs_module.c
In file included from 
/home/u10/src/fastdfs-nginx-module/src//ngx_http_fastdfs_module.c:6:
/home/u10/src/fastdfs-nginx-module/src//common.c: In function 
‘fdfs_http_request_handler’:
/home/u10/src/fastdfs-nginx-module/src//common.c:392: error: 
‘FDFS_FILE_PATH_LEN’ undeclared (first use in this function)
/home/u10/src/fastdfs-nginx-module/src//common.c:392: error: (Each undeclared 
identifier is reported only once
/home/u10/src/fastdfs-nginx-module/src//common.c:392: error: for each function 
it appears in.)


What version of the product are you using? On what operating system?


Please provide any additional information below.

Original issue reported on code.google.com by [email protected] on 30 Jun 2011 at 2:30

Can FastDFS supports HTTP POST

I'm using FastDFS, But I'm not sure FastDFS can support HTTP POST.

We have a project, there are a lot of photos, music files and other files need 
to be put into FastDFS, we use upload Server to process post request, and save 
them into FastDFS with client (java client or other client). It leads the 
upload stream go throught two layers: 
> upload Server
> FastDFS

My tbought is when use upload a file, upload Server decides which storage node 
will store this file, and redirect the post request to the storage node. 

How can I achieve this goal? 

Thanks,

Fisher

Original issue reported on code.google.com by [email protected] on 11 Aug 2012 at 5:13

Retrieving list of all files stored in a group?

Hi!

I'm wondering how I am supposed to retrieve a list of all files stored in a 
certain group? 

I'm using the PHP module and there seems to be no such function?

What I'm looking for is something like this:
fastdfs_tracker_list_files([string group_name, array tracker_server]);

example:
fastdfs_tracker_list_files('group1', array('ip_addr' => '10.0.0.1', 'port' => 
22122, sock => 3);

Can i accomplish this with the fdfs_monitor client perhaps?

Original issue reported on code.google.com by [email protected] on 29 Jul 2013 at 8:21

能否支持异步消息

协议头中能不能提供一个message_id这种东西,请求时由客户端�
��送到fastdfs,fastdfs在应答中将这个message_id返回给客户端,以
便客户端和fastdfs的交互能够做到异步,让Java可以很方便的使
用Netty或者Mina来编写异步客户端。

Original issue reported on code.google.com by [email protected] on 1 Dec 2010 at 7:08

读写性能有周期性的波动

从最高性能接近网卡的极限到不到一半的传输速率,反复波��
�,周期在一分钟以内,不知道有什么可能的原因。用的是v3.0
3,操作系统是CentOS 5.6,2 
core,2G,200G文件,平均大小50k,最高20个线程并发。

Original issue reported on code.google.com by [email protected] on 28 Oct 2011 at 4:42

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.