With the increasing number of entries in the service_catalog header,
some projects will have a header bigger than 8192 and Swift cannot
handle headers of this size. Solum is the first one to have this issue
As a temporary hack to fix Solum's gate, we are increasing
the value of the max_header_size parameter in our "lib" script.
This patch makes this settings global to all projects using devstack,
so that in a near future, if a project has a service_catalog header
bigger than 8192, it doesn't have the same problems we had.
Closes bug 1316585
Change-Id: I5c15f8f9531839353c3d99e46d920688058ec33c
| ... | ... |
@@ -103,6 +103,10 @@ SWIFT_REPLICAS_SEQ=$(seq ${SWIFT_REPLICAS})
|
| 103 | 103 |
# trace through the logs when looking for its use. |
| 104 | 104 |
SWIFT_LOG_TOKEN_LENGTH=${SWIFT_LOG_TOKEN_LENGTH:-12}
|
| 105 | 105 |
|
| 106 |
+# Set ``SWIFT_MAX_HEADER_SIZE`` to configure the maximun length of headers in |
|
| 107 |
+# Swift API |
|
| 108 |
+SWIFT_MAX_HEADER_SIZE=${SWIFT_MAX_HEADER_SIZE:-16384}
|
|
| 109 |
+ |
|
| 106 | 110 |
# Set ``OBJECT_PORT_BASE``, ``CONTAINER_PORT_BASE``, ``ACCOUNT_PORT_BASE`` |
| 107 | 111 |
# Port bases used in port number calclution for the service "nodes" |
| 108 | 112 |
# The specified port number will be used, the additinal ports calculated by |
| ... | ... |
@@ -404,6 +408,7 @@ EOF |
| 404 | 404 |
|
| 405 | 405 |
cp ${SWIFT_DIR}/etc/swift.conf-sample ${SWIFT_CONF_DIR}/swift.conf
|
| 406 | 406 |
iniset ${SWIFT_CONF_DIR}/swift.conf swift-hash swift_hash_path_suffix ${SWIFT_HASH}
|
| 407 |
+ iniset ${SWIFT_CONF_DIR}/swift.conf swift-constraints max_header_size ${SWIFT_MAX_HEADER_SIZE}
|
|
| 407 | 408 |
|
| 408 | 409 |
for node_number in ${SWIFT_REPLICAS_SEQ}; do
|
| 409 | 410 |
swift_node_config=${SWIFT_CONF_DIR}/object-server/${node_number}.conf
|