Perforce Helix Never Dies: Devops at BANDAI NAMCO Studios

Total Page:16

File Type:pdf, Size:1020Kb

Perforce Helix Never Dies: Devops at BANDAI NAMCO Studios Perforce Helix Never Dies: DevOps at BANDAI NAMCO Studios Hayato Ikeda Lead Programmer BANDAI NAMCO Studios Inc. Summary In any case, development and operation of game, Perforce Helix is the most excellent VCS w/o any doubt. Through the introduction of the use example of a good point, I hope to help the new discovery of the audience. I came all the way from Japan. My English is not so good. Sorry. 1 Agenda Introduction 1. History of the Perforce Helix 2. Perforce Helix advantages 3. DevOps at BANDAI NAMCO Studios 4. Best practices: Development and LiveOps 5. Summary Appendix 2 Introduction Self-Introduction Hayato IKEDA Lead Programmer Assistant Manager BANDAI NAMCO Studios Inc. Engineering: Mobile game (Server, Client) Platforms: iOS, Android, Web browser based 4 About BANDAI NAMCO Studios See website www.bandainamcostudios.com Trivia : ‘765’ sounds ‘NAMCO’ in Japanese. 5 A long time ago in Japan far, far away…. There was no concept of version control system... (C)BANDAI NAMCO Entertainment Inc. 6 We came out from the cave! It is vital for our dev team to utilize version control system. (C)Toshiyuki Kubooka (C)BANDAI NAMCO Entertainment Inc. TEKKENTM 7 &(C)BANDAI NAMCO Entertainment Inc. 7 History of Version Control System CVS(Concurrent Versions System) Microsoft Visual SourceSafe Team Foundation Server Subversion Alienbrain Git Mercurial 8 Perforce Helix ‘04:NAMCO BANDAI Games America started using Perforce. ‘10:NAMCO BANDAI Games started using Perforce. ‘16:BANDAI NAMCO Studios own more than 800 users licenses. 9 Products using Perforce Helix ©2016 Pokémon. ©1995-2016 Nintendo/Creatures Inc./GAME FREAK inc. (C)BANDAI NAMCO Entertainment Inc. 10 TEKKENTM 7 &(C)BANDAI NAMCO Entertainment Inc. THE IDOLM@STER (C)BANDAI NAMCO Entertainment Inc. 11 1. History of the Perforce Helix History of VCS at BANDAI NAMCO (1/4) Corporate Culture : Up to each project to pick a solution Before VCS (-’00) Keeping versions in different folder named with the date. Merged by Each persons on local PCs. Discontent : Inefficient, Not stable. 13 History of VCS at BANDAI NAMCO (2/4) CVS (’01-) Revolutionary system! Discontent : Poor property list, Difficult to use for none-engineers. CVS + Alienbrain (‘03-) Alienbrain introduced as we wanted to manage a lot of art assets. Discontent : 2 VCSs for source codes and art assets. 14 History of VCS at BANDAI NAMCO (3/4) Subversion+Alienbrain (‘06-) Revision numbers to manage versions. Discontent: Still 2 VCS to manage for source codes and art assets. That been said, this combination is not bad. Alienbrain(Only) (‘09-) Challenging! VC of source code requires considerable ingenuity. 15 History of VCS at BANDAI NAMCO (1/4) Perforce (‘10-) We want to manage source code and art assets in a single VCS. Compare some of the VCS. We decided to Perforce process of elimination. First adoption was the project of ‘SOULCALIBUR V’. 16 Hardships to select Perforce Not Free! We have to convince the Product Manager. Rejection Anyone not using.(Aright!) Learning curves for non-engineers Getting them from the time of project start-up. 17 Good point : Noticed after introduction Synchronization is fast, high-capacity assets can also be handled with ease, there is no stress. When a problem occurs, we can quickly revert to a specific revision. It has all the useful tool for programmers. The first was also operation mistake, but familiar in a few months, became proficient in non-engineers. 18 Perforce became standard Currently, many of the projects have adopted the game engines such as Unity and Unreal Engine. Especially in the Unreal Engine, because that is a system based on the use of Perforce Helix for VC, hence many game developers are using the Helix. We have been to use the Helix also in-house engine and prototyping. 19 Why did we chose Perforce Helix? Fast and Stable. De-facto Standard. Varieties of feature with ease of use. Reduce overall costs. 20 2. Perforce Helix advantages Perforce Helix advantages (1/7) 1. Helix enables you to manage all source codes and assets. Asset(binary) and source code(text) are handled in the same VCS, they are managed in a single revisioning. When a problem occurs, we can quickly revert to a specific revision. Dev Rel1 Rel2 R765 R1024 R1185 22 Perforce Helix advantages (2/7) 2. Helix provides perfect environment for iterative and incremental development. Development and operation (DevOps) is all about iterative and incremental development. Thus, Helix is best environment to work on. 23 Perforce Helix advantages (3/7) 3. Fast! Synchronization is so fast, you never feel stress. Fast and easy to create the branch. Branching in subversion takes a long time. It’s a coffee break (can be a lunch time!). P4Merge is reasonably clever. 24 Perforce Helix advantages (4/7) 4. Helix has linked to a variety of tools. Easy integration. Microsoft Visual Studio Jenkins Unity Unreal Engine Etc… 25 Perforce Helix advantages (5/7) 5. P4V is versatile Most of the basic operation can be accomplished in P4V. Easy to use for non-engineers. Game Designers, Graphics Designers, Sound Creator Graphical User Interface :-) 26 Perforce Helix advantages (6/7) 6. Fantastic customer care and support Japanese agency Toyo is firmly supported. 27 Perforce Helix advantages (7/7) 7. Perfect match for Agile development. Scrum/DevOps Branch/Marge Workspace Mapping Stream Shelve Integration 28 And more… Up to 20 workspaces for Free! Workspace may look cumbersome, but it’s powerful. Depot/Workspace/Local Divide the authority in the user group Reconcile Offline Work Git Fusion 29 3. DevOps at BANDAI NAMCO Studios DevOps at BANDAI NAMCO Studios We didn’t have idea of DevOps. However, we’ve realized that how/what we are doing is something close to the so-called DevOps. Let us see one of the case. 31 Game development and LiveOps BANDAI NAMCO Studio’s LiveOps Mainly for social mobile game development. Operation while development. Operation corresponds 24/7. It’s truly living operation! Development and operation is on the same team. (Dev and Ops are not divided) DevOps ≒ LiveOps 32 Good points / Bad points Good The same team is responsible for both development and operation. No confusion. Can design in anticipation of the operation from the start of development. Main engineers become much be involved in the product. Bad No document! Product isn’t taken over. 33 KAIZEN everyday! CI(Continuous Integration) Automatic(everything!) Testing Code Review Iteration Agile/Scrum Development Tools 34 The answer is not visible We’re doing a lot of ideas and improvements, not out is still clearly the best answer. It’s difficult to summarize in game development. Because there are a number of factors.(For example, the size of the project , such as the contents of the deal game.) I can talk about cases and failures. Please listen as an example. Let's discuss together later. 35 4. Best practices: Development and LiveOps Best practices: Dev and LiveOps (1/5) 1. How to make releases branch, and trunk merge. We prefer not to branch during the initial development. Starts to deploy branching at DevOps phase followed by trunk work. Automation is highly recommended for Merge to the trunk process. If the trunk fails during scheduled build, it send you alert via e-mail. 37 Best practices: Dev and LiveOps (2/5) 2. Trick for avoiding the collisions. Text maybe able to merge, but caution with binary data. If the team sit close together in the office, raise a hand and call out. You can also use tool such as Slack. There is also to put the Exclusive checkout of P4V. (Don’t forget to submit after the edit!) 38 Best practices: Dev and LiveOps (3/5) 3. Continuous delivery - Jenkins the way of automated build using. 39 Best practices: Dev and LiveOps (4/5) 4. The Swarm was introduced, try the code review. 40 Best practices: Dev and LiveOps (5/5) 5. Shelve and debugging technique that uses, operation check method. 41 5. Summary Summary (again) In any case, DevOps and LiveOps of game, Perforce Helix is the most excellent VCS w/o any doubt. Through the introduction of the use example of a good point, I hope to help the new discovery of the listener. I came all the way from Japan, please be my friend! I’m waiting for e-mail or message. 43 May the Perforce be with you. Hayato Ikeda Twitter : ikehaya Facebook : hayato.ikeda.372 LinkedIn : hayato-ikeda-690b3245 Appendix Appendix: Murphy’s law . It is an error to submitted just before returning home. Punishment of workspace delete! . The artists don’t write a description. Even 'Get Latest Revision' by deleting the files from the folder, and rush without revival files. Correct answer : Right Click Menu ->Get Revision ->Check ‘Force Operation’ ->Push ‘Get Revision’ 46 Appendix: Wishlist . Japanese character code problem UTF-8 and S-JIS . I want to use the command even P4V 47.
Recommended publications
  • Bandai Namco Blue Protocol Release Date
    Bandai Namco Blue Protocol Release Date Snappish and boring Christoph hyphenate so stellately that Yale paraffines his thespian. Which Felice betides so surpassingly that Baxter aid her thrummer? Haley usually restructured peerlessly or dabbled helpfully when emunctory Tally normalize farther and amateurishly. Release MU Launcher Autoupdate webzen template Page 3. Date Added Thursday 05 November 2020 why because i only use this tally in beta app. Bandai Namco Opens Alpha Signups For at New Fantasy Sci. Categories Game Articles News Tags ActionBandai Namco Onlineblue protocolMMOMMORPGnewsPC Author Yuria Date October 7 2020. Analysis software and communications protocol development and pulling IP's on PS4 Xbox. You there will find out facebook gaming. The blue protocol world of bandai namco continuing little nightmares without them by logging is a divine tribe and the release date plans are pretty good for bandai namco blue protocol release date: warzone and oprah winfrey. Embed adda So Yeah ArcheAge is releasing a fresh server. Bandai Namco announces latest RPG Blue Protocol Tech. Eloa a central to ending homelessness, bandai namco blue protocol release date has released on your friends play this category to understand how much more ideas and super robot wars battlefront ii! In a stain release Bandai Namco has announced a new online action RPG Blue Protocol The pie is being developed by their animal Project. Blowfish Studios Pty Ltd Blue Isle Studios Blue Wizard Digital LP BonusXP Inc. Everything or know about Bandai Namco's anime MMORPG. It later clarified this mat a prank on Twitter and didn't involve Bandai Namco. Bandai Namco had released a trailer for my upcoming MMORPG Blue Protocol Along in the trailer Bandai also released some other.
    [Show full text]
  • Useful Tools for Game Making
    CMS.611J/6.073 Fall 2014 Useful Tools List This list is by no means complete, but should get you started. Talk to other folks in the class about their recommendations. Revision Control Version control software, provides backups and easy reversion. Perforce Mac/Win GUI (p4v): Heavily used in game http://www.perforce.com/dow industry. Commercial nloads/Perforce-Software-Ver software; you can use the sion-Management/complete_l Game Lab server. ist/Customer Subversion Command line: Open source, server-based http://subversion.apache.org/ Windows GUI: http://tortoisesvn.net/ Git Command line: Open source, distributed http://git-scm.com/ Mercurial Command line: Open source, distributed http://mercurial.selenic.com/ Windows GUI: http://tortoisehg.bitbucket.org/ SourceTree Mac/Win GUI: Not a source control system, http://www.sourcetreeapp.co just a GUI for Git and m/ Mercurial clients Revision Control Hosting SourceForge http://sourceforge.net/ git, mercurial, or subversion BitBucket https://bitbucket.org/ git or mercurial GitHub https://github.com/ git, has own (painful) GUI for Git 1 Image Editing MSPaint Windows, pre-installed Surprisingly useful quick pixel art editor (esp for prototypes) Paint.NET Windows, About as easy as MSPaint, but http://www.getpaint.net/download much more powerful .html Photoshop Mac, Windows New Media Center, 26-139 GIMP Many platforms, Easier than photoshop, at http://www.gimp.org/downloads/ least. Sound GarageBand Mac New Media Center, 26-139 Audacity Many platforms, Free, open source. http://audacity.sourceforge.ne
    [Show full text]
  • Jenkins Job Builder Documentation Release 3.10.0
    Jenkins Job Builder Documentation Release 3.10.0 Jenkins Job Builder Maintainers Aug 23, 2021 Contents 1 README 1 1.1 Developers................................................1 1.2 Writing a patch..............................................2 1.3 Unit Tests.................................................2 1.4 Installing without setup.py........................................2 2 Contents 5 2.1 Quick Start Guide............................................5 2.1.1 Use Case 1: Test a job definition................................5 2.1.2 Use Case 2: Updating Jenkins Jobs...............................5 2.1.3 Use Case 3: Working with JSON job definitions........................6 2.1.4 Use Case 4: Deleting a job...................................6 2.1.5 Use Case 5: Providing plugins info...............................6 2.2 Installation................................................6 2.2.1 Documentation.........................................7 2.2.2 Unit Tests............................................7 2.2.3 Test Coverage..........................................7 2.3 Configuration File............................................7 2.3.1 job_builder section.......................................8 2.3.2 jenkins section.........................................9 2.3.3 hipchat section.........................................9 2.3.4 stash section...........................................9 2.3.5 __future__ section.......................................9 2.4 Running.................................................9 2.4.1 Test Mode...........................................
    [Show full text]
  • DVCS Or a New Way to Use Version Control Systems for Freebsd
    Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions DVCS or a new way to use Version Control Systems for FreeBSD Ollivier ROBERT <[email protected]> BSDCan 2006 Ottawa, Canada May, 12-13th, 2006 Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions Agenda 1 Brief history of VCS 2 FreeBSD context & gures 3 Is Arch/baz suited for FreeBSD? 4 Mercurial to the rescue 5 New processes & policies needed 6 Conclusions Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions The ancestors: SCCS, RCS File-oriented Use a subdirectory to store deltas and metadata Use lock-based architecture Support shared developments through NFS (fragile) SCCS is proprietary (System V), RCS is Open Source a SCCS clone exists: CSSC You can have a central repository with symlinks (RCS) Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions CVS, the de facto VCS for the free world Initially written as shell wrappers over RCS then rewritten in C Centralised server Easy UI Use sandboxes to avoid locking Simple 3-way merges Can be replicated through CVSup or even rsync Extensive documentation (papers, websites, books) Free software and used everywhere (SourceForge for example) Ollivier ROBERT <[email protected]> DVCS or a new way to use Version Control Systems for FreeBSD Brief history of VCS FreeBSD context & gures Is Arch/baz suited for FreeBSD? Mercurial to the rescue New processes & policies needed Conclusions CVS annoyances and aws BUT..
    [Show full text]
  • Helix Authentication Service Administrator Guide 2021.1 May 2021 Copyright © 2020-2021 Perforce Software, Inc
    Helix Authentication Service Administrator Guide 2021.1 May 2021 Copyright © 2020-2021 Perforce Software, Inc.. All rights reserved. All software and documentation of Perforce Software, Inc. is available from www.perforce.com. You can download and use Perforce programs, but you can not sell or redistribute them. You can download, print, copy, edit, and redistribute the documentation, but you can not sell it, or sell any documentation derived from it. You can not modify or attempt to reverse engineer the programs. This product is subject to U.S. export control laws and regulations including, but not limited to, the U.S. Export Administration Regulations, the International Traffic in Arms Regulation requirements, and all applicable end-use, end-user and destination restrictions. Licensee shall not permit, directly or indirectly, use of any Perforce technology in or by any U.S. embargoed country or otherwise in violation of any U.S. export control laws and regulations. Perforce programs and documents are available from our Web site as is. No warranty or support is provided. Warranties and support, along with higher capacity servers, are sold by Perforce. Perforce assumes no responsibility or liability for any errors or inaccuracies that might appear in this book. By downloading and using our programs and documents you agree to these terms. Perforce and Inter-File Branching are trademarks of Perforce. All other brands or product names are trademarks or registered trademarks of their respective companies or organizations. Contents How to use
    [Show full text]
  • Staying out of the Swamp
    Staying out of the server swamp Richard Baum Perforce Software October, 2001 Contents Introduction How do I tell if I'm in the swamp? Is your system CPU bound? Is your system memory bound? Is your system I/O bound? How can Perforce cause server swamp? Network Attached Storage Confusing and complex client mappings Background processes The Perforce error log Gigantic operations Conclusion Introduction Perforce runs extremely well when it is given the right resources. A Perforce server does not generally require much CPU. Memory and disk requirements correspond to the amount of data you wish to store. Conditions can sometimes conspire to change a well-performing server into a poorly-performing one. This talk will cover some of the things to watch out for to keep your Perforce server happy and healthy. The object of this talk is to familiarize you with what to look for so you can determine where the problem lies, and what to do so you can remedy the problem. In general, performance that a user will see is limited by the I/O bandwidth of the server and the speed of its connection with a client machine. A server that appears to not be responding in its typically speedy fashion may, in fact, be swamped with data and requests for data. How do I tell if I'm in the swamp? If you suspect that your Perforce server is swamped, the first things to do are to check whether it is, in fact, running, and to examine the machine that hosts the server for any obvious signs of a problem.
    [Show full text]
  • Coverity Static Analysis
    Coverity Static Analysis Quickly find and fix Overview critical security and Coverity® gives you the speed, ease of use, accuracy, industry standards compliance, and quality issues as you scalability that you need to develop high-quality, secure applications. Coverity identifies code critical software quality defects and security vulnerabilities in code as it’s written, early in the development process when it’s least costly and easiest to fix. Precise actionable remediation advice and context-specific eLearning help your developers understand how to fix their prioritized issues quickly, without having to become security experts. Coverity Benefits seamlessly integrates automated security testing into your CI/CD pipelines and supports your existing development tools and workflows. Choose where and how to do your • Get improved visibility into development: on-premises or in the cloud with the Polaris Software Integrity Platform™ security risk. Cross-product (SaaS), a highly scalable, cloud-based application security platform. Coverity supports 22 reporting provides a holistic, more languages and over 70 frameworks and templates. complete view of a project’s risk using best-in-class AppSec tools. Coverity includes Rapid Scan, a fast, lightweight static analysis engine optimized • Deployment flexibility. You for cloud-native applications and Infrastructure-as-Code (IaC). Rapid Scan runs decide which set of projects to do automatically, without additional configuration, with every Coverity scan and can also AppSec testing for: on-premises be run as part of full CI builds with conventional scan completion times. Rapid Scan can or in the cloud. also be deployed as a standalone scan engine in Code Sight™ or via the command line • Shift security testing left.
    [Show full text]
  • Teamcity 7.1 Documentation.Pdf
    1. TeamCity Documentation . 4 1.1 What's New in TeamCity 7.1 . 5 1.2 What's New in TeamCity 7.0 . 14 1.3 Getting Started . 26 1.4 Concepts . 30 1.4.1 Agent Home Directory . 31 1.4.2 Agent Requirements . 32 1.4.3 Agent Work Directory . 32 1.4.4 Authentication Scheme . 33 1.4.5 Build Agent . 33 1.4.6 Build Artifact . 34 1.4.7 Build Chain . 35 1.4.8 Build Checkout Directory . 36 1.4.9 Build Configuration . 37 1.4.10 Build Configuration Template . 38 1.4.11 Build Grid . 39 1.4.12 Build History . 40 1.4.13 Build Log . 40 1.4.14 Build Number . 40 1.4.15 Build Queue . 40 1.4.16 Build Runner . 41 1.4.17 Build State . 41 1.4.18 Build Tag . 42 1.4.19 Build Working Directory . 43 1.4.20 Change . 43 1.4.21 Change State . 43 1.4.22 Clean Checkout . 44 1.4.23 Clean-Up . 45 1.4.24 Code Coverage . 46 1.4.25 Code Duplicates . 47 1.4.26 Code Inspection . 47 1.4.27 Continuous Integration . 47 1.4.28 Dependent Build . 47 1.4.29 Difference Viewer . 49 1.4.30 Guest User . 50 1.4.31 History Build . 51 1.4.32 Notifier . 51 1.4.33 Personal Build . 52 1.4.34 Pinned Build . 52 1.4.35 Pre-Tested (Delayed) Commit . 52 1.4.36 Project . 53 1.4.37 Remote Run . ..
    [Show full text]
  • Perforce Tunables
    Perforce Tunables Michael Shields Performance Lab Manager Perforce Software March, 2010 Abstract Tunables have been available in Perforce since the 2008.2 release. With help from Perforce, tunables can be used to modify some performance characteristics and limited changes to functionality. Though not strictly supported, Perforce would like to understand the effects of some of the tunables in customer environments. This paper discusses the importance of working with Perforce when considering the use of tunables. Also discussed is the mechanics of using tunables with the Perforce Server and clients. A strategy for implementing tunables is suggested. The tunables currently available are surveyed, detailing which might have an effect under what circumstances, and which should rarely be used and why. 1 Introduction Since the first releases of Perforce, there have been significant changes to both hardware and operating systems. Hardware typical of the mid-1990s included 167MHz UltraSPARC I or 166MHz Pentium processors, with perhaps a gigabyte or two of physical memory. Solaris 2.5 and Windows NT Server 3.51 were popular operating systems, and the Linux 2.0 kernel was first released in 1996. The hardware of the mid-1990s seems slow and small compared to current hardware consisting of several multi-core 3GHz Xeons or Opterons with tens or hundreds of gigabytes of physical memory. The performance of the Linux 2.6 kernel makes it a popular operating system on which to run today’s largest Perforce Servers. Perforce products have certainly evolved and improved since their first releases. Every Perforce release usually includes new features, enhancements, and performance improvements.
    [Show full text]
  • TOKYO GAME SHOW 2020 ONLINE Starts !
    The Future Touches Gaming First. Press Release September 24, 2020 TOKYO GAME SHOW 2020 ONLINE Starts ! Official Program Streaming from 20:00, September 24 in JST/UTC+9 Computer Entertainment Supplier’s Association Computer Entertainment Supplier’s Association (CESA, Chairman: Hideki Hayakawa) announces that TOKYO GAME SHOW 2020 ONLINE (TGS2020 ONLINE: https://tgs.cesa.or.jp/) has opened for the five- day period from September 23 (Wed.) to 27 (Sun.), 2020. Online business matching started yesterday, and official program streaming will kick off with the Opening Event from 20:00, Thursday, September 24 (JST/ UTC+9) featuring the Official Supporter Hajime Syacho and other popular figures. The Official Program page offers 35 Exhibitor Programs delivering the latest news and 16 Organizer’s Projects including Keynote Speech, four competitions of e-Sports X, the indie game presentation event SENSE of WONDER NIGHT (SOWN), and the announcement and awarding for each category of Japan Game Awards. No pre-registration or log-in is required to enjoy viewing the programs for free of charge. Keynote Speech, Grand Award of Japan Game Awards 2020 and SOWN will be streamed in English as well as Japanese for global audience in Asia and other parts of the world. In TGS2020 ONLINE, 424 companies and organizations from 34 countries and regions exhibit in a virtual space, providing the updates on newly-released titles and services through streaming and each exhibitor’s page. By region, more companies and organizations from overseas (221) exhibit in this year’s TGS than those from Japan (203). Ten or more exhibitors participate from South Korea (46), China (22), Canada (20), Taiwan (19), the United States (17), Poland (13), and Colombia (10).
    [Show full text]
  • Intellij IDEA, the Most Intelligent Java
    IntelliJ IDEA, the most intelligent Java IDE IntelliJ IDEA, JetBrains’ flagship Java IDE, Every aspect of IntelliJ IDEA is specifically How does IntelliJ IDEA provides high-class support and productivity designed to maximize developer productiv- match up against competing tools? boosts for enterprise, mobile and web devel- ity. Together, powerful static code analysis opment in Java, Scala and Groovy, with all and ergonomic design make development Products versions in comparison the latest technologies and frameworks sup- a productive and enjoyable experience. ported out of the box. Compatibility with Operating systems Marketing / Market / Community comparison Community Comparison Platform More Information To learn more about the product, please visit our website at jetbrains.com/idea After IntelliJ IDEA has indexed your source languages and frameworks are at hand — IntelliJ IDEA is available in two editions: code, it ofers a blazingly fast and intelligent no plugin hustle included. While IntelliJ coding experience by giving relevant sug- IDEA is an IDE for Java, it also understands • Community Edition (free) gestions in every context: instant and clever and provides intelligent coding assistance • Ultimate Edition (paid) code completion, on-the-fly code analysis for a large variety of other languages such and reliable refactoring tools. Mission-critical as SQL, JPQL, HTML, JavaScript, and more, tools such as integration with version con- even when the language expression is inject- trols systems and a wide variety of supported ed into a String
    [Show full text]
  • Live Upgrading Thousands of Servers from an Ancient Red Hat Distribution to 10 Year Newer Debian Based One Marc Merlin, Google, Inc
    Live Upgrading Thousands of Servers from an Ancient Red Hat Distribution to 10 Year Newer Debian Based One Marc Merlin, Google, Inc. https://www.usenix.org/conference/lisa13/technical-sessions/papers/merlin This paper is included in the Proceedings of the 27th Large Installation System Administration Conference (LISA ’13). November 3–8, 2013 • Washington, D.C., USA ISBN 978-1-931971-05-8 Open access to the Proceedings of the 27th Large Installation System Administration Conference (LISA ’13) is sponsored by USENIX. Live upgrading thousands of servers from an ancient Red Hat distribution to 10 year newer Debian based one. Marc MERLIN Google, Inc. Abstract Google maintains many servers and employs a file level sync method with applications running in a different parti- tion than the base Linux distribution that boots the machine and interacts with hardware. This experience report first gives insights on how the distribution is setup, and then tackles the problem of doing a difficult upgrade from a Red Hat 7.1 image snapshot with layers of patches to a Debian Testing based distribution built from source. We will look at how this can actually be achieved as a live upgrade and without ending up with a long “flag day” where many machines are running totally different distributions, which would have made testing and debugging of appli- cations disastrous during a long switchover period. Like a coworker of mine put it, “It was basically akin to upgrading Red Hat 7.1 to Fedora Core 16, a totally unsup- ported and guaranteed to break upgrade, but also switching from rpm to dpkg in the process, and on live machines.” The end of the paper summarizes how we designed our packaging system for the new distribution, as well as how we build each new full distribution image from scratch in a few minutes.
    [Show full text]