67e3830ab92ff32d16d32320cf30b67dca671515
Commit Graph

8880 Commits

This Branch
This Branch
All Branches
Author SHA1 Message Date
Tim Burke
67e3830ab9 swift-container-info: Show shard ranges summary
The current behavior is really painful when you've got hundreds of shard
ranges in a DB. The new summary with the states is default. Users can
add a -v/--verbose flag to see the old full detail view.
Change-Id: I0a7d65f64540f99514c52a70f9157ef060a8a892
2020年07月22日 12:29:53 -05:00
Zuul
5cf5548a85 Merge "s3api: Add basic support for ?tagging requests" 2020年06月19日 08:11:06 +00:00
Zuul
455969c24d Merge "proxy: Stop killing memcache entries on 5xx responses" 2020年06月19日 08:07:07 +00:00
Zuul
2098755b4c Merge "py3: (Better) fix percentages in configs" 2020年06月19日 03:20:28 +00:00
Zuul
cfd6a48660 Merge "py3: Fix expirer container generation" 2020年06月19日 03:20:25 +00:00
Zuul
d75160d646 Merge "replication: Allow databases_per_second to be a float" 2020年06月19日 01:28:08 +00:00
Tim Burke
51a587ed8d Use ensure-pip role
Hopefully this will fix the currently-broken probe test gate?
Depends-On: https://review.opendev.org/#/c/736070/
Change-Id: Ib652534b35236fdb6bcab131c7dc08a079bf72f6
2020年06月16日 21:29:01 -07:00
Tim Burke
7be7cc966b proxy: Stop killing memcache entries on 5xx responses
When you've got a container server that's struggling to respond to HEAD
requests, it's really not helpful to keep evicting the cache when some
of the hundreds of concurrent requests trying to repopulate the cache
return 503.
Change-Id: I49174a21a854a4e8e564a7bbf997e1841f9dda71
Closes-Bug: #1883211 
2020年06月15日 11:05:58 -07:00
Tim Burke
9bc8c82587 py3: Fix expirer container generation
Closes-Bug: #1883561
Change-Id: Idbc13b90a565c4e64cef9035dbcd60872576727a
2020年06月15日 16:11:12 +00:00
manuvakery1
6afefe1ad3 s3api: Add basic support for ?tagging requests
https://docs.aws.amazon.com/cli/latest/userguide/cliv2-migration.html#cliv2-migration-s3-copy-metadata
AWS CLI version 2 improves Amazon S3 handling of file properties
and tags when performing multipart copies. We still don't supprt
object tagging hence the aws s3 cp command fails for mulitpart
copies with default options.
This way get tagging request will receive an empty tagset in
response and mulitpart copies will work fine
Change-Id: I1f031b05025cafac00e86966c240aa5f7258d0bf
2020年06月12日 13:02:18 +05:30
Zuul
0bed59e3fa Merge "Use ini_file to update timeout instead of crudini" 2020年06月11日 21:03:01 +00:00
Zuul
3c0a448f06 Merge "memcached: Plumb logger into MemcacheRing" 2020年06月11日 18:54:58 +00:00
Tim Burke
79811df34c Use ini_file to update timeout instead of crudini
crudini seems to have trouble on py3 -- still not sure *why* it's using
py3 for the losf job, though...
Change-Id: Id98055994c8d59e561372417c9eb4aec969afc6a
2020年06月09日 18:27:54 -07:00
Tim Burke
2854eddb44 py3: (Better) fix percentages in configs
We previously fixed a bunch of places, but not quite *all* the places;
at the very least, some account-layer services (like the replicator and
auditor IIRC) could still bomb out -- and it's important that
replicators still respect fallocate_reserve!
Now, do the NicerInterpolation thing every time we call readconf.
Additionally, clean up the original fix to avoid globally
monkey-patching configparser.
Related-Bug: #1844368
Closes-Bug: #1872553
Change-Id: I4512e686cde37930f0482909f537220a57fef76b
2020年06月09日 17:46:44 -07:00
Tim Burke
e4586fdcde memcached: Plumb logger into MemcacheRing
This way proxies log memcached errors in the normal way instead of
to the root logger (which eventually gets them out on STDERR).
If no logger is provided, fall back to the root logger behavior.
Change-Id: I2f7b3e7d5b976fab07c9a2d0a9b8c0bd9a840dfd
2020年06月09日 14:32:04 -05:00
Zuul
0b86f681f5 Merge "swift-get-nodes: Allow users to specify either quoted or unquoted paths" 2020年06月09日 17:54:26 +00:00
Zuul
3b651d945c Merge "tests: Skip s3api copy-version test when OV not enabled" 2020年06月08日 21:53:06 +00:00
Zuul
f58791f376 Merge "Remove etag-quoter from 2.25.0 release notes" 2020年06月08日 21:15:09 +00:00
Tim Burke
1dfa41dada swift-get-nodes: Allow users to specify either quoted or unquoted paths
Now that we can have null bytes in Swift paths, we need a way for
operators to be able to locate such containers and objects. Our usual
trick of making sure the name is properly quoted for the shell won't
suffice; running something like
 swift-get-nodes /etc/swift/container.ring.gz $'AUTH_test/0円versions0円container'
