diff options
Diffstat (limited to 'ReleaseNotes/ReleaseNotes-2.0.21.txt')
-rw-r--r-- | ReleaseNotes/ReleaseNotes-2.0.21.txt | 337 |
1 files changed, 0 insertions, 337 deletions
diff --git a/ReleaseNotes/ReleaseNotes-2.0.21.txt b/ReleaseNotes/ReleaseNotes-2.0.21.txt deleted file mode 100644 index 5de84ff1a6..0000000000 --- a/ReleaseNotes/ReleaseNotes-2.0.21.txt +++ /dev/null @@ -1,337 +0,0 @@ -= Release notes for Gerrit 2.0.21 - -Gerrit 2.0.21 is now available in the usual location: - -link:https://www.gerritcodereview.com/download/index.html[https://www.gerritcodereview.com/download/index.html] - - -== Schema Change - -*WARNING: This version contains a schema change* (since 2.0.19) - -* The schema change may be difficult to undo once applied. -+ -Downgrading could be very difficult once the upgrade has been -started. Going back to 2.0.20 may not be possible. - -* Do not run the schema change while the server is running. -+ -This upgrade changes the primary key of a table, an operation -which shouldn't occur while end-users are able to make -modifications to the database. I _strongly_ suggest a full -shutdown, schema upgrade, then startup approach for this release. - -* There may be some duplicate keys -+ -This upgrade removes a column from the primary key of a table, -which may result in duplicates being found. You can search -for these duplicates before updating: -{{{ -SELECT account_id,external_id FROM account_external_ids e -WHERE e.external_id IN (SELECT external_id -FROM account_external_ids -GROUP BY external_id -HAVING COUNT(*) > 1); -}}} -Resolving duplicates is left up to the administrator, in -general though you will probably want to remove one of the -duplicate records. E.g. in one case I had 3 users with the -same mailing list email address registered. I just deleted -those and sent private email asking the users to use their -personal/work address instead of a mailing list. -Apply the database specific schema script: ----- - java -jar gerrit.war --cat sql/upgrade017_018_postgres.sql | psql reviewdb - java -jar gerrit.war --cat sql/upgrade017_018_mysql.sql | mysql reviewdb ----- - - -== Important Notices - -* Prior User Sessions -+ -The cookie used to identify a signed-in user has been changed. -Again. All users will be automatically signed-out during -this upgrade, and will need to sign-in again after the upgrade -is complete. The new schema has more room for extensions, so -this might be the last time we will need to invalidate sessions. - -* Harmless error on first startup -+ -Starting 2.0.21 on an instance which previously had the diff -cache stored on disk will result in the following non-fatal error -in the server logs during the first launch of .21 on that system: ----- -2009-09-02 18:50:07,446::INFO : com.google.gerrit.server.cache.CachePool - Enabling disk cache /home/gerrit2/android_codereview/disk_cache -Sep 2, 2009 6:50:07 PM net.sf.ehcache.store.DiskStore readIndex -SEVERE: Class loading problem reading index. Creating new index. Initial cause was com.google.gerrit.server.patch.DiffCacheKey -java.lang.ClassNotFoundException: com.google.gerrit.server.patch.DiffCacheKey - at java.net.URLClassLoader$1.run(URLClassLoader.java:200) - at java.security.AccessController.doPrivileged(Native Method) - at java.net.URLClassLoader.findClass(URLClassLoader.java:188) -... ----- - This error can be safely ignored. It is caused by a change - in the diff cache's on disk schema, invalidating all existing - cache entries. - -* Significantly larger "diff" cache -+ -The diff cache schema change noted above changed the element -stored in the cache from per-file to per-patchset. That is, -a patch set which modifies 500 files will now occupy only 1 -element in the diff cache, rather than 500 distinct elements. -Accordingly, the default `cache.diff.memoryLimit` setting has -been reduced to 128. - -* Removed configuration settings -+ -The following configuration settings are no longer honored: -`cache.maxAge`, `cache.memoryLimit`, `cache.diskLimit`, and -`cache.diskBuffer`. These settings may now only be set on a -per-cache basis (e.g. `cache.diff.maxAge`). - -* Connection pool recommendation: Apache Commons DBCP -+ -All of the servers I run now use Apache Commons DBCP instead -of c3p0 for their connection pools, and the setup guide and -sample jetty_gerrit.xml reference DBCP now. -We've run into problems with c3p0 under high loads, or when -the connection pool is completely exhausted. DBCP seems to -fail more gracefully, and seems to give us less trouble. -Changing pool implementations is not required, c3p0 is still -a supported provider. I just want to make it clear that I no -longer recommend it in production. - -== New Features - -* GERRIT-189 Show approval status in account dashboards -+ -Account dashboards now show a summary of the approval status on -each change. Unreviewed changes are now highlighted to bring -the reviewer's attention to them. Tooltips when hovering over -a cell will bring up slightly more detailed information. - -* GERRIT-276 Allow users to see what groups they are members of -+ -Under Settings > Groups a user can now view what groups Gerrit -has placed them into. This may help administrators to debug -a user's access problems, as they can ask the user to verify -Gerrit is seeing what they expect. - -* GERRIT-276 Show simple properties of an LDAP group -+ -If auth.type is HTTP_LDAP, groups which are marked as automatic -membership now show non-repeating LDAP attributes below their -description under Admin > Groups. This display should help an -administrator to verify that Gerrit has mapped an LDAP group -correctly. - -* Move Patch entity out of database and store in cache -+ -The `patches` database table has been deleted, Gerrit now makes -the list of affected files on the fly and stores it within the -diff cache. This change is part of a long-running series to -remove redundant information from the database before we switch -to a pure Git backed data storage system. - -* Only copy blocking negative votes to replacement patch -+ -Previously Gerrit copied any negative vote in any approval -category whenever a replacement patch set was uploaded to -a change. Now Gerrit only copies "Code Review -2". -This change should make it easier for reviewers (and scripts -scanning `patch_set_approvals`) to identify updated changes -which might require a new review. -Adminstrators who have created their own categories and want to -copy the blocking negative vote should set `copy_min_score = 'Y'` -in the corresponding approval_categories records. - -* show-caches: Make output more concise -+ -Instead of showing ~12 lines of output per cache, each cache is -displayed as one line of a table. - -* Handle multiple accountBase and groupBase -+ -ldap.accountBase and ldap.groupBase may now be specified multiple -times in gerrit.config, to search more than one subtree within -the directory. - -* Summarize collapsed comments -+ -Collapsed comments (both inline on a file and on the change -itself) now show a short summary of the comment message, making -it faster to locate the relevant comment to expand for more -detailed reading. - -* Edit inline drafts on Publish Comments screen -+ -Inline comment drafts may now be directly edited on the Publish -Comments screen, which can be useful for fixing up a minor typo -prior to publication. - -* Less toggly thingies on change screen -+ -The change description and the approvals are no longer nested -inside of a foldy block. Most users never collapse these, but -instead just scroll the page to locate the information they are -looking for. - -* Restore Enter/o to toggle collapse state of comments -+ -Enter and 'o' now expand or collapse an inline comment on the -the current row of a file. - -* Display abbreviated hexy Change-Id in screen titles -* Use hexy Change-Id in emails sent from Gerrit -+ -Change-Id abbreviations are now used through more of the UI, -including emails sent by Gerrit and window/page titles. This -change breaks email threading for any existing review emails. -That is comments on a change created before the upgrade will -not appear under the original change notification thread. - -* Add sendemail.from to control setting From header -+ -Gerrit no longer forges the From header in notification emails. -To enable the prior forging behavior, set `sendemail.from` -to `USER` in gerrit.config. For more details see -link:http://gerrit.googlecode.com/svn/documentation/2.0/config-gerrit.html#sendemail.from[sendemail.from] - -== Bug Fixes - -* Fix ReviewDb to actually be per-request scoped -+ -When we switched to Guice a misconfiguration allowed Guice to -give out multiple database connections per web or SSH request. -This could exhaust the connection pool faster than expected. - -* Send no-cache headers during HTTP login -+ -An oversight in the HTTP login code path may have allowed a proxy -server between the user's browser and the Gerrit server to cache -a user's session cookie. Fixed by sending the correct no-cache -headers, disallowing any caching of the authentication response. - -* Fix project owner permissions -+ -Folks reported on repo-discuss that a project owner also had to -have READ permission to use the Branches tab of their project. -This was a regression introduced when we refactored some of the -code when adding Guice to the project. Fixed. - -* GERRIT-277 Fix hyperlinks in messages -+ -Hyperlinks in commit messages such as "<http://foo>" were -including the trailing > in the URL, making the link broken. -The trailing > is now properly not included in the URL. - -* GERRIT-266 Fix web session cookie refresh time -+ -In 2.0.19 we introduced web sessions stored in Ehcache, but the -logic was causing sessions to expire roughly half-way through the -`cache.web_sessions.maxAge` time. At the default setting, active -sessions were expiring after 6 hours. The cache management has -been refactored to make this a lot less likely. - -* Cleanup not signed in error to be more user friendly -+ -The error message which comes up when your session is expired -is now much more useful. From the dialog you can restart your -session by clicking the "Sign-In" button, and return to the -screen you are currently on. - -* Fix commit-msg hook to work with commit -v option -+ -The commit-msg hook was buggy and did not handle `git commit -v` -correctly. It also did some bad insertions, placing the magic -`Change-Id: I...` line at the wrong position in the commit -message. The updated hook resolves most of these problems, -but must be recopied to individual Git repositories by end-users. - -* Identify PGP configuration errors during startup -+ -If the encrypted contact store is enabled, the required encryption -algorithms are checked at startup to ensure they are enabled -in the underlying JVM. This is necessary in case the JVM is -updated and the administrator forgot to install the unlimited -strength policy file in the new runtime directory. Recently -review.source.android.com was bitten by just such an upgrade. - -* GERRIT-278 Fix missing reply comments on old patch set -+ -Some comments were not visible because they were replies made -to a comment on say patch set 1 while looking at the difference -between patch set 1 and patch set 2 of a change. Fixed. - -* Make external_id primary key of account_external_ids -+ -The database schema incorrectly allowed two user accounts to have -the same email address, or to have the same OpenID auth token. -Fixed by asserting a unique constraint on the column. - -== Other Changes -* Start 2.0.21 development -* Support cleaning up a Commons DBCP connection pool -* Clarify which Factory we are importing in ApproveComma... -* Avoid loading Patch object in /cat/ servlet -* Remove unnecessary reference of patch key in save draft -* GERRIT-266 Tweak cache defaults to be more reasonable -* Merge change I131e6c4c -* Bring back the "No Differences" message when files are... -* Pick up gwtorm 1.1.2-SNAPSHOT -* Refactor GroupListScreen's inner table for reuse -* Do not normalize approval scores on closed changes in ... -* Don't obtain 0 approvals or submit approvals in dashbo... -* Update JGit to 0.5.0-93-g5b89a2c -* Add tests for Change-Id generating commit-msg hook -* Add test for commit-msg with commit -v -* Fix formatting error in ApprovalCategory -* Fix typo in change table column header "Last Update" -* Fix reference to the All Projects broken when we remov... -* Use category abbreviations in the dashboard approval c... -* Format approvals columns in change tables with minimal... -* Shrink the Last Updated column in dashboards and chang... -* Highlight changes which need to be reviewed by this us... -* Fix typo in ChangeTable comment -* Reduce the window used for "Mon dd" vs. "Mon dd yyyy" ... -* Don't assume "Anonymous Users" and "Registered Users" ... -* Log encrypted contact store failures -* Identify PGP configuration errors during startup -* Take the change description block out of the disclosure... -* Move the approval table out of a disclosure panel -* Explicitly show what value is needed to submit -* Modernize the display of comments on a change -* Modernize the display of inline comments on a file -* Fix "Publish Comments" when there are no inline drafts -* Merge change 11666 -* Fix display of "Gerrit Code Review" authored comments -* Fix source code formatting error in FormatUtil -* Remove unnecessary fake author on inline comments -* Auto expand all drafts on publish comments screen -* Remove unused local variable in PublishCommentsScreen -* Remove unused import from PublishCommentsScreen -* Use gwtorm, gwtexpui release versions -* Add javadoc for Change.getKey -* Updated documentation for eclipse development. -* Merge change 11698 -* Merge change 11699 -* Merge change 11700 -* Merge change 11703 -* Merge change 11705 -* Moved creation of GerritPersonIdent to a separate provi... -* Remove unused dependency on GerritServer. -* Renamed GerritServert to GitRepositoryManager and moved... -* Remove declaration of OrmException that is never thrown. -* Increase margin space between buttons of comment editors -* Simplify GerritCallback error handling -* Correct comment documenting SignInDialog -* Remove unused CSS class gerrit-ErrorDialog-ErrorMessage -* Clarify become any account servlet errors -* Fix anchor in sshd.reuseAddress documentation -* Extract parametrized string formatting out of LdapQuery -* Make cache APIs interfaces for mocking -* Add easymock 2.5.1 to our test dependencies -* Add sendemail.from to control setting From header -* gerrit 2.0.21
\ No newline at end of file |