Release note for Gfarm 2.4.1
============================

[2010.12.30]

New Feature
* automatic replication in gfmd [sf.net trac #129]
  extended attribute 'gfarm.ncopy' specifies the number of file
  replicas to be created automatically.
  % echo -n 2 | gfxattr -s / gfarm.ncopy

New configuration in gfmd.conf
* no_file_system_node_timeout and gfmd_reconnection_timeout directives
  to specify the timeout to try to find a file system node and to
  reconnect to the gfmd, respectively.  Default is 30 seconds.
* known_network directive to specify a network for file system nodes.
  File system nodes not specified by the known_network directive are
  assumed to be in an IPv4 class C network as same as before.

Performance improvement
* gfmd-initiated file replication [sf.net trac #123]
* extended attribute cache in gfmd and libgfarm [sf.net trac #128]

Updated feature
* gfmd - check and repair nlinks at start-up [sf.net trac #57]
  unreferenced inodes moved to /lost+found
* gfsd - if the input/output error occurs, kill oneself to cope with
  the hardware failure [sf.net trac #85]
* select a file system node having enough capacity regardless of
  existent file replicas when a file is overwritten [sf.net #68]
* avoid scheduling conflict of file system nodes
* try another file replica when the specified physical file does not
  exist
* gfdf - -P option to specify the metadata server
* gfdf - -S and -r options to sort output by available capacity and in
  reverse order, respectively [sf.net trac #131]
* gfdf - -h and -H options to display sizes in human readable format
  [sf.net trac #126]
* gfmkdir - -p option to create parent directories if needed, and not
  to return error even if the target directory exists
* gfsched - -c option to schedule file system nodes for a file
  creation [sf.net trac #169]

Bug fix
* fix error handling of protocols in terms of extended attributes in
  gfmd [sf.net trac #124]
* gfmd - plug memory leak in case of authentication error [sf.net trac
  #166]
* gfmd - a file system node temporarily cannot be used if replication
  error happens due to the connection error to the source target
  [sf.net trac #162]
* Won't compile on FreeBSD 7.3 [sf.net trac #138]
* gfrep - may fail to create two or more file replicas [sf.net trac
  #114]
* gfrep - gfrep may cause no space left on device [sf.net trac #152]

Release note for Gfarm 2.4.0
============================

[2010.7.22]

New Feature
* update-based replica consistency protocol
  that keeps number of file replicas at file modification

New configuration in gfmd.conf
* simultaneous_replication_receivers directive to specify the maximum
  number of pending replication requests to each gfsd

Documentation
* how to access Gfarm via samba from Windows clients

Updated feature
* gfwhere - several options to obtain in progress or obsolete replica
  information

Bug fix
* fix possibility to lost files in a rare case when updating and
  replicating at the same time
* gfhost -R does not work [sf.net trac #120]
* retry another file system node in GFARM_ERR_FILE_MIGRATED case
  [sf.net trac #117]
* fix errors found by static analysis including unchecked return value
  and missing check against null
* compilation failure with old OpenLDAP library since the version
  2.3.0 [sf.net trac #121]
* compilation failure on Linux 2.4 since the version 2.3.0
  [sf.net trac #122]

Not supported
* no_file_system_node_timeout and gfmd_reconnection_timeout directives
  to specify the timeout to try to find a file system node and to
  reconnect to the gfmd, respectively.  Default is 30 seconds.
* gfmd - check and repair nlinks at start-up
* gfsd - if the input/output error occurs, kill oneself to cope with
  the hardware failure
* select a file system node having enough capacity regardless of
  existent file replicas when a file is overwritten

Release note for Gfarm 2.3.2
============================

[2010.7.1]

New Command
* gfsched - schedule and display available file system nodes

New API
* new scheduling APIs - gfarm_schedule_hosts_domain_all,
  gfarm_host_sched_info_free, gfarm_schedule_hosts{,_acyclic}{,_to_write}

New configuration in gfarm2.conf
* no_file_system_node_timeout and gfmd_reconnection_timeout directives
  to specify the timeout to try to find a file system node and to
  reconnect to the gfmd, respectively.  Default is 30 seconds.

Documentation
* manual pages - gfsched(1),
  gfarm(3), gfarm_initialize(3), gfarm_terminate(3), 
  gfs_pio_create(3), gfs_pio_open(3), gfs_pio_close(3), gfs_pio_write(3),
  gfs_pio_read(3)

Updated feature
* support OpenSSL 1.0.0
* support kfreebsd-gnu and linux-gnuabi
* gfmd - check and repair nlinks at start-up
* gfsd - if the input/output error occurs, kill oneself to cope with
  the hardware failure
* gfrm - -f option to force to remove

Bug fix
* gfrep - -x option does not remove excessive number of file replicas
  in case some file replica creations fail
* gfhost - -c/-m/-d without a hostname doesn't cause an error [sf.net
  trac #93]
* gfs_pio_fstat() - may not return correct file size [sf.net trac
  #111]
* gfsd - fix the back channel process stop when the connection error
  happens
* gfsd failed to report an error that its hostname is not registered
  in gfmd (i.e. "gfhost -M")
* file close operation is missing in gfsd when a client crashed
  [sf.net trac #2]
* fix data race to calculate total amount of disk usage when a file
  system node is up and down
* fix missing metadata update when GFARM_FILE_TRUNC is specified
  [sf.net trac #103]
* fix missing permission check when GFARM_FILE_RDONLY|GFARM_FILE_TRUNC
  is specified [sf.net trac #107]
* try the next auth method in case of permission denied
* the test program "fsx" causes an assertion failure [sf.net trac
  #102]
* fix compilation errors on FreeBSD 8.0
* fix bashism reported by checkbashisms
* UNIX sockets and their parent directories are not removed when gfsd
  is stopped [sf.net trac #94]

Release note for Gfarm 2.3.1
============================

[2010.3.29]

New Feature
* quota (see doc/quota.en for details)
* Gfarm URL, gfarm://metaserver:port/path/name
* partial support of multiple metadata servers
* message catalog framework for I18N
* group map file

New Command
* gfquota, gfedquota, gfquotacheck - manipulate disk quota
* gfusage - show file system usage

New configuration in gfmd.conf
* local_group_map directive to specify a group map file that maps
  global group names to local group names for legacy clients
* log_message_verbose_level directive to specify how verbose the log
  message is
* schedule_idle_load_thresh and schedule_busy_load_thresh directives
  to specify threshold of CPU load average for client scheduling
* schedule_virtual_load directive to specify virtual load to add when
  a host is scheduled

Updated feature
* gfrep - -x option to remove excess file replicas
* gfrep - enable capacity check
* gfexport - improve performance
* gfhost, gfgroup, gfuser - support multiple metadata servers by the
  -P option 
* gfstat - -c option to display the number of file replicas
* gfwhere - display error if there is no file replica
* gfuser, gfgroup - display specified users or groups if any
* gfvoms-sync - search certificates in the same order as Globus
* change the maximum number of open files from 256 to 1024
* select a file system node having enough capacity regardless of
  existent file replicas when a file is overwritten
* read only mode for gfsd
* support re-registration of users, groups and hosts without gfmd
  restart
* fix inconsistency if the corresponding file data is missing
* gfmd reconnection process only starts if the connection error
  happens
* wait for a target gfsd to reconnect to the gfmd if there is no file
  system node
* do not allow to remove gfarmadm group
* change log format

Bug fix
* fix rename problem such that a directory cannot be deleted or orphan
  inodes remain after rebooting gfmd
* fix missing automatic reconnection to gfmd
* fix file replication error during the file update
* fix file update problem during replication
* fix GSI authentication error handling
* fix duplicate registration of the same GSI DN
* fix file migration issue described in the tracker
  https://sourceforge.net/tracker/?func=detail&aid=1976260&group_id=172718&atid=862742
* fix access control for chmod
* gfmd - fix segfault when the postgresql database is stopped

Release note for Gfarm 2.3.0
============================

[2009.8.23]

New Feature
* automatic reconnection to gfmd 
* extended attribute
* XML extended attribute that is searchable by XPath
* group management by the Virtual Organization Membership Service
  (VOMS)
* gfarmroot group - super users' group in Gfarm
* multiple spools support in GSI
  [contribution from Nikola Garafolic]

New Command
* gfvoms-sync - synchronizes the group information with the VOMS
* gfxattr - set, get, remove, and list extended attributes
* gffindxmlattr - search XML extended attributes by XPath

New API
* gfs_{set,get,list,remove}xattr, gfs_f{set,get,remove}xattr -
  extended attribute support
* gfs_{set,get,list,remove}xmlattr - XML extended attribute support
* gfs_findxmlattr, gfs_getxmlent, gfs_closexmlattr - XML extended
  attribute search

New configuration in gfmd.conf
* metadb_server_dbq_size directive to specify a queue length for
  backend database

Updated feature
* gfdf - add the -n option to display hostnames of available file
  system nodes
* config-gfarm-update - the --update-symlink option is replaced with
  the --update option, which updates the metadata schema of backend
  database for not only symbolic links but also extended attributes
* config-gfarm-update - support ldap backend
* config-gfarm - add -X option to enable XML extended attribute.
* gfmd - use epoll if available that improves the response time in
  Linux

Bug fix
* gfmd - fix a critical problem such that there is a case to remain
  invalid old replicas even when it is updated.
* gfmd - fix a problem such that an application hangs when opening a
  file in write mode that is opened by another application.
* config-gfarm - fix unbound variable error when setting the DEBUG
  environment variable.
* update st_atime and st_mtime in backend database

Release note for Gfarm 2.2.0
============================

[2009.3.26]

New Feature
* symbolic link support
* hundreds of clients support by thread pool
* directory listing speedup by attribute cache

New Command
* gfstatus - display Gfarm configuration status
* gfln - create a hard link or a symbolic link

New Admin Command
* config-gfarm-update - update the backend database.
  'config-gfarm-update --update-symlink' updates the backend database
  to manage symbolic links.  Note that the postgresql backend is only
  supported for now.

New API
* gfs_symlink, gfs_readlink - symbolic link support
* gfs_lstat

New configuration in gfmd.conf
* metadb_server_stack_size directive to specify a stack size of
  threads
* metadb_server_thread_pool_size directive to specify the maximum
  number of threads in a thread pool
* metadb_server_job_queue_length directive to specify the length of a
  job request queue
* metadb_server_heartbeat_interval directive to specify the interval
  of heartbeat to each gfsd

Documentation
* manual pages -  gfchgrp(1), gfchmod(1), gfchown(1), gfgroup(1),
  gfhost(1), gfln(1), gfls(1), gfmv(1), gfstatus(1), gfuser(1).
* manual pages in HTML

Updated feature
* gfls - accomodate attribute caching and support display regarding
  symlinks and hardlinks
* gfchmod - display more user friendly error message
* gfmd - support hundreds of clients by introducing a thread pool
* gfmd - authorize peers concurrently by making network related
  functions MT safe
* gfmd - schedule the local host only when it has enough disk space
* gfsd - support gfmd reconnection at the start up
* (GSI) allow to delegate a limited proxy
* (GSI) disable GSS_C_NT_USER_NAME (spool_server_cred_type user) by
  default since it is not supported by Globus GSI

Bug fix
* libgfarm - fix missing intialization of a pointer
* gfmd - fix race condition
* gfsd - fix -c and -cc options to check invalid files not only
  invalid file replicas
* gfsd - terminate the master process when the back channel process dies
* (GSI) use distinguished name of delegated credential

Release note for Gfarm 2.1.1
============================

[2008.9.27]

New Feature
* on-demand replication

New Command
* gfdump.postgresql - gfdump for postgresql backend

New API
* gfs_link - hardlink support
  [contribution from Rainer Rohmfeld]

Documentation
* manual pages - gfrep(1)

Updated feature
* gfgroup - group membership modification support
* C++ support
* support Globus 4.2.0

Bug fix
* segfault when listing a directory that includes a removed user
  [sf.net tracker bugs #2009543]
* race condition during authentication
* LP64 portability problem when using GSI authentication
* "too many open files" problem when replicating many files

Release note for Gfarm 2.1.0
============================

[2008.5.27]

New Feature
* Grid Security Infrastructure (GSI) support

New Command
* gfgroup - manage groups
* gfdf - report usage of Gfarm file system

New API
* gfs_statfs(3)
* gfs_replicate_to(3), gfs_migrate_to(3), gfs_migrate_from_to(3)

Documentation
* manual pages - gfdf(1), gfmkdir(1), gfrmdir(1), gfwhere(1), gfwhoami(1),
  gfkey(1), gfarm2.conf(5), gfsd(8), and gfmd(8).
* SETUP, Gfarm-FAQ

Performance enhancement
* enlarge the block size of remote I/O from 256KB to 1MB to improve
  remote read/write performance from a distant location

Updated feature
* gfrep - full feature support
* gfrm - support deletion of a file replica
* gfsd - support a feature to check a spool directory when starting up
* config-gfarm - support of a private mode and GSI

Bug fix
* gfhost - port number cannot be modified
* gfrep - recover the state when replica creation fails
  [sf.net tracker bugs #1929840]
* a security hole of GFS_PROTO_REPLICA_RECV, pointed out by
  [gfarm-discuss-ja:03295]
* possible segfault when deleting a user or a host
* default available capacity is set accidentally to 100GB
* fix race condition when obtaining all host information

Release note for Gfarm 2.0.0
============================

The Gfarm file system is a distributed file system consisting of the
local storage of commodity PCs.  Many PCs in a local area network,
compute nodes in a single cluster, multiple clusters in wide area,
comprise a large-scale, high-performance shared network file system.

Gfarm 2.0.0 (aka Gfarm v2) is a major new release to solve several
security issues found in Gfarm v1 and to improve performance for small
files.

[2007.11.28]

Features

 * Gfarm file system metadata daemon (gfmd)

   Gfmd manages file system metadata including locations of file
   replicas, and monitors file system nodes.

 * Gfarm file system daemon (gfsd)

   Gfsd is an I/O daemon running on every file system node for remote
   file operations and a file replication.

 * Client commands

   file management - gfls, gfreg, gfrm, gfmv, gfexport, gfstat
   file replica management - gfwhere, gfrep
   directory management - gfmkdir, gfrmdir
   host management - gfhost
   security - gfkey
   user/group management - gfuser, gfchmod, gfchown
   configuration - config-gfarm, config-gfsd

 * GfarmFS-FUSE (gfarm2fs)

   GfarmFS-FUSE enables to mount a Gfarm file system in userspace.

Unsupported features

 * GSI authentication

$Id: RELNOTES 5022 2010-12-30 11:13:50Z tatebe $