has the path get cut off after "AUTH_test/" because of how argv works.
So, add a new option, --quoted, to let operators indicate that they
already quoted the path.
Drive-bys:
 * If account, container, or object are explicitly blank, treat them
 as though they were not provided. This provides better errors when
 account is explicitly blank, for example.
 * If account, container, or object are not provided or explicitly
 blank, skip printing them. This resolves abiguities about things
 like objects whose name is actually "None".
 * When displaying account, container, and object, quote them (since
 they may contain newlines or other control characters).
Change-Id: I3d10e121b403de7533cc3671604bcbdecb02c795
Related-Change: If912f71d8b0d03369680374e8233da85d8d38f85
Closes-Bug: #1875734
Closes-Bug: #1875735
Closes-Bug: #1875736
Related-Bug: #1791302 
2020年06月08日 12:03:56 -07:00
Zuul
b51dfcb45c Merge "dsvm: Use devstack's s3api "service"" 2020年06月07日 18:58:39 +00:00
Zuul
119fd25ca5 Merge "s3api: Check whether versioning is enabled more" 2020年06月06日 04:18:26 +00:00
Zuul
c2b03f6779 Merge "Latch shard-stat reporting" 2020年06月06日 04:01:26 +00:00
Zuul
713f056493 Merge "Quiet eventlet exceptions in test" 2020年06月06日 03:31:35 +00:00
Zuul
00b9ee2538 Merge "Don't auto-create shard containers" 2020年06月06日 02:21:10 +00:00
Tim Burke
1b6c8f7fdf Remove etag-quoter from 2.25.0 release notes
This was released in 2.24.0, which already has a release note for it.
Change-Id: I9837df281ec8baa19e8e4a7976f415e8add4a2da
2020年06月05日 16:36:32 -07:00
Tim Burke
11dd0da29a tests: Bump up timeout for unit and in-process func tests
We've been seeing more TIMEOUT failures lately where the jobs still seem
to be making steady (if slow) progress.
Change-Id: I19c1f48bace551c78ad0c6c8b6ccad75e44e8904
2020年06月05日 14:20:01 -07:00
Zuul
ba01f93ad9 Merge "func tests: work with etag-quoter on by default" 2020年06月05日 20:52:30 +00:00
Clay Gerrard
fc731198ac Quiet eventlet exceptions in test
This traceback would probably show up in the wild, but it's not relevant
to this test.
Change-Id: I9e6e7679f674bddddcc4440b38d5741aaece3393
2020年06月05日 09:49:01 -05:00
Zuul
56278100a1 Merge "relinker: Improve performance by limiting I/O" 2020年06月05日 06:09:24 +00:00
Tim Burke
ce4c0fb14b Don't auto-create shard containers
...unless the client requests it specifically using a new flag:
 X-Backend-Auto-Create: true
Previously, you could get real jittery listings during a rebalance:
 * Partition with a shard DB get reassigned, so one primary has no DB.
 * Proxy makes a listing, gets a 404, tries another node. Likely, one of
 the other shard replicas responds. Things are fine.
 * Update comes in. Since we use the auto_create_account_prefix
 namespace for shards, container DB gets created and we write the row.
 * Proxy makes another listing. There's a one-in-three chance that we
 claim there's only one object in that whole range.
