GerritHub a true Gerrit migration story to v2.15

Luca Milanesio
Luca MilanesioDirector at GerritForge Ltd
0Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 0
Migrating to Gerrit 2.15
A success story by GerritHub.io
Luca Milanesio
Gerrit Code Review Maintainer
GerritForge
1Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 1
About GerritForge
Founded in the
UK
HQ in London Committed to
OpenSource
2Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 2
About GerritHub.io
• 5 years of activity
• 37k Gerrit projects hosted
• 16k monthly active users
• 300+ organizations
• 99.9% availability
3Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 3
Multi-master / dual-site Gerrit setup
OVH - Canada Hetzner - Germany
4Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 4
Challenges when upgrading to 2.15
1.Zero-downtime
2.Accounts migration
3.NoteDb migration
4.Replication to GitHub
5Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 5
Challenge #1 zero downtime
OVH – Canada (v2.14) Hetzner – Germany
(v2.14 è v2.15 online reindex)
Incoming traffic
6Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 6
Challenge #1 zero downtime
OVH – Canada (v2.14)
+ readonly plugin
Hetzner – Germany
(reinit v2.15)
Incoming traffic
replication
7Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 7
Challenge #1 zero downtime
OVH – Canada (v2.14)
+ readonly plugin
Hetzner – Germany
(delta-reindex v2.15)
Incoming traffic
replication
8Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 8
Challenge #1 zero downtime
OVH – Canada
(v2.14 è v2.15)
Hetzner – Germany
(v2.15 on ReviewDb)
Incoming traffic
9Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 9
Challenge #1 zero downtime
OVH – Canada
(v2.15 delta reindex)
Hetzner – Germany
(v2.15 on ReviewDb)
Incoming traffic
replication
10Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 10
Challenge #2 accounts migration
Accounts table (DB)
All-Users (repo)
accounts index (lucene)
v2.14
All-Users (repo)
accounts index (lucene)
v2.15
• All-Users getting fragmented quickly è open files explosion
• accounts index misalignments in v2.14 (unnoticed)
11Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 11
Challenge #3 NoteDb migration
OVH – Canada
(v2.15 / ReviewDb)
Hetzner – Germany
(v2.15 ReviewDb è NoteDb)
Incoming traffic
replication
12Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 12
Challenge #3 NoteDb migration
OVH – Canada
(v2.15 restart with NoteDb cfg)
Hetzner – Germany
(v2.15 NoteDb)
Incoming traffic
replication
13Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 13
Challenge #3 NoteDb migration
OVH – Canada
(v2.15 NoteDb)
Hetzner – Germany
(v2.15 NoteDb + readonly)
Incoming traffic
replication
14Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 14
Challenge #3 NoteDb migration
OVH – Canada
(v2.15 NoteDb)
Hetzner – Germany
(v2.15 NoteDb)
Incoming traffic
replication
15Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 15
Challenge #4 replication to GitHub
NoteDb = refs (w/ ReviewDb) + Num (changes)
Git push to GitHub = HTTP Status 500 (boom !)
16Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 16
Poll: did you have similar problems?
Image from: http://cypp.rutgers.edu/ru-voting/political-information/public-opinion-polls/
17Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 17
Wants to know more?
GerritForge.com/contact
1 of 18

Recommended

What's new in Gerrit Code Review 3.0 by
What's new in Gerrit Code Review 3.0What's new in Gerrit Code Review 3.0
What's new in Gerrit Code Review 3.0Luca Milanesio
1.1K views31 slides
Gerrit Code Review multi-site by
Gerrit Code Review multi-siteGerrit Code Review multi-site
Gerrit Code Review multi-siteLuca Milanesio
1.1K views16 slides
Gerrit multi-master / multi-site at GerritHub by
Gerrit multi-master / multi-site at GerritHubGerrit multi-master / multi-site at GerritHub
Gerrit multi-master / multi-site at GerritHubLuca Milanesio
908 views17 slides
Gerrit Code Review migrations step-by-step by
Gerrit Code Review migrations step-by-stepGerrit Code Review migrations step-by-step
Gerrit Code Review migrations step-by-stepLuca Milanesio
312 views39 slides
Cloud-native Gerrit Code Review by
Cloud-native Gerrit Code ReviewCloud-native Gerrit Code Review
Cloud-native Gerrit Code ReviewLuca Milanesio
229 views24 slides
Gerrit Analytics applied to Android source code by
Gerrit Analytics applied to Android source codeGerrit Analytics applied to Android source code
Gerrit Analytics applied to Android source codeLuca Milanesio
242 views26 slides

