diff --git a/SOURCES/libdb-limit-cpu.patch b/SOURCES/libdb-limit-cpu.patch
new file mode 100644
index 0000000..475aa50
--- /dev/null
+++ b/SOURCES/libdb-limit-cpu.patch
@@ -0,0 +1,12 @@
+diff -Naurp db_old/src/os/os_cpu.c db_new/src/os/os_cpu.c
+--- db_old/src/os/os_cpu.c	2012-05-11 12:57:54.000000000 -0500
++++ db_new/src/os/os_cpu.c	2015-08-12 14:00:37.232498880 -0500
+@@ -40,6 +40,8 @@ __os_cpu_count()
+ 	long nproc;
+ 
+ 	nproc = sysconf(_SC_NPROCESSORS_ONLN);
++	if (nproc > 1024)
++		nproc = 1024;
+ 	return ((u_int32_t)(nproc > 1 ? nproc : 1));
+ #else
+ 	return (1);
diff --git a/SPECS/libdb.spec b/SPECS/libdb.spec
index 7fb9bee..0f8376c 100644
--- a/SPECS/libdb.spec
+++ b/SPECS/libdb.spec
@@ -4,7 +4,7 @@
 Summary: The Berkeley DB database library for C
 Name: libdb
 Version: 5.3.21
-Release: 17%{?dist}.1
+Release: 19%{?dist}
 Source0: http://download.oracle.com/berkeley-db/db-%{version}.tar.gz
 Source1: http://download.oracle.com/berkeley-db/db.1.85.tar.gz
 Patch0: libdb-multiarch.patch
@@ -24,6 +24,8 @@ Patch25: 007-mt19937db.c_license.patch
 Patch26: signed-overflow.patch
 # CDB race (rhbz #1099509)
 Patch27: libdb-cbd-race.patch
+# Limit concurrency to max 1024 CPUs
+Patch28: libdb-limit-cpu.patch
 URL: http://www.oracle.com/database/berkeley-db/
 License: BSD and LGPLv2 and Sleepycat
 Group: System Environment/Libraries
@@ -224,6 +226,7 @@ popd
 
 %patch26 -p1 -b .overflow
 %patch27 -p1 -b .cbdrace
+%patch28 -p1 -b .cpu-limit
 
 cd dist
 ./s_config
@@ -432,9 +435,13 @@ rm -rf ${RPM_BUILD_ROOT}
 %{_libdir}/libdb_java.so
 
 %changelog
-* Thu Jul 24 2014 Honza Horak <hhorak@redhat.com> - 5.3.21-17.el7.1
+* Thu Sep 03 2015 Jan Stanek <jstanek@redhat.com> - 5.3.21-19
+- Add patch to workaround issues on large systems (>1024 CPU)
+  Resolves: #1245410
+
+* Thu Jul 24 2014 Honza Horak <hhorak@redhat.com> - 5.3.21-18
 - Concurrent access due to a race in CDB
-  Resolves: #1123758
+  Resolves: #1099509
 
 * Fri Jan 24 2014 Daniel Mach <dmach@redhat.com> - 5.3.21-17
 - Mass rebuild 2014-01-24