|
| 1 | +=============== |
| 2 | +Version Support |
| 3 | +=============== |
| 4 | + |
| 5 | +Overview |
| 6 | +-------- |
| 7 | + |
| 8 | +Presto is maintained by volunteers. This document describes which versions receive support and what level of support to expect. |
| 9 | + |
| 10 | +Support Philosophy |
| 11 | +------------------ |
| 12 | + |
| 13 | +* Data correctness issues are taken extremely seriously and typically fixed quickly |
| 14 | +* Runtime bugs and security vulnerabilities are prioritized and addressed promptly |
| 15 | +* Support depends on volunteer availability - no formal SLAs |
| 16 | +* Users are encouraged to contribute fixes for issues affecting them |
| 17 | + |
| 18 | +.. _current-version-support: |
| 19 | + |
| 20 | +Current Version Support |
| 21 | +----------------------- |
| 22 | + |
| 23 | +**Latest Release** |
| 24 | + * Primary focus for bug fixes |
| 25 | + * Recommended for new deployments after testing |
| 26 | + |
| 27 | +**Past 4 Releases (N-1 through N-4)** |
| 28 | + * Critical fixes only when: |
| 29 | + |
| 30 | + - Data correctness issues are found |
| 31 | + - Volunteers are available to backport |
| 32 | + |
| 33 | + * Patch releases for severe issues only |
| 34 | + * Support decreases with age |
| 35 | + |
| 36 | +**Older Releases (N-5 and earlier)** |
| 37 | + * Not supported |
| 38 | + * Exceptions only when: |
| 39 | + |
| 40 | + - Volunteer provides the backport |
| 41 | + - Fix applies cleanly |
| 42 | + - Testing is available |
| 43 | + |
| 44 | + * Upgrade required |
| 45 | + |
| 46 | +**Trunk/Master Branch** |
| 47 | + * Development branch |
| 48 | + * **Never use in production** |
| 49 | + * Contains experimental features and bugs |
| 50 | + * For testing upcoming changes only |
| 51 | + |
| 52 | +**Edge Releases** |
| 53 | + * Weekly builds from master |
| 54 | + * **Never use in production** |
| 55 | + * **Not supported** - no fixes provided |
| 56 | + * For testing upcoming features |
| 57 | + |
| 58 | +Support Lifecycle |
| 59 | +----------------- |
| 60 | + |
| 61 | +Timeframes are approximate and depend on volunteer availability. |
| 62 | + |
| 63 | +A typical release follows this lifecycle: |
| 64 | + |
| 65 | +1. **Release Candidates** (2-4 weeks) |
| 66 | + |
| 67 | + - One RC version per release |
| 68 | + - Active bug fixing with fixes verified in the existing RC |
| 69 | + - High community engagement |
| 70 | + |
| 71 | +2. **Current Release** (approximately 2 months) |
| 72 | + |
| 73 | + - Primary focus for bug fixes |
| 74 | + - Active monitoring for issues |
| 75 | + - Most community attention |
| 76 | + |
| 77 | +3. **Supported Releases** (N-1 through N-4, approximately 8 months) |
| 78 | + |
| 79 | + - Critical fixes only |
| 80 | + - Progressively reduced community focus |
| 81 | + - Patch releases for severe issues become less likely with age |
| 82 | + |
| 83 | +4. **Archived** (N-5 and older) |
| 84 | + |
| 85 | + - No active support |
| 86 | + - Users strongly encouraged to upgrade |
| 87 | + - See :ref:`current-version-support` for details |
| 88 | + |
| 89 | +Types of Support |
| 90 | +---------------- |
| 91 | + |
| 92 | +**Bug Fixes** |
| 93 | + Highest priority (typically fixed very quickly): |
| 94 | + |
| 95 | + * Data correctness issues - taken extremely seriously |
| 96 | + |
| 97 | + High priority: |
| 98 | + |
| 99 | + * Runtime bugs and crashes |
| 100 | + * Severe performance regressions |
| 101 | + |
| 102 | + Lower priority: |
| 103 | + |
| 104 | + * Minor performance issues |
| 105 | + * UI/cosmetic problems |
| 106 | + * Feature enhancements |
| 107 | + |
| 108 | +**Security Vulnerabilities** |
| 109 | + * Upgrade to latest release (default recommendation) |
| 110 | + * Patches for N-1 through N-4 available upon request |
| 111 | + * Backport availability depends on volunteers and severity |
| 112 | + * Plan to upgrade rather than rely on backports |
| 113 | + |
| 114 | +**Documentation** |
| 115 | + * Release notes and full documentation for all versions remain available |
| 116 | + * Migration guides for major changes |
| 117 | + * Community-contributed upgrade experiences |
| 118 | + |
| 119 | +Getting Support |
| 120 | +--------------- |
| 121 | + |
| 122 | +**Community Channels** |
| 123 | + |
| 124 | +* `Presto Slack <https://communityinviter.com/apps/prestodb/prestodb>`_ - Real-time community discussion |
| 125 | +* `GitHub Issues <https://github.com/prestodb/presto/issues>`_ - Bug reports and feature requests |
| 126 | +* `Mailing List <https://lists.prestodb.io/g/presto-dev>`_ - Development discussions |
| 127 | + |
| 128 | +**Self-Support Resources** |
| 129 | + |
| 130 | +* Release notes and documentation |
| 131 | +* Community Slack search history |
| 132 | +* GitHub issues and pull requests |
| 133 | +* Stack Overflow questions tagged 'presto' |
| 134 | + |
| 135 | +Recommendations for Production Use |
| 136 | +---------------------------------- |
| 137 | + |
| 138 | +**Version Selection** |
| 139 | + |
| 140 | +1. **For new deployments**: Use the latest stable release after thorough testing |
| 141 | +2. **For existing deployments**: Stay within 4 versions of the latest release |
| 142 | +3. **For conservative environments**: Wait for at least one patch release (if any) before upgrading |
| 143 | +4. **Never use trunk/master or edge** in production |
| 144 | + |
| 145 | +**Upgrade Strategy** |
| 146 | + |
| 147 | +* Plan regular upgrades (every 2-4 months) |
| 148 | +* Test thoroughly in staging environments |
| 149 | +* Monitor community channels for known issues |
| 150 | +* Maintain ability to rollback if needed |
| 151 | +* Consider skipping releases if stable (but don't fall too far behind) |
| 152 | + |
| 153 | +**Risk Mitigation** |
| 154 | + |
| 155 | +* Maintain test environments matching production |
| 156 | +* Participate in release candidate testing |
| 157 | +* Monitor community discussions for your version |
| 158 | +* Contribute test cases for critical workflows |
| 159 | + |
| 160 | +Contributing to Support |
| 161 | +----------------------- |
| 162 | + |
| 163 | +Ways to contribute: |
| 164 | + |
| 165 | +**Report Issues** |
| 166 | + * File detailed bug reports with reproduction steps on `GitHub Issues <https://github.com/prestodb/presto/issues>`_ |
| 167 | + * Test fixes and provide feedback |
| 168 | + * Share workarounds with the community |
| 169 | + |
| 170 | +**Contribute Fixes** |
| 171 | + * Submit `pull requests <https://github.com/prestodb/presto/pulls>`_ for bugs affecting you |
| 172 | + * Help review and test others' fixes |
| 173 | + * Backport critical fixes to versions you use |
| 174 | + |
| 175 | +**Share Knowledge** |
| 176 | + * Document upgrade experiences |
| 177 | + * Answer questions in `Presto Slack <https://communityinviter.com/apps/prestodb/prestodb>`_ |
| 178 | + * Write blog posts about solutions |
| 179 | + * Contribute to `documentation <https://github.com/prestodb/presto/tree/master/presto-docs>`_ |
| 180 | + |
| 181 | +**Sponsor Development** |
| 182 | + * Allocate engineering resources to the project |
| 183 | + * Fund specific feature development |
| 184 | + * Support maintainers and release shepherds |
| 185 | + |
| 186 | +Special Considerations |
| 187 | +---------------------- |
| 188 | + |
| 189 | +**Long-Term Support (LTS)** |
| 190 | + * Not available |
| 191 | + * Volunteer model incompatible with LTS commitments |
| 192 | + |
| 193 | +**End-of-Life Announcements** |
| 194 | + * No formal EOL process |
| 195 | + * Versions become unsupported as community moves forward |
| 196 | + * Check release announcements for migration guidance |
| 197 | + |
| 198 | +**Compatibility** |
| 199 | + * Breaking changes documented in release notes |
| 200 | + * Migration guides provided for major changes |
| 201 | + * Test when upgrading across multiple versions |
| 202 | + |
| 203 | +Support Expectations |
| 204 | +-------------------- |
| 205 | + |
| 206 | +**Available:** |
| 207 | + |
| 208 | +* Typically quick response to data correctness and runtime bugs |
| 209 | +* Priority focus on critical issues |
| 210 | +* Active community troubleshooting help |
| 211 | +* Transparency about known issues |
| 212 | +* Documentation for old versions |
| 213 | + |
| 214 | +**Not Available:** |
| 215 | + |
| 216 | +* Guaranteed response times |
| 217 | +* Fixes for all issues |
| 218 | +* Support for old versions |
| 219 | +* Feature backports |
| 220 | +* 24/7 support |
| 221 | + |
| 222 | +Summary |
| 223 | +------- |
| 224 | + |
| 225 | +Running Presto in production requires: |
| 226 | + |
| 227 | +* Regular upgrades (every 2-4 months) |
| 228 | +* Thorough testing before deploying |
| 229 | +* Understanding that support is volunteer-based |
| 230 | +* Contributing fixes for issues you encounter |
0 commit comments