More Related Content

What's hot

Jenkins plugin for Gerrit Code Review pipelines by
Jenkins plugin for Gerrit Code Review pipelinesJenkins plugin for Gerrit Code Review pipelines
Jenkins plugin for Gerrit Code Review pipelinesLuca Milanesio
1K views14 slides
Diffy gets enterprise grade by
Diffy gets enterprise gradeDiffy gets enterprise grade
Diffy gets enterprise gradeEryk Szymanski
689 views23 slides
Putting data science to work by
Putting data science to workPutting data science to work
Putting data science to workAlex Breeze
105 views30 slides
SW360 Update Tooling Telco by
SW360 Update Tooling TelcoSW360 Update Tooling Telco
SW360 Update Tooling TelcoShane Coughlan
261 views12 slides
Argocd up and running by
Argocd up and runningArgocd up and running
Argocd up and runningRaphaël PINSON
211 views22 slides
From Copycat Codelets to an AI Market Internet Protocol by
From Copycat Codelets to an AI Market Internet ProtocolFrom Copycat Codelets to an AI Market Internet Protocol
From Copycat Codelets to an AI Market Internet ProtocolStefan Ianta
179 views27 slides

What's hot(20)

Jenkins plugin for Gerrit Code Review pipelines by Luca Milanesio
Jenkins plugin for Gerrit Code Review pipelinesJenkins plugin for Gerrit Code Review pipelines
Jenkins plugin for Gerrit Code Review pipelines
Luca Milanesio1K views
Putting data science to work by Alex Breeze
Putting data science to workPutting data science to work
Putting data science to work
Alex Breeze105 views
From Copycat Codelets to an AI Market Internet Protocol by Stefan Ianta
From Copycat Codelets to an AI Market Internet ProtocolFrom Copycat Codelets to an AI Market Internet Protocol
From Copycat Codelets to an AI Market Internet Protocol
Stefan Ianta179 views
GITHUB Integration by David Ibia
GITHUB IntegrationGITHUB Integration
GITHUB Integration
David Ibia172 views
12th Meeting OpenChain Reference Tooling Work Group - 25th March - Slides by Shane Coughlan
12th Meeting OpenChain Reference Tooling Work Group - 25th March - Slides12th Meeting OpenChain Reference Tooling Work Group - 25th March - Slides
12th Meeting OpenChain Reference Tooling Work Group - 25th March - Slides
Shane Coughlan198 views
Python and big data : a good match? by PyDataParis
Python and big data : a good match?Python and big data : a good match?
Python and big data : a good match?
PyDataParis66 views
Git-deliver Ignite slides for DevOps Days Paris 2015 by Arnaud_Betremieux
Git-deliver Ignite slides for DevOps Days Paris 2015Git-deliver Ignite slides for DevOps Days Paris 2015
Git-deliver Ignite slides for DevOps Days Paris 2015
Arnaud_Betremieux555 views
Reactive Programming Meetup - NodeJs on K8s by Roland Tritsch
Reactive Programming Meetup - NodeJs on K8sReactive Programming Meetup - NodeJs on K8s
Reactive Programming Meetup - NodeJs on K8s
Roland Tritsch503 views
Containers and Kubernetes without limits by Antje Barth
Containers and Kubernetes without limitsContainers and Kubernetes without limits
Containers and Kubernetes without limits
Antje Barth89 views
Atmosphere 2016 - Catalin Jora - Microservices continuous delivery with MANT... by PROIDEA
Atmosphere 2016 - Catalin Jora -  Microservices continuous delivery with MANT...Atmosphere 2016 - Catalin Jora -  Microservices continuous delivery with MANT...
Atmosphere 2016 - Catalin Jora - Microservices continuous delivery with MANT...
PROIDEA105 views
GitOps with ArgoCD by CloudOps2005
GitOps with ArgoCDGitOps with ArgoCD
GitOps with ArgoCD
CloudOps20053.3K views
Last Month in PHP - May 2018 by Eric Poe
Last Month in PHP - May 2018Last Month in PHP - May 2018
Last Month in PHP - May 2018
Eric Poe155 views

Similar to GerritHub a true Gerrit migration story to v2.15

