FastDFS ChangeLog

发布于 2022-09-23 15:26:53 字数 9218 浏览 9 评论 0

Version 1.16  2009-02-14
  * client can specify group name when upload file
  * tracker_service.c: cmd dispatch changed to "switch ... case"
    not "if ... else if"
  * storage_service.c: call fdfs_quit before tracker_disconnect_server

Version 1.15  2009-01-28
  * use FastDHT v1.04 client code
  * use FastDHT client thread safely

Version 1.14  2009-01-18
  * storage/storage_sync.c:
    old: if (reader.sync_row_count % 1000 == 0)
    new: if (reader.scan_row_count % 2000 == 0)
  * little adjustment for common files can be used by FastDHT
  * sched_thread.h /.c add global variable g_schedule_flag to quit normally
  * shared_func.h / .c add function get_time_item_from_conf
  * sched_thread.h /.c support time_base of task
  * hash.h / .c add function CRC32, add hash function to support stream hash
  * add FastDHT client files in storage/fdht_client/
  * create symbol link when the file content is duplicate,
    add item "check_file_duplicate" to conf file storage.conf
  * use FastDHT v1.02 client code
  * auto delete invalid entry in FastDHT when the source file does not exist

Version 1.13  2008-11-29
  * re-calculate group 's free space when one of it's storage servers'
    free space increase
  * add parameters: sync_interval, sync_start_time and sync_end_time to
    storage.conf
  * performance enhancement: log to buffer, flush to disk every interval seconds
  * standard fds closed by daemon_init: 0(stdin), 1(stdout) and 2(stderr)
  * fix bug: pthread_kill sometimes cause core dump when program terminated
  * fix bug: sync.c open next binlog cause loop call

Version 1.12  2008-11-12
  * storage server support multi path (mount point)
  * upload file support file ext name, add source storage ip address to filename
  * add delete command to delete the invalid storage server
  * add client functions which combine group name and filename to file id,
    add anothor client test program: fdfs_test1.c to use file id
  * client download file support callback function
  * add protocol cmd TRACKER_PROTO_CMD_SERVICE_QUERY_UPDATE,
    and client API add tracker_query_storage_update
  * add protocol cmd TRACKER_PROTO_CMD_STORAGE_SYNC_REPORT to report last
    synced timestamp as dest server
  * fix sync old data files to new server bug
  * fcntl change to pthread_mutex_lock

Version 1.11  2008-10-04
  * kill report and sync threads when recv terminate signal
  * add item "store_server" in tracker.conf, by default use the first
    storage server to store uploaded files
  * ini_file_reader.c changed: a conf file can include other conf files
  * some adjustment:
    some macro name changed
    add common_define.h
    remove fdfs_define.c
    fdfs_os_bits.h change to _os_bits.h

Version 1.10  2008-09-20
  * performance optimizing: use thread pool, create all work threads at startup
  * trim function op in shared_func.c
  * add Makefile template Makefile.in, delete Makefile and Makefile.freebsd
    change make.sh to support all unix systems (passed in Linux and FreeBSD)

Version 1.9  2008-09-14
  * security enhancement: support allow hosts which can connect to the server
  * server can be run by the specified group and user, set by the config file
  * change make.sh and add file common/fdfs_os_bits.h,
    remove the warning info of printf format for int64_t param in 64 bits system
  * storage_client.c changed: auto connect to storage server when not connected
  * change some macro name and function name in tracker/tracker_proto.h

Version 1.8  2008-09-07
  * communication protocol changed to support large file exceed 2GB:
     # all integer field is 8 bytes big-endian
     # group name fixed length: FDFS_GROUP_NAME_MAX_LEN bytes
  * storage stat numbers (such as total_upload_count, success_upload_count)
    use int64_t (8 bytes integer)
  * ini_file_reader.c add function iniGetInt64Value
  * sockopt.c add function tcpsetnonblockopt
  * shared_func.c add function set_nonblock

Version 1.7  2008-08-31
  * performance optimizing:
     # change fopen to syscall open
     # increase the efficiency of socket functions tcpsenddata and tcprecvdata
  * change the return value of socket funtions such as tcpsenddata,
    tcprecvdata and connectserverbyip
      old return value: result=1 for success, result != 1 fail
      new return value: result=0 for success, result != 0 fail, return the error code
  * log function enhancement:
     # support log level
     # parameter "log_level" added to server config file
     # keep the log file opened to increase performance
  * fix log format and parameter mismatched bug (check by printf)
  * log CRIT message to log file when program exit unexpectedly
  * Makefile add compile flag -D_FILE_OFFSET_BITS=64 to support large files
  * change the type of file_size and file_offset to off_t
  * change signal to sigaction
  * fix client Makefile to compile library correctly
  * restart.sh modified: use external command "expr" to replace shell command "let"

Version 1.6  2008-08-24
  * add restart daemon shell script: restart.sh
  * use setrlimit to increase max open files if necessary
  * security enhancement: the format of data filename must be: HH/HH/filename,
    eg. B9/F4/SLI2NAAMRPR9r8.d
  * fix bug: errno is not correct where the downloaded file does not exist,
             communication is broken when the download file is a directory

Version 1.5  2008-08-17
  * add client function storage_download_file_to_file
  * use pthread_attr_setstacksize to increase thread stack size to 1 MB
  * use sendfile syscall to send file in Linux and FreeBSD
  * fix bug: add O_TRUNC flag when open file to write
  * remove warning info compiled by gcc 4.2
  * fcntl set lock.l_len to 0

Version 1.4  2008-08-10
  * storage server recv file method change
     old method: recv the whole file content/buff before write to file
     new method: write to file once recv a certain bytes file buff, eg. 128KB buff size
  * storage client and storage server send file method change
     old method: get the whole file content/buff, then send to storage server
     new method: send file to storage server more times. get a certain bytes file buff, then send to storage server
  * upload file package remove the one pad byte field
  * remove storage status FDFS_STORAGE_STATUS_DEACTIVE and add FDFS_STORAGE_STATUS_DELETED

Version 1.3  2008-08-03
  * fix bug: when meta data is empty, get meta data return error
  * support java client
    # memset response header to 0
    # add group_name to upload file response package

Version 1.2  2008-07-27
  * add client function storage_set_metadata to support setting metadata(overwrite or merge)

Version 1.1  2008-07-20
  * implement storage disk report
  * storing load balance between storage groups(volumes) when set store_lookup to 2

Version 1.0  2008-07-12
  * first version

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文