Note that unsharded databases would respond to the update with a 404 and
wait for one of the other primaries (or the old primary that's now a
hand-off) to rsync a whole DB over, keeping us in the happy state.
Now, if the account is in the shards namespace, 404 the object update if
we have no DB. Wait for replication like in the unsharded case.
Continue to be willing to create the DB when the sharder is seeding all
the CREATED databases before it starts cleaving, though.
Change-Id: I15052f3f17999e6f432951ba7c0731dcdc9475bb
Closes-Bug: #1881210 
2020年06月03日 13:26:31 -07:00
Zuul
9aced4db27 Merge "Switch to newer openstackdocstheme and reno versions" 2020年06月03日 18:32:59 +00:00
Zuul
99e6a49208 Merge "Remove <py3.5 dependencies from requirements.txt" 2020年06月03日 18:32:57 +00:00
Andreas Jaeger
3d105b623d Switch to newer openstackdocstheme and reno versions
Switch to openstackdocstheme 2.2.1 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems
Update Sphinx version as well.
Disable openstackdocs_auto_name to use 'project' variable as name.
Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.
Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.
Remove docs requirements from lower-constraints, they are not needed
during install or test but only for docs building.
openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.
See also
http://lists.openstack.org/pipermail/openstack-discuss/2020-May/014971.html
Change-Id: I131850d2a5c6164dfd48c9c95885d4754b5236c6
2020年06月03日 08:31:04 +02:00
Andreas Jaeger
019bade19c Remove <py3.5 dependencies from requirements.txt
The requirements repo is support python 3.5 as oldest python version
while swift still supports py27.
thus, requirements-check will fail on a couple of lines in swift. The
check is only run when these files are touched.
The py2.7 packagers we know about aren't depending on upstream
requirements.txt for correctness and aside from all the production
deployments running on py2.7 we only realistically support >=py3.7
There's no good reason for our requirements.txt to be "unspported" by
the openstack requirements check job. Since they only support >=py3.5
we can change our requirements.txt inline with that. This should be
fine for everything we could hope to get out of both our
requirements.txt and the check!
Co-Authored-By: Clay Gerrard <clay.gerrard@gmail.com>
Change-Id: Ibf8000498528c401707be8b0b91b8355cd993786
2020年06月03日 08:30:43 +02:00
Tim Burke
738514c164 docs: s3api doesn't support tagging
Change-Id: I227e8c2defe96fb5f33054167677ae551830d9e8
2020年06月02日 21:51:00 -07:00
Zuul
45a9ca39a4 Merge "Enable s3api and staticweb tests across all func tests" 2020年06月02日 22:25:15 +00:00
Zuul
b26d208b61 Merge "Simplify wsgify()" 2020年06月02日 19:53:58 +00:00
Thiago da Silva
20c6bdb71c Enable s3api and staticweb tests across all func tests
This patch removed the separate s3api, staticweb functional tests
gate jobs and added them across all other functional test jobs.
Change-Id: Ie1c606132a054defc2b3cc14a66031090e7b8449
2020年06月01日 19:16:48 -07:00
Tim Burke
99947150dd func tests: work with etag-quoter on by default
Also, run the in-process encryption func tests like that.
Change-Id: I984ab8d1304d23b89589973950b10dda4aea0db3
2020年06月01日 18:38:23 -05:00
Zuul
6c1bc3949d Merge "ratelimit: Allow multiple placements" 2020年06月01日 21:25:41 +00:00
Clay Gerrard
ede9dad9f6 Better functest quarantine cleanup
Change-Id: I9218aaeb5fcd21f1bc2a5d655e3216059a209aeb
2020年06月01日 14:43:05 +00:00
Zuul
4851c11600 Merge "Ussuri contrib docs community goal" 2020年05月30日 06:55:23 +00:00
Tim Burke
cedec8c5ef Latch shard-stat reporting
The idea is, if none of
 - timestamp,
 - object_count,
 - bytes_used,
 - state, or
 - epoch
has changed, we shouldn't need to send an update back to the root
container.
This is more-or-less comparable to what the container-updater does to
avoid unnecessary writes to the account.
Closes-Bug: #1834097
Change-Id: I1ee7ba5eae3c508064714c4deb4f7c6bbbfa32af
2020年05月29日 22:33:10 -07:00
Zuul
9b1ca0eb67 Merge "dsvm: Run service-user tests under keystoneauth" 2020年05月30日 01:07:34 +00:00
Zuul
4f440ad44d Merge "dsvm: Run service-user tests under tempauth" 2020年05月28日 00:27:40 +00:00
Zuul
e545a9291f Merge "dsvm: Run domain_remap tests with tempauth" 2020年05月28日 00:27:38 +00:00
Zuul
8f1a40eaae Merge "swift-dsvm: Enable s3api" 2020年05月28日 00:27:36 +00:00
Tim Burke
60f052f69a dsvm: Run service-user tests under keystoneauth
Change-Id: I5b0ae0b78d37a31928e0b34a1b6118802a3a8236
2020年05月27日 15:07:52 -07:00
Tim Burke
984b57a873 tests: Skip s3api copy-version test when OV not enabled
Change-Id: I175b9e1464494454b1193b9b9d5311cb6fd6503f
2020年05月27日 13:29:08 -07:00
Tim Burke
3aa4e3ec85 Remove swift-dsvm-functional-py3 job
Following https://github.com/openstack/devstack/commit/6b6bdc711,
the swift-dsvm-functional job has been running everything under
Python 3 anyway.
Change-Id: Ie285f513e1ed71dbaf4e12fe747ea6087664f843
2020年05月27日 13:16:55 -07:00