Gerrit Code Review v3.2 and v3.3 by
Gerrit Code Review v3.2 and v3.3Gerrit Code Review v3.2 and v3.3
Gerrit Code Review v3.2 and v3.3Luca Milanesio
142 views25 slides
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to... by
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...Datacratic
1.4K views31 slides
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜 by
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜LINE Corporation
4K views29 slides
RT4 - The whole sordid story by
RT4 - The whole sordid storyRT4 - The whole sordid story
RT4 - The whole sordid storyJesse Vincent
3.1K views265 slides
Industrial IoT bootcamp by
Industrial IoT bootcampIndustrial IoT bootcamp
Industrial IoT bootcampLothar Schubert
3K views107 slides
Gitora, Version Control for PL/SQL by
Gitora, Version Control for PL/SQLGitora, Version Control for PL/SQL
Gitora, Version Control for PL/SQLGerger
28.6K views17 slides

Similar to GerritHub a true Gerrit migration story to v2.15(20)

Gerrit Code Review v3.2 and v3.3 by Luca Milanesio
Gerrit Code Review v3.2 and v3.3Gerrit Code Review v3.2 and v3.3
Gerrit Code Review v3.2 and v3.3
Luca Milanesio142 views
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to... by Datacratic
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
RTBkit Meetup - Developer Spotlight, Behind the Scenes of RTBkit and Intro to...
Datacratic1.4K views
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜 by LINE Corporation
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
ソフトウェアでのパケット処理あれこれ〜何故我々はロードバランサを自作するに至ったのか〜
LINE Corporation4K views
RT4 - The whole sordid story by Jesse Vincent
RT4 - The whole sordid storyRT4 - The whole sordid story
RT4 - The whole sordid story
Jesse Vincent3.1K views
Gitora, Version Control for PL/SQL by Gerger
Gitora, Version Control for PL/SQLGitora, Version Control for PL/SQL
Gitora, Version Control for PL/SQL
Gerger28.6K views
Gitora, Version Control for PL/SQL by Gerger
Gitora, Version Control for PL/SQLGitora, Version Control for PL/SQL
Gitora, Version Control for PL/SQL
Gerger296 views
Roche | The Design History File in codeBeamer ALM: Electronic Records, Signat... by Intland Software GmbH
Roche | The Design History File in codeBeamer ALM: Electronic Records, Signat...Roche | The Design History File in codeBeamer ALM: Electronic Records, Signat...
Roche | The Design History File in codeBeamer ALM: Electronic Records, Signat...
Continuous Delivery and Automated Operations on k8s with keptn by Andreas Grabner
Continuous Delivery and Automated Operations on k8s with keptnContinuous Delivery and Automated Operations on k8s with keptn
Continuous Delivery and Automated Operations on k8s with keptn
Andreas Grabner368 views
Git Gerrit Mit Teamforge by CollabNet
Git Gerrit Mit TeamforgeGit Gerrit Mit Teamforge
Git Gerrit Mit Teamforge
CollabNet1.2K views
Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix... by Charles Sonigo
Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix...Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix...
Charles sonigo - Demuxed 2018 - How to be data-driven when you aren't Netflix...
Charles Sonigo66 views
Google Cloud Platform Solutions for DevOps Engineers by Márton Kodok
Google Cloud Platform Solutions  for DevOps EngineersGoogle Cloud Platform Solutions  for DevOps Engineers
Google Cloud Platform Solutions for DevOps Engineers
Márton Kodok1.1K views
GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal) by Pedro Moreira da Silva
GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal)GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal)
GitLab: One Tool for Software Development (2018-02-06 @ SEIUM, Braga, Portugal)
Cloud Foundry Platform Operations - CF Summit 2015 by cornelia davis
Cloud Foundry Platform Operations - CF Summit 2015Cloud Foundry Platform Operations - CF Summit 2015
Cloud Foundry Platform Operations - CF Summit 2015
cornelia davis2.5K views
Lelani Prevost and Gina Fevrier - Two Wahines Hang Ten Languages off BMC’s Ep... by LavaConConference
Lelani Prevost and Gina Fevrier - Two Wahines Hang Ten Languages off BMC’s Ep...Lelani Prevost and Gina Fevrier - Two Wahines Hang Ten Languages off BMC’s Ep...
Lelani Prevost and Gina Fevrier - Two Wahines Hang Ten Languages off BMC’s Ep...
Git/Gerrit with TeamForge by CollabNet
Git/Gerrit with TeamForgeGit/Gerrit with TeamForge
Git/Gerrit with TeamForge
CollabNet3.3K views
Trunk based development for Beginners by Nebulaworks
Trunk based development for BeginnersTrunk based development for Beginners
Trunk based development for Beginners
Nebulaworks184 views

