forked from pool/glusterfs
- remove dependency on /usr/bin/python3 using
%python3_fix_shebang{,_path} macros, [bsc#1212476] OBS-URL: https://build.opensuse.org/package/show/filesystems/glusterfs?expand=0&rev=100
This commit is contained in:
commit
c2f3614c25
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
## Default LFS
|
||||
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||
*.png filter=lfs diff=lfs merge=lfs -text
|
||||
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
.osc
|
44
0001-glusterfs-fix-heap-buffer-overflow-on-startup.patch
Normal file
44
0001-glusterfs-fix-heap-buffer-overflow-on-startup.patch
Normal file
@ -0,0 +1,44 @@
|
||||
From 5d0533d0858194ed6d365f1080db7ab10d0e3d11 Mon Sep 17 00:00:00 2001
|
||||
From: Jan Engelhardt <jengelh@inai.de>
|
||||
Date: Wed, 5 Jul 2023 18:15:22 +0900
|
||||
Subject: [PATCH] glusterfs: fix heap-buffer-overflow on startup
|
||||
References: https://github.com/gluster/glusterfs/issues/4192
|
||||
|
||||
==4418==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x613000000190
|
||||
at pc 0x7f028cd2341c bp 0x7ffd9c5ba7e0 sp 0x7ffd9c5ba7d8
|
||||
WRITE of size 8 at 0x613000000190 thread T0
|
||||
f0 in mem_get_pool_list ~/libglusterfs/src/mem-pool.c:786
|
||||
|
||||
0x613000000190 is located 0 bytes after 336-byte region [0x613000000040,0x613000000190)
|
||||
allocated by thread T0 here:
|
||||
f0 in malloc (/usr/lib64/libasan.so.8+0xdc04f) (BuildId: 44194dcf14c212b57346030492309d59d5379ae1)
|
||||
f1 in __gf_default_malloc glusterfs/mem-pool.h:112
|
||||
f2 in mem_get_pool_list ~/libglusterfs/src/mem-pool.c:778
|
||||
|
||||
``NPOOLS-1`` is just wrong. ``per_thread_pool_list_t`` does not include one free
|
||||
``per_thread_pool_t``.
|
||||
|
||||
Fixes: https://github.com/gluster/glusterfs/issues/4192
|
||||
Fixes: v11dev-211-g1cfff6e6ec ("Use flexible array members (#3411)")
|
||||
Signed-off-by: Jan Engelhardt <jengelh@inai.de>
|
||||
---
|
||||
libglusterfs/src/mem-pool.c | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/libglusterfs/src/mem-pool.c b/libglusterfs/src/mem-pool.c
|
||||
index f053fdceae..e258758158 100644
|
||||
--- a/libglusterfs/src/mem-pool.c
|
||||
+++ b/libglusterfs/src/mem-pool.c
|
||||
@@ -589,8 +589,7 @@ mem_pools_preinit(void)
|
||||
}
|
||||
|
||||
pool_list_size = sizeof(per_thread_pool_list_t) +
|
||||
- sizeof(per_thread_pool_t) * (NPOOLS - 1);
|
||||
-
|
||||
+ sizeof(per_thread_pool_t) * NPOOLS;
|
||||
init_done = GF_MEMPOOL_INIT_EARLY;
|
||||
}
|
||||
|
||||
--
|
||||
2.41.0
|
||||
|
BIN
glusterfs-11.1.tar.gz
(Stored with Git LFS)
Normal file
BIN
glusterfs-11.1.tar.gz
(Stored with Git LFS)
Normal file
Binary file not shown.
453
glusterfs.changes
Normal file
453
glusterfs.changes
Normal file
@ -0,0 +1,453 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Aug 22 18:11:49 UTC 2024 - pgajdos@suse.com
|
||||
|
||||
- remove dependency on /usr/bin/python3 using
|
||||
%python3_fix_shebang{,_path} macros, [bsc#1212476]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 15 08:56:08 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 11.1
|
||||
* Fix upgrade issue by reverting posix change related to
|
||||
storage.reserve value
|
||||
* Fix possible data loss during rebalance if there is any
|
||||
linkfile on the system
|
||||
- Delete 0001-socket-only-issue-IPPROTO_IPV6-setsockopt-calls-on-A.patch
|
||||
(merged),
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jul 5 09:28:08 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Add 0001-glusterfs-fix-heap-buffer-overflow-on-startup.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jun 10 13:29:09 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Disable IO_uring for now [boo#1210894]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 23 23:25:48 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Add 0001-socket-only-issue-IPPROTO_IPV6-setsockopt-calls-on-A.patch
|
||||
[boo#1210894]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Feb 21 10:20:10 UTC 2023 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 11 [boo#1208517] [boo#1208519]
|
||||
* Major performance impovement of ~36% with rmdir operations
|
||||
* Extension of ZFS support for snapshots
|
||||
* Qouta implimentation based on namespace
|
||||
* Major cleanups and readdir/readdirp improvements
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jul 14 11:13:34 UTC 2022 - Johannes Kastl <kastl@b1-systems.de>
|
||||
|
||||
- add explicit Requires for the dependencies, so we make sure
|
||||
the dependencies are installed in the same version
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri May 20 08:37:19 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 10.2
|
||||
* Some 165 bugfixes with none particularly sticking out
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Jan 19 00:00:00 CET 2022 - dsterba@suse.cz
|
||||
|
||||
- add python-rpm-macros as dependency, fix build on on Leap 15.x
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Sep 28 14:31:30 UTC 2021 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 9.3
|
||||
* New reset-brick command
|
||||
* Ability to get node level status of a cluster
|
||||
* Multi-threaded self-heal for Disperse volumes
|
||||
* Lock revocation feature
|
||||
* On-demand scrubbing for bitrot detection
|
||||
* Real time Cluster notifications using Events APIs
|
||||
- Move mount helper to /usr/sbin [boo#1191062]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 29 10:29:59 UTC 2021 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 9.1
|
||||
* Implemented seek file operation for open-behind
|
||||
* Added io_uring support for Gluster
|
||||
* Added Support for 5K volumes
|
||||
* Enabled granular-entry-heal by default
|
||||
* Added support for monitoring the epoll/rpc layer
|
||||
* Improve rebalance of sparse files
|
||||
- Drop nocommon.patch (merged)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jun 4 11:44:27 UTC 2020 - Callum Farmer <callumjfarmer13@gmail.com>
|
||||
|
||||
- Fixes for %_libexecdir changing to /usr/libexec
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 9 15:30:24 UTC 2020 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 7.1
|
||||
* Fix rebalance causing IO Error - File descriptor in bad state
|
||||
* Fix geo-replication sessions going faulty
|
||||
* Fix memory leak in glusterfsd process
|
||||
* Fix GlusterFS brick process crash
|
||||
- Add nocommon.patch [boo#1160392]
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 26 08:22:55 UTC 2019 - Neal Gompa <ngompa13@gmail.com>
|
||||
|
||||
- Fix the name of the Python bindings subpackage
|
||||
- Properly mark Python bindings subpackage as noarch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 13 16:13:06 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
|
||||
|
||||
- Update to release 7.0
|
||||
* Latency based read child to improve read workload latency in
|
||||
a cluster, especially in a cloud setup. Also provides a load
|
||||
balancing with the outstanding pending request.
|
||||
* Thin-arbiter integration with GD1.
|
||||
* If a client older than glusterfs-4.x (i.e. 3.x clients)
|
||||
accesses a volume which has the `fips-mode-rchecksum` volume
|
||||
option enabled, it can cause erroneous checksum computation/
|
||||
unwanted behaviour during afr self-heal.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 24 08:59:02 UTC 2019 - Martin Liška <mliska@suse.cz>
|
||||
|
||||
- Move definition of _lto_cflags into %build.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Apr 23 11:33:06 UTC 2019 - Martin Liška <mliska@suse.cz>
|
||||
|
||||
- Disable LTO (boo#1133088).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sun Mar 17 06:01:34 UTC 2019 - seanlew@opensuse.org
|
||||
|
||||
- Update to new upstream version 5.5
|
||||
* No changelog yet available in release notes
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Mar 02 14:53:04 UTC 2019 - seanlew@opensuse.org
|
||||
|
||||
- Update to new upstream version 5.4
|
||||
* FUSE Client memory leak fixed (#1623107)
|
||||
* fail to sync non-ascii utf8 file and dir names (#1648642)
|
||||
* Tracker bug for all leases related issues (#1651323)
|
||||
* gluster-blockd segfaults because of a null-deref (#1659563)
|
||||
* Memory leak: dict_t leak in rda_opendir (#1659676)
|
||||
* dht_revalidate may not heal attrs on the brick root (#1660736)
|
||||
* Fix tests/bugs/shard/zero-flag.t (#1660932)
|
||||
* NL cache: fix typos (#1662200)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jan 19 06:52:11 UTC 2019 - seanlew@opensuse.org
|
||||
|
||||
- Update to new upstream version 5.3 (4.0 is EOL)
|
||||
* 5.3 brings hundreds of improvements, see complete relnote at
|
||||
https://docs.gluster.org/en/latest/release-notes/5.0/
|
||||
* Fixed a number of bugs:
|
||||
CVE-2018-1088, CVE-2018-1112 [boo#1090084],
|
||||
CVE-2018-10904 [boo#1107018], CVE-2018-10907 [boo#1107019],
|
||||
CVE-2018-10911 [boo#1107020], CVE-2018-10913 [boo#1107021],
|
||||
CVE-2018-10914 [boo#1107022], CVE-2018-10923 [boo#1107023],
|
||||
CVE-2018-10924 [boo#1107024], CVE-2018-10926 [boo#1107025],
|
||||
CVE-2018-10927 [boo#1107026], CVE-2018-10928 [boo#1107027],
|
||||
CVE-2018-10928 [boo#1107027], CVE-2018-10929 [boo#1107028],
|
||||
CVE-2018-10930 [boo#1107029], boo#1105776 .
|
||||
- Remove patches no longer needed in 5.x:
|
||||
* 0001-build-restore-ability-to-control-verbosity-settings.patch
|
||||
* glusterfs-tirpc.diff
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu May 3 11:50:05 UTC 2018 - jengelh@inai.de
|
||||
|
||||
- Update to new upstream release 4.0.2
|
||||
* GlusterD2 (GD2) is a new management daemon for Gluster-4.0,
|
||||
glustercli is the command-line interface for it.
|
||||
It is a preview release. GD2 is not backwards compatible with
|
||||
the older GlusterD. Heterogeneous clusters running both GD2
|
||||
and GlusterD are not possible.
|
||||
* Not all commands from GlusterD have been implemented for GD2.
|
||||
* GD2 does not (yet) work well in 2-node clusters.
|
||||
* Self Heal feature integrated for the new Volumes created
|
||||
using Glusterd2.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 14 18:47:07 UTC 2017 - jengelh@inai.de
|
||||
|
||||
- Add 0001-build-restore-ability-to-control-verbosity-settings.patch
|
||||
- Replace xdr_sizeof.c with an empty file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Dec 4 14:03:38 UTC 2017 - jengelh@inai.de
|
||||
|
||||
- Update to new release 3.12.3
|
||||
* -- Features introduced in 3.10
|
||||
* Brick multiplexing
|
||||
* Support to display op-version information from clients
|
||||
* Support for rebalance time to completion estimation
|
||||
* Separation of tier as its own service
|
||||
* Statedump support for gfapi based applications
|
||||
* Disabled creation of trash directory by default
|
||||
* Implemented parallel readdirp with distribute xlator
|
||||
* -- Features introduced in 3.12:
|
||||
* Ability to mount sub-directories using the Gluster
|
||||
FUSE protocol
|
||||
* GFID to path conversion is enabled by default
|
||||
* Provided an option to set a limit on number of bricks
|
||||
multiplexed in a processes
|
||||
* Enhanced the option to export statfs data for bricks
|
||||
sharing the same backend filesystem
|
||||
* Provided a means to resolve GFID split-brain using
|
||||
the gluster CLI
|
||||
* Introduction of new api glfs_fd_set_lkowner() to set lock owner
|
||||
- Remove glusterfs-date.diff (no longer applies)
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Nov 13 07:49:33 CET 2017 - kukuk@suse.de
|
||||
|
||||
- glusterfs-tirpc.diff: fallback to libtirpc if there is no sunrpc
|
||||
support in glibc
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 3 10:10:48 UTC 2017 - mpluskal@suse.com
|
||||
|
||||
- Explicitly require python2 as python3 is not yet supported
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 18 11:28:29 UTC 2017 - vcizek@suse.com
|
||||
|
||||
- Add missing Requires: libacl-devel to the devel subpackage
|
||||
* glfs.h #includes <sys/acl.h>
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 23 15:58:34 UTC 2017 - vcizek@suse.com
|
||||
|
||||
- Update to version 3.8.15
|
||||
* fixes build with OpenSSL 1.1 (bsc#1055466)
|
||||
* Mandatory lock support for Multiprotocol environment
|
||||
* Gluster/NFS disabled by default
|
||||
* Geo-replication for Sharded Volumes
|
||||
* Tiering aware Geo-replication
|
||||
* Enhance Quota enable/disable in glusterd
|
||||
* Automagic unsplit-brain by [ctime|mtime|size|majority] for AFR
|
||||
* Granular Entry self-heal for AFR
|
||||
* Tons of bugfixes
|
||||
* for more details see the NEWS file
|
||||
- spec cleanup
|
||||
- Install License files/docu
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 27 20:38:50 UTC 2015 - scorot@free.fr
|
||||
|
||||
- Update to version 3.6.6
|
||||
* No ChangeLog available
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Aug 4 19:07:46 UTC 2015 - scorot@free.fr
|
||||
|
||||
- Update to version 3.6.4
|
||||
* No ChangeLog available
|
||||
- Fix Url
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Apr 9 16:39:09 UTC 2015 - afaerber@suse.de
|
||||
|
||||
- Update to version 3.6.2
|
||||
* glusterfs-api.pc had version 0.0.0 in v3.6.1, now 4.3.6.2
|
||||
This is still a backwards jump from v3.6.0 (7.0.0) and v3.5.3 (6).
|
||||
* Package glfsheal again
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 15 15:03:38 UTC 2015 - p.drouand@gmail.com
|
||||
|
||||
- Update to version 3.6.1
|
||||
* api: versioned symbols in libgfapi.so for compatibility
|
||||
* Use versioned symbols to keep libgfapi at libgfapi.so.0.0.0
|
||||
* Some nits uncovered:
|
||||
- there are a couple functions declared that do not have an
|
||||
associated definition, e.g. glfs_truncate(), glfs_caller_specific_init()
|
||||
- there are seven private/internal functions used by heal/src/glfsheal
|
||||
and the gfapi master xlator (glfs-master.c): glfs_loc_touchup(),
|
||||
glfs_active_subvol(), and glfs_subvol_done(), glfs_init_done(),
|
||||
glfs_resolve_at(), glfs_free_from_ctx(), and glfs_new_from_ctx();
|
||||
which are not declared in glfs.h;
|
||||
- for this initial pass at versioned symbols, we use the earliest version
|
||||
of all public symbols, i.e. those for which there are declarations in
|
||||
glfs.h or glfs-handles.h.
|
||||
Further investigation as we do backports to 3.6, 3.4, and 3.4
|
||||
will be required to determine if older implementations need to
|
||||
be preserved (forward ported) and their associated alias(es) and
|
||||
symbol version(s) defined.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Aug 4 21:27:22 UTC 2014 - scorot@free.fr
|
||||
|
||||
- Update to new upstream release 3.5.2
|
||||
* NFS server crashes in _socket_read_vectored_request
|
||||
* Can't write to quota enable folder
|
||||
* nfs: reset command does not alter the result for nfs options
|
||||
earlier set
|
||||
* features/gfid-access: stat on .gfid virtual directory return
|
||||
EINVAL
|
||||
* creating symlinks generates errors on stripe volume
|
||||
* Self-heal errors with "afr crawl failed for child 0 with ret -1"
|
||||
while performing rolling upgrade.
|
||||
* [AFR] I/O fails when one of the replica nodes go down
|
||||
* Fix inode leaks in gfid-access xlator
|
||||
* NFS subdir authentication doesn't correctly handle
|
||||
multi-(homed,protocol,etc) network addresses
|
||||
* nfs-utils should be installed as dependency while installing
|
||||
glusterfs-server
|
||||
* Excessive logging in quotad.log of the kind 'null client'
|
||||
* client_t clienttable cliententries are never expanded when all
|
||||
entries are used
|
||||
* AFR : self-heal of few files not happening when a AWS EC2 Instance
|
||||
is back online after a restart
|
||||
* Dist-geo-rep : deletion of files on master, geo-rep fails to
|
||||
propagate to slaves.
|
||||
* Allow the usage of the wildcard character '*' to the options
|
||||
"nfs.rpc-auth-allow" and "nfs.rpc-auth-reject"
|
||||
* glfsheal: Improve the way in which we check the presence of
|
||||
replica volumes
|
||||
* Resource cleanup doesn't happen for clients on servers after
|
||||
disconnect
|
||||
* mounting a volume over NFS (TCP) with MOUNT over UDP fails
|
||||
* backport 'gluster volume status --xml' issues
|
||||
* Glustershd memory usage too high
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 29 19:48:39 UTC 2014 - scorot@free.fr
|
||||
|
||||
- Update to new upstream release 3.5.1
|
||||
* A new volume option server.manage-gids has been added.
|
||||
This option should be used when users of a volume are in more
|
||||
than approximately 93 groups (Bug 1096425).
|
||||
* Duplicate Request Cache for NFS has now been disabled by
|
||||
default, this may reduce performance for certain workloads,
|
||||
but improves the overall stability and memory footprint for
|
||||
most users.
|
||||
* Others changes are mostly bug fixes.
|
||||
- disable systemd pre an post scripts for old product and then fix
|
||||
build on SLE 11
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 5 22:40:02 UTC 2014 - jengelh@inai.de
|
||||
|
||||
- Update to new upstream release 3.5.0
|
||||
* AFR_CLI_enhancements: Improved logging with more clarity and
|
||||
statistical information. It allows visibility into why a
|
||||
self-heal process was initiated and which files are affected, for
|
||||
example. Prior to this enhancement, clearly identifying
|
||||
split-brain issues from the logs was often difficult, and there
|
||||
was no facility to identify which files were affected by a split
|
||||
brain issue automatically. Remediating split brain without quorum
|
||||
will still require some manual effort, but with the tools
|
||||
provided, this will become much simpler.
|
||||
* Exposing Volume Capabilities: Provides client-side insight into
|
||||
whether a volume is using the BD translator and, if so, which
|
||||
capabilities are being utilized.
|
||||
* File Snapshot: Provides a mechanism for snapshotting individual
|
||||
files. The most prevalent use case for this feature will be to
|
||||
snapshot running VMs, allowing for point-in-time capture. This
|
||||
also allows a mechanism to revert VMs to a previous state
|
||||
directly from Gluster, without needing to use external tools.
|
||||
* GFID Access: A new method for accessing data directly by GFID.
|
||||
With this method, the data can be directly consumed in changelog
|
||||
translator, which is logging ‘gfid’ internally, very efficiently.
|
||||
* On-Wire Compression + Decompression: Use of this feature reduces
|
||||
the overall network overhead for Gluster operations from a
|
||||
client.
|
||||
* Prevent NFS restart on Volume change (Part 1): Previously, any
|
||||
volume change (volume option, volume start, volume stop, volume
|
||||
delete, brick add, etc.) would restart the NFS server, which led
|
||||
to service disruptions. This feature allow modifying certain
|
||||
NFS-based volume options without such interruptions occurring.
|
||||
Part 1 is anything not requiring a graph change.
|
||||
* Quota Scalability: Massively increase the amount of quota
|
||||
configurations from a few hundred to 65536 per volume.
|
||||
* readdir_ahead: Gluster now provides read-ahead support for
|
||||
directories to improve sequential directory read performance.
|
||||
* zerofill: Enhancement to allow zeroing out of VM disk images,
|
||||
which is useful in first time provisioning or for overwriting an
|
||||
existing disk.
|
||||
* Brick Failure Detection: Detecting failures on the filesystem
|
||||
that a brick uses makes it possible to handle errors that are
|
||||
caused from outside of the Gluster environment.
|
||||
* Disk encryption: Implement the previous work done in HekaFS into
|
||||
Gluster. This allows a volume (or per-tenant part of a volume) to
|
||||
be encrypted “at rest” on the server using keys only available on
|
||||
the client. [Note: Only content of regular files is encrypted.
|
||||
File names are not encrypted! Also, encryption does not work in
|
||||
NFS mounts.]
|
||||
* Geo-Replication Enhancement: Previously, the geo-replication
|
||||
process, gsyncd, was a single point of failure as it only ran on
|
||||
one node in the cluster. If the node running gsyncd failed, the
|
||||
entire geo-replication process was offline until the issue was
|
||||
addressed. In this latest incarnation, the improvement is
|
||||
extended even further by foregoing use of xattrs to identify
|
||||
change candidates and directly consuming from the volume
|
||||
changelog, which will improve performance twofold: one, by
|
||||
keeping a running list of only those files that may need to be
|
||||
synced; and two, the changelog is maintained in memory, which
|
||||
will allow near instant access to which data needs to be changed
|
||||
and where by the gsync daemon.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Feb 28 21:58:02 UTC 2013 - jengelh@inai.de
|
||||
|
||||
- Update to new upstream release 3.4.0alpha (rpm: 3.4.0~qa9)
|
||||
* automake-1.13 support
|
||||
- Enable AIO support
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 27 11:28:36 UTC 2012 - jengelh@inai.de
|
||||
|
||||
- Use `glusterd -N` in glusterd.service to run in foreground
|
||||
as required
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Nov 27 10:59:15 UTC 2012 - cfarrell@suse.com
|
||||
|
||||
- license update: GPL-2.0 or LGPL-3.0+
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Nov 9 21:47:11 UTC 2012 - jengelh@inai.de
|
||||
|
||||
- Update to new upstream release 3.4.0qa2
|
||||
* No changelog provided by upstream
|
||||
- Remove glusterfs-init.diff, merged upstream
|
||||
- Provide systemd service file
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 31 12:19:47 UTC 2012 - jengelh@inai.de
|
||||
|
||||
- Update to new upstream release 3.3.1
|
||||
* mount.glusterfs: Add support for {attribute,entry}-timeout options
|
||||
* cli: Proper xml output for "gluster peer status"
|
||||
* self-heald: Fix inode leak
|
||||
* storage/posix: implement native linux AIO support
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Sep 24 03:45:09 UTC 2012 - jengelh@inai.de
|
||||
|
||||
- Update to new upstream release 3.3.0
|
||||
* New: Unified File & Object access
|
||||
* New: Hadoop hooks - HDFS compatibility layer
|
||||
* New volume type: Repstr - replicated + striped (+ distributed)
|
||||
volumes
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Dec 2 15:43:43 UTC 2011 - coolo@suse.com
|
||||
|
||||
- add automake as buildrequire to avoid implicit dependency
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Oct 5 22:17:35 UTC 2011 - jengelh@medozas.de
|
||||
|
||||
- Initial package for build.opensuse.org
|
272
glusterfs.spec
Normal file
272
glusterfs.spec
Normal file
@ -0,0 +1,272 @@
|
||||
#
|
||||
# spec file for package glusterfs
|
||||
#
|
||||
# Copyright (c) 2024 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
Name: glusterfs
|
||||
Version: 11.1
|
||||
Release: 0
|
||||
Summary: Aggregating distributed file system
|
||||
License: GPL-2.0-only OR LGPL-3.0-or-later
|
||||
Group: System/Filesystems
|
||||
URL: https://www.gluster.org/
|
||||
|
||||
#Git-Clone: https://github.com/gluster/glusterfs
|
||||
#Git-Clone: https://github.com/fvzwieten/lsgvt
|
||||
#Changelog: https://docs.gluster.org/en/latest/release-notes/
|
||||
Source: https://download.gluster.org/pub/gluster/glusterfs/11/%version/glusterfs-%version.tar.gz
|
||||
Patch2: 0001-glusterfs-fix-heap-buffer-overflow-on-startup.patch
|
||||
BuildRequires: acl-devel
|
||||
BuildRequires: autoconf
|
||||
BuildRequires: automake
|
||||
BuildRequires: bison
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: libaio-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: pkgconfig
|
||||
BuildRequires: python-rpm-macros
|
||||
BuildRequires: python3
|
||||
BuildRequires: readline-devel
|
||||
BuildRequires: rpcgen
|
||||
BuildRequires: systemd-rpm-macros
|
||||
BuildRequires: pkgconfig(fuse) >= 2.6.5
|
||||
BuildRequires: pkgconfig(libcrypto)
|
||||
BuildRequires: pkgconfig(libtirpc)
|
||||
BuildRequires: pkgconfig(liburcu)
|
||||
%if 0%{?suse_version} >= 1550
|
||||
BuildRequires: pkgconfig(liburing) >= 0.3
|
||||
%endif
|
||||
BuildRequires: pkgconfig(libxml-2.0)
|
||||
BuildRequires: pkgconfig(python3)
|
||||
BuildRequires: pkgconfig(sqlite3)
|
||||
BuildRequires: pkgconfig(uuid)
|
||||
Requires: libgfapi0 = %version
|
||||
Requires: libgfchangelog0 = %version
|
||||
Requires: libgfrpc0 = %version
|
||||
Requires: libgfxdr0 = %version
|
||||
Requires: libglusterfs0 = %version
|
||||
%{?systemd_ordering}
|
||||
|
||||
%description
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes. It aggregates various storage bricks over Infiniband RDMA
|
||||
or TCP/IP interconnect into one large parallel network file system.
|
||||
GlusterFS is one of the most sophisticated file systems in terms of
|
||||
features and extensibility. It borrows a powerful concept called
|
||||
Translators from GNU Hurd kernel. Much of the code in GlusterFS is in
|
||||
user space and easily manageable.
|
||||
|
||||
%package -n libgfapi0
|
||||
Summary: GlusterFS API library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libgfapi0
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes.
|
||||
|
||||
%package -n libgfchangelog0
|
||||
Summary: GlusterFS volume changelog translator library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libgfchangelog0
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes.
|
||||
|
||||
The goal of this volume translator is to capture changes performed on
|
||||
a GlusterFS volume. The translator needs to be loaded on the server
|
||||
(bricks) and captures changes in a plain text file inside a
|
||||
configured directory path (controlled by the "changelog-dir"
|
||||
directive).
|
||||
|
||||
%package -n libgfrpc0
|
||||
Summary: GlusterFS Remote Procedure Call library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libgfrpc0
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes.
|
||||
|
||||
%package -n libgfxdr0
|
||||
Summary: GlusterFS's External Data Representation library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libgfxdr0
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes.
|
||||
|
||||
%package -n libglusterfs0
|
||||
Summary: GlusterFS's core library
|
||||
Group: System/Libraries
|
||||
|
||||
%description -n libglusterfs0
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes.
|
||||
|
||||
%package -n python3-gluster
|
||||
Summary: Python bindings for GlusterFS
|
||||
Group: Development/Languages/Python
|
||||
BuildArch: noarch
|
||||
# Legacy Python 2 bindings are no longer available...
|
||||
Obsoletes: python-gluster < 7.0
|
||||
|
||||
%description -n python3-gluster
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes.
|
||||
|
||||
%package devel
|
||||
Summary: Development files for glusterfs
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: %name = %version
|
||||
Requires: libacl-devel
|
||||
Requires: libgfapi0 = %version
|
||||
Requires: libgfchangelog0 = %version
|
||||
Requires: libgfrpc0 = %version
|
||||
Requires: libgfxdr0 = %version
|
||||
Requires: libglusterfs0 = %version
|
||||
|
||||
%description devel
|
||||
GlusterFS is a clustered file-system capable of scaling to several
|
||||
petabytes.
|
||||
|
||||
This package provides development files such as headers and library
|
||||
links.
|
||||
|
||||
%prep
|
||||
%autosetup -p1
|
||||
|
||||
%build
|
||||
%define _lto_cflags %nil
|
||||
./autogen.sh
|
||||
%configure \
|
||||
--without-tcmalloc \
|
||||
--disable-linux-io_uring \
|
||||
%if 0%{?suse_version} >= 1550
|
||||
--with-mountutildir="%_sbindir" \
|
||||
%endif
|
||||
--disable-static --with-ipv6-default
|
||||
%make_build
|
||||
|
||||
%install
|
||||
b="%buildroot"
|
||||
%make_install docdir="%_docdir/%name"
|
||||
find "$b" -type f -name "*.la" -delete -print
|
||||
mkdir -pv "$b/%_localstatedir/log"/{glusterd,glusterfs,glusterfsd}
|
||||
cp -av ChangeLog NEWS README.md "$b/%_docdir/%name/"
|
||||
|
||||
chmod -v u-s "%buildroot/%_bindir/fusermount-glusterfs"
|
||||
rm -fv "%buildroot/%_sbindir/conf.py"
|
||||
rm -f "%buildroot/etc/bash_completion.d/gluster.bash"
|
||||
%fdupes %buildroot/%_prefix
|
||||
%python3_fix_shebang
|
||||
%if %{suse_version} >= 1600
|
||||
%python3_fix_shebang_path %{buildroot}%{_libexecdir}/ganesha/*
|
||||
%python3_fix_shebang_path %{buildroot}%{_libexecdir}/glusterfs/*
|
||||
%python3_fix_shebang_path %{buildroot}%{_libexecdir}/glusterfs/gfevents/*
|
||||
%python3_fix_shebang_path %{buildroot}%{_libexecdir}/glusterfs/glusterfind/*
|
||||
%python3_fix_shebang_path %{buildroot}%{_libexecdir}/glusterfs/python/syncdaemon/*
|
||||
%python3_fix_shebang_path %{buildroot}%{_libexecdir}/glusterfs/gfind_missing_files/*
|
||||
%python3_fix_shebang_path %{buildroot}%{_libexecdir}/glusterfs/scripts/*
|
||||
%python3_fix_shebang_path %{buildroot}%{_datadir}/glusterfs/scripts/*
|
||||
%endif
|
||||
|
||||
%pre
|
||||
%service_add_pre glusterd.service glustereventsd.service glusterfssharedstorage.service gluster-ta-volume.service
|
||||
|
||||
%post
|
||||
%service_add_post glusterd.service glustereventsd.service glusterfssharedstorage.service gluster-ta-volume.service
|
||||
|
||||
%preun
|
||||
%service_del_preun glusterd.service glustereventsd.service glusterfssharedstorage.service gluster-ta-volume.service
|
||||
|
||||
%postun
|
||||
%service_del_postun glusterd.service glustereventsd.service glusterfssharedstorage.service gluster-ta-volume.service
|
||||
|
||||
%post -n libgfapi0 -p /sbin/ldconfig
|
||||
%postun -n libgfapi0 -p /sbin/ldconfig
|
||||
%post -n libgfchangelog0 -p /sbin/ldconfig
|
||||
%postun -n libgfchangelog0 -p /sbin/ldconfig
|
||||
%post -n libgfrpc0 -p /sbin/ldconfig
|
||||
%postun -n libgfrpc0 -p /sbin/ldconfig
|
||||
%post -n libgfxdr0 -p /sbin/ldconfig
|
||||
%postun -n libgfxdr0 -p /sbin/ldconfig
|
||||
%post -n libglusterfs0 -p /sbin/ldconfig
|
||||
%postun -n libglusterfs0 -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%license COPYING*
|
||||
%dir %_sysconfdir/ganesha
|
||||
%dir %_sysconfdir/%name
|
||||
%_sysconfdir/ganesha/*.sample
|
||||
%config(noreplace) %_sysconfdir/%name/eventsconfig.json
|
||||
%config(noreplace) %_sysconfdir/%name/g*lusterd.vol
|
||||
%config(noreplace) %_sysconfdir/%name/glusterfs-logrotate
|
||||
%config %_sysconfdir/%name/gluster-rsyslog*
|
||||
%config %_sysconfdir/%name/glusterfs-georep*
|
||||
%config %_sysconfdir/%name/group-*
|
||||
%config %_sysconfdir/%name/gsync*
|
||||
%config %_sysconfdir/%name/logger*
|
||||
%config %_sysconfdir/%name/thin*
|
||||
%_bindir/fusermount-glusterfs
|
||||
%_bindir/glusterfind
|
||||
%_libexecdir/ganesha/
|
||||
%_libexecdir/%name/
|
||||
%_libdir/%name/
|
||||
%_sbindir/gluster*
|
||||
%_sbindir/gcron.py
|
||||
%_sbindir/gf_attach
|
||||
%_sbindir/gfind_missing_files
|
||||
%if 0%{?suse_version} >= 1550
|
||||
%_sbindir/mount.%name
|
||||
%else
|
||||
/sbin/mount.%name
|
||||
%endif
|
||||
%_sbindir/snap_scheduler.py
|
||||
%_datadir/glusterfs/
|
||||
%_mandir/man*/*
|
||||
%_docdir/%name
|
||||
%_localstatedir/lib/glusterd
|
||||
%_localstatedir/log/%name
|
||||
%_unitdir/glusterd.service
|
||||
%_unitdir/glustereventsd.service
|
||||
%_unitdir/glusterfssharedstorage.service
|
||||
%_unitdir/gluster-ta-volume.service
|
||||
/usr/lib/ocf
|
||||
|
||||
%files -n libgfapi0
|
||||
%_libdir/libgfapi.so.0*
|
||||
|
||||
%files -n libgfchangelog0
|
||||
%_libdir/libgfchangelog.so.0*
|
||||
|
||||
%files -n libgfrpc0
|
||||
%_libdir/libgfrpc.so.0*
|
||||
|
||||
%files -n libgfxdr0
|
||||
%_libdir/libgfxdr.so.0*
|
||||
|
||||
%files -n libglusterfs0
|
||||
%_libdir/libglusterfs.so.0*
|
||||
|
||||
%files -n python3-gluster
|
||||
%python3_sitelib/gluster/
|
||||
|
||||
%files devel
|
||||
%_includedir/%name/
|
||||
%_libdir/*.so
|
||||
%_libdir/pkgconfig/*.pc
|
||||
|
||||
%changelog
|
Loading…
Reference in New Issue
Block a user