More from Luca Milanesio

ChronicleMap non-blocking cache for Gerrit v3.3 by
ChronicleMap non-blocking cache for Gerrit v3.3ChronicleMap non-blocking cache for Gerrit v3.3
ChronicleMap non-blocking cache for Gerrit v3.3Luca Milanesio
85 views17 slides
Gerrit User Summit 2018 - Keynote by
Gerrit User Summit 2018 - Keynote Gerrit User Summit 2018 - Keynote
Gerrit User Summit 2018 - Keynote Luca Milanesio
588 views14 slides
Gerrit User Summit 2017 Keynote by
Gerrit User Summit 2017 KeynoteGerrit User Summit 2017 Keynote
Gerrit User Summit 2017 KeynoteLuca Milanesio
495 views17 slides
How to keep Jenkins logs forever without performance issues by
How to keep Jenkins logs forever without performance issuesHow to keep Jenkins logs forever without performance issues
How to keep Jenkins logs forever without performance issuesLuca Milanesio
1.1K views18 slides
Jenkins Pipeline on your Local Box to Reduce Cycle Time by
Jenkins Pipeline on your Local Box to Reduce Cycle TimeJenkins Pipeline on your Local Box to Reduce Cycle Time
Jenkins Pipeline on your Local Box to Reduce Cycle TimeLuca Milanesio
498 views20 slides
Jenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code Review by
Jenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code ReviewJenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code Review
Jenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code ReviewLuca Milanesio
1.1K views65 slides

More from Luca Milanesio(20)

ChronicleMap non-blocking cache for Gerrit v3.3 by Luca Milanesio
ChronicleMap non-blocking cache for Gerrit v3.3ChronicleMap non-blocking cache for Gerrit v3.3
ChronicleMap non-blocking cache for Gerrit v3.3
Luca Milanesio85 views
Gerrit User Summit 2018 - Keynote by Luca Milanesio
Gerrit User Summit 2018 - Keynote Gerrit User Summit 2018 - Keynote
Gerrit User Summit 2018 - Keynote
Luca Milanesio588 views
Gerrit User Summit 2017 Keynote by Luca Milanesio
Gerrit User Summit 2017 KeynoteGerrit User Summit 2017 Keynote
Gerrit User Summit 2017 Keynote
Luca Milanesio495 views
How to keep Jenkins logs forever without performance issues by Luca Milanesio
How to keep Jenkins logs forever without performance issuesHow to keep Jenkins logs forever without performance issues
How to keep Jenkins logs forever without performance issues
Luca Milanesio1.1K views
Jenkins Pipeline on your Local Box to Reduce Cycle Time by Luca Milanesio
Jenkins Pipeline on your Local Box to Reduce Cycle TimeJenkins Pipeline on your Local Box to Reduce Cycle Time
Jenkins Pipeline on your Local Box to Reduce Cycle Time
Luca Milanesio498 views
Jenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code Review by Luca Milanesio
Jenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code ReviewJenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code Review
Jenkins world 2017 - Data-Driven CI Pipeline with Gerrit Code Review
Luca Milanesio1.1K views
Stable master workflow with Gerrit Code Review by Luca Milanesio
Stable master workflow with Gerrit Code ReviewStable master workflow with Gerrit Code Review
Stable master workflow with Gerrit Code Review
Luca Milanesio1.9K views
Gerrit Code Review Analytics by Luca Milanesio
Gerrit Code Review AnalyticsGerrit Code Review Analytics
Gerrit Code Review Analytics
Luca Milanesio3.9K views
Zero-Downtime Gerrit Code Review Upgrade by Luca Milanesio
Zero-Downtime Gerrit Code Review UpgradeZero-Downtime Gerrit Code Review Upgrade
Zero-Downtime Gerrit Code Review Upgrade
Luca Milanesio3.4K views
Speed up Continuous Delivery with BigData Analytics by Luca Milanesio
Speed up Continuous Delivery with BigData AnalyticsSpeed up Continuous Delivery with BigData Analytics
Speed up Continuous Delivery with BigData Analytics
Luca Milanesio1.1K views
Devoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery Analytics by Luca Milanesio
Devoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery AnalyticsDevoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery Analytics
Devoxx 2016 Using Jenkins, Gerrit and Spark for Continuous Delivery Analytics
Luca Milanesio1.3K views
Gerrit is Getting Native with RPM, Deb and Docker by Luca Milanesio
Gerrit is Getting Native with RPM, Deb and DockerGerrit is Getting Native with RPM, Deb and Docker
Gerrit is Getting Native with RPM, Deb and Docker
Luca Milanesio3.2K views
GerritHub.io - present, past, future by Luca Milanesio
GerritHub.io - present, past, futureGerritHub.io - present, past, future
GerritHub.io - present, past, future
Luca Milanesio8.2K views
Gerrit jenkins-big data-continuous-delivery by Luca Milanesio
Gerrit jenkins-big data-continuous-deliveryGerrit jenkins-big data-continuous-delivery
Gerrit jenkins-big data-continuous-delivery
Luca Milanesio1.7K views
Gerrit Code Review with GitHub plugin by Luca Milanesio
Gerrit Code Review with GitHub pluginGerrit Code Review with GitHub plugin
Gerrit Code Review with GitHub plugin
Luca Milanesio15K views
Gerrit Code Review: how to script a plugin with Scala and Groovy by Luca Milanesio
Gerrit Code Review: how to script a plugin with Scala and GroovyGerrit Code Review: how to script a plugin with Scala and Groovy
Gerrit Code Review: how to script a plugin with Scala and Groovy
Luca Milanesio3.5K views
Jenkins User Conference - Continuous Delivery on Mobile by Luca Milanesio
Jenkins User Conference - Continuous Delivery on MobileJenkins User Conference - Continuous Delivery on Mobile
Jenkins User Conference - Continuous Delivery on Mobile
Luca Milanesio2.9K views
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge by Luca Milanesio
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForgeMobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge
Mobile Application Lifecycle with Jekins, Trello and CollabNet TeamForge
Luca Milanesio7.6K views
GitBlit plugin for Gerrit Code Review by Luca Milanesio
GitBlit plugin for Gerrit Code ReviewGitBlit plugin for Gerrit Code Review
GitBlit plugin for Gerrit Code Review
Luca Milanesio12.1K views

Recently uploaded

Ransomware is Knocking your Door_Final.pdf by
Ransomware is Knocking your Door_Final.pdfRansomware is Knocking your Door_Final.pdf
Ransomware is Knocking your Door_Final.pdfSecurity Bootcamp
81 views46 slides
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...ShapeBlue
105 views15 slides
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Safe Software
373 views86 slides
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava... by
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...ShapeBlue
74 views17 slides
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOsPriyanka Aash
103 views59 slides
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda... by
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...ShapeBlue
93 views13 slides

Recently uploaded(20)

Setting Up Your First CloudStack Environment with Beginners Challenges - MD R... by ShapeBlue
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
Setting Up Your First CloudStack Environment with Beginners Challenges - MD R...
ShapeBlue105 views
Igniting Next Level Productivity with AI-Infused Data Integration Workflows by Safe Software
Igniting Next Level Productivity with AI-Infused Data Integration Workflows Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Safe Software373 views
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava... by ShapeBlue
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
Centralized Logging Feature in CloudStack using ELK and Grafana - Kiran Chava...
ShapeBlue74 views
Digital Personal Data Protection (DPDP) Practical Approach For CISOs by Priyanka Aash
Digital Personal Data Protection (DPDP) Practical Approach For CISOsDigital Personal Data Protection (DPDP) Practical Approach For CISOs
Digital Personal Data Protection (DPDP) Practical Approach For CISOs
Priyanka Aash103 views
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda... by ShapeBlue
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
ShapeBlue93 views
The Power of Heat Decarbonisation Plans in the Built Environment by IES VE
The Power of Heat Decarbonisation Plans in the Built EnvironmentThe Power of Heat Decarbonisation Plans in the Built Environment
The Power of Heat Decarbonisation Plans in the Built Environment
IES VE67 views
State of the Union - Rohit Yadav - Apache CloudStack by ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue218 views
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online by ShapeBlue
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
ShapeBlue154 views
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ... by ShapeBlue
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...
ShapeBlue114 views
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue by ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
2FA and OAuth2 in CloudStack - Andrija Panić - ShapeBlue
ShapeBlue75 views
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O... by ShapeBlue
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
ShapeBlue59 views
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue by ShapeBlue
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlueCloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue
CloudStack Managed User Data and Demo - Harikrishna Patnala - ShapeBlue
ShapeBlue68 views
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ by ShapeBlue
Confidence in CloudStack - Aron Wagner, Nathan Gleason - AmericConfidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
Confidence in CloudStack - Aron Wagner, Nathan Gleason - Americ
ShapeBlue58 views
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ... by ShapeBlue
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...
Backroll, News and Demo - Pierre Charton, Matthias Dhellin, Ousmane Diarra - ...
ShapeBlue121 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu287 views
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc130 views
DRBD Deep Dive - Philipp Reisner - LINBIT by ShapeBlue
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBIT
ShapeBlue110 views
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue86 views

GerritHub a true Gerrit migration story to v2.15

  • 1. 0Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 0 Migrating to Gerrit 2.15 A success story by GerritHub.io Luca Milanesio Gerrit Code Review Maintainer GerritForge
  • 2. 1Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 1 About GerritForge Founded in the UK HQ in London Committed to OpenSource
  • 3. 2Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 2 About GerritHub.io • 5 years of activity • 37k Gerrit projects hosted • 16k monthly active users • 300+ organizations • 99.9% availability
  • 4. 3Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 3 Multi-master / dual-site Gerrit setup OVH - Canada Hetzner - Germany
  • 5. 4Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 4 Challenges when upgrading to 2.15 1.Zero-downtime 2.Accounts migration 3.NoteDb migration 4.Replication to GitHub
  • 6. 5Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 5 Challenge #1 zero downtime OVH – Canada (v2.14) Hetzner – Germany (v2.14 è v2.15 online reindex) Incoming traffic
  • 7. 6Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 6 Challenge #1 zero downtime OVH – Canada (v2.14) + readonly plugin Hetzner – Germany (reinit v2.15) Incoming traffic replication
  • 8. 7Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 7 Challenge #1 zero downtime OVH – Canada (v2.14) + readonly plugin Hetzner – Germany (delta-reindex v2.15) Incoming traffic replication
  • 9. 8Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 8 Challenge #1 zero downtime OVH – Canada (v2.14 è v2.15) Hetzner – Germany (v2.15 on ReviewDb) Incoming traffic
  • 10. 9Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 9 Challenge #1 zero downtime OVH – Canada (v2.15 delta reindex) Hetzner – Germany (v2.15 on ReviewDb) Incoming traffic replication
  • 11. 10Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 10 Challenge #2 accounts migration Accounts table (DB) All-Users (repo) accounts index (lucene) v2.14 All-Users (repo) accounts index (lucene) v2.15 • All-Users getting fragmented quickly è open files explosion • accounts index misalignments in v2.14 (unnoticed)
  • 12. 11Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 11 Challenge #3 NoteDb migration OVH – Canada (v2.15 / ReviewDb) Hetzner – Germany (v2.15 ReviewDb è NoteDb) Incoming traffic replication
  • 13. 12Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 12 Challenge #3 NoteDb migration OVH – Canada (v2.15 restart with NoteDb cfg) Hetzner – Germany (v2.15 NoteDb) Incoming traffic replication
  • 14. 13Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 13 Challenge #3 NoteDb migration OVH – Canada (v2.15 NoteDb) Hetzner – Germany (v2.15 NoteDb + readonly) Incoming traffic replication
  • 15. 14Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 14 Challenge #3 NoteDb migration OVH – Canada (v2.15 NoteDb) Hetzner – Germany (v2.15 NoteDb) Incoming traffic replication
  • 16. 15Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 15 Challenge #4 replication to GitHub NoteDb = refs (w/ ReviewDb) + Num (changes) Git push to GitHub = HTTP Status 500 (boom !)
  • 17. 16Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 16 Poll: did you have similar problems? Image from: http://cypp.rutgers.edu/ru-voting/political-information/public-opinion-polls/
  • 18. 17Gerrit User Summit 2018 – Palo Alto CA GerritForge.com 17 Wants to know more? GerritForge.com/contact