So I'm going to present a joint work with Markus Lorei from the University of Leipzig and My talk is going to be about the model checking problem. So in general the model checking problem can be stated as follows so if you have a class of structure C and a logic L Then you're given a structure S in this class and a formula phi in the logic and you ask whether The given structure satisfies the formula This is basically The combined complexity of the model checking problem One can also ask the question whether For a fixed system So if you in advance fix a system and you're only given a formula then you would like to answer the model checking problem This is the so-called expression complexity and then you can do the same Vice versa where you fix the formula and you have the structure as input then you Have the data complexity of the model checking problem So in this talk, I'm going to consider so the the class of structures that we're going to consider are in general infinite and All well all the the logics that this talk is going to be about. I mean the slides are going to be about our formula fragments of monadic second-order logic and Yes, so the L theory So if you have a logic L the L theory of a structure is basically the set of all formulas that satisfy The given structure so you fix the structure and the theory of the structure is the set of formulas that satisfy it okay, so first of all I would like to give some examples of infinite state systems and Come to grant rewrite systems. These are the classes that we have studied So first of all I would like to recall pushdown systems So and there are different definitions of pushdown systems This is the one that is perhaps the most suitable for for the setting So a pushdown system is a finite object. It is give basically a finite set of rewrite rules So you have finite words I denoted them by you and V and you have a finite set of rewrite rules the left-hand side and the right-hand side are both finite words and Yeah, and what you do with them so They induce an infinite transition system and the set of states of this infinite transition system are basically the set of all words and So the set of all finite words and when can when can you go from one word to another word? Well, it's basically prefix rewriting. Okay, so if you have a rule saying You goes to V by the label L then you have an edge from UW to VW for all suffixes W Okay, so this is prefix rewriting and pushdown systems are very established class of infinite structures and so I guess Most of you know this class and I would like to now define the ground tree rat systems They can be defined as a little extension as a as the same kind of extension as pushdown systems But you just replace a finite words by finite trees Finite ranked trees so what is a ground tree rewrite system instead of having finite words you have a finite set of Rules where the left-hand side and the right-hand side are both finite ranked trees such as the following ones for example So I assume you have a ranked alphabet saying that a is a binary as a unary symbol B is a binary symbol and the symbol C is a Nullary symbol then the left-hand side is a tree over this alphabet and the right And the the tree on the right-hand side is also this alphabet and again What are what what is the infinite graph that is described by such a finite for formalism? Well again this the set of vertices of a set of all finite trees and when can you go from one tree to another well you just You you you take a huge tree and you find a subtree that that matches the left-hand side of some rule You apply this rule and you replace this subtree By the right-hand side of the rule so you do this exactly once okay, not not for all occurrences of it of the subtree the number of leaves is the right hand Yes the bottom yet, it's not it's so basically as for words it's the prefix basically starts at the bottom Yeah, so it's like bottom bottom rewriting Okay, let me give an example of a of a ground tree rewrite system. So the system is the set of finite rule the finite set of rules assume we have Nullary symbol X and we have a unary symbol X prime and assume the following rule that is basically leaf rewriting So this is this rule rewrites a leaf X to a tree of size of size one of size two X prime goes to X and the same you do with Y Okay, so another question is what? What is the infinite transition system that is induced by this finite set? Assume we have an additional you binary symbol, okay, let's call the binary symbol Z So let's look at this tree here. So this is the initial state. Let's go. Let's assume. This is the initial state So Z XY so we have a root where Z is we have a we have two children X and Y and Now the question is from this initial state What are what is the the infinite graph induced by those two rules? Well, first of all you can apply the first rule. So you go to some new state. So The new state would be So you start with Z X and Y and then you go with with X you go to Z X prime X and the right-hand side is left alone and this Is untouched and basically this this This note here basically corresponds to to this word for to this tree and if you apply the other rule you get to go to another to the Same tree, but where the Y is expanded and if you apply this rule on and on you basically get the infinite tree Ah, sorry the the infinite grid, sorry and it is well known that the infinite Grid has an undecidable MSO theory. So we know that there is already a fixed ground tree, right? Graph whose MSO theory is undecidable Okay So let me recall what is known about ground tree at systems So first of all as we just saw They do not have a decidable MSO theory in general and this lower bound basically already holds for a CTL So basically, what is the intuition if you have a if you have a Already with a CTL formula you can express basically you can express The run of a of a two-counter machine basically you have two two branches like these two and with a CTL formula You can express the that those two branches communicate Okay, so but what is known on the on the positive side? So if they if you're given a regular set of Trees and you would like to know what are the set of trees that are reachable from the set then this set is again effectively regular and moreover The set of so you given again if you're given a set of regular trees and you would like to know what is the set of recurrently reachable states trees then this is also effectively regular from by looting and well Then there is a fragment of CTL which is decidable so if you restrict your until formulas to be let's say trivial on the left-hand side and you get these EF and EG formulas and Just from the latter two results. You can basically design while at the logic a logic EF. So Exists finally and exist globally such that this logic is decidable has a decidable model checking problem Okay Then it is well known that the first-order theory of Grantry rewrite graphs is decidable and this was shown by a douche and he saw by agree by a tree tree automata techniques, but these up the upper bound is Well decidable by a tower of exponentials Okay, on the other hand one can see decidability of ground tree of the first-order theory of ground tree rewrite graphs by the fact that they are tree automatic so Since they are tree automatic it follows from result but looms are that their first-order theory is decidable more over their First-order theory plus reachability is decidable So if you if you looked at ground tree write graphs and haven't have a reachability relation as a plug in predicate then The first-order theory is also decidable Okay, but on the other hand it is easy to it's clear that they have unbounded degree. So the degree Of these graphs is finite, but unbounded So the reason why I'm mentioning this is basically because there is a result that says okay if the if the if you have a tree automatic graph and Which is additionally has bound a degree then the first-order theory is elementarily decidable But in our setting basically these graphs do not have the property to be bounded Therefore one needs a different approach to decide the first-order theory in elementary time Okay so to so our main result is basically that the first so the First-order theory of grantry write graphs is complete for this complexity class a time so Two to the polly end and so it's basically the set of all problems solvable by an alternating Turing machine running in this time double exponential time, but Whose a number of alternations is Polynomally bounded so such a Turing machine if I allow this Turing machine to run in two full exponential time Then the number of alternations could be two full exponential, but if we restrict this to polynomially many alternations, then you get this complexity class and this is Natural complexity class it has complete problems So on the one hand we show that if both are of both the system and the formula as part of the input Then the model checking problem can be solved in this complex isn't this complexity class so and the the concrete polynomial is well is the linear number of alternations that is not that surprising since the number of alternations is basically the depends on the formula only and But the the running time is two-fold. Yeah, two to the two to the n where n is the input size So the upper bound is basically for the combined complexity and the lower bound we show for a fixed grant rewrite system So there is already a fixed grant rewrite system whose first order theory is hard for this complexity class under lock space reductions Okay, so we're in this talk. I'm mainly going to focus on the upper bound Perhaps it is worth mentioning for this complexity class that Pressburg arithmetic, so the first order theory of natural numbers with addition is complete for this class It's known to be complete for this class. So the model checking problem for granted systems With respect to first order sentences is has the same complexity Okay, so let me Mainly talk about the upper bound so So let us assume we have a grant rewrite system given and the formula phi. So we call this Grantry units system. This is the finite object But let's call G the induced graph and let's assume that phi is the first order sentence Then we're going to solve them model checking problem in two steps So basically in the first step we compute a letter rewriting system This is a notion that is well, I just call it this way for this talk. Yeah, just do I hope it's it is the right choice and So I we define a letter rewriting system so we go away from the tree read systems you go to a letter rewriters and I'll explain this in a minute and But the the size of the resulting letter rewrite system is doubly exponential in the original input size and we Modify the the input first order formula By to a formula phi prime such that the following holds well our initial problem our initial graph Satisfies the formula if and only if the Computed letter rewrite system satisfies the constructed formula by prime and in a second step we solve the model checking problem for this For this resulting letter read system by using standard techniques Okay, I'm mainly I'm going to talk about the the first step in the this translation Okay so What is first of all? What is a letter rewrite system? It's very simple object. You have a finite alphabet. You have an binary relation on this finite alphabet and Now this again induces an infinite transition system. What what is the infinite transition system it Consists the vertices consists of all words over this finite alphabet And when can you go from one word to another word?  Okay, very simple we might exist and I denotes the resulting infinite transition system by well, I Should call this s prime. Sorry. This is the graph s prime well consists of all words and the given letter rewriting So one thing that our translation does a thing that our translation will do We're gonna compute a concrete a letter rewrite system and what is the set of all letters in This computed letter rewrites system while it consists of the set of ranked trees of We have a grant you a system so we can define the set of all ranked trees of exponential size, okay? That's all you should remember So in but concretely, it's it's the size of the grant rewrites system times four to the quantifier rank of the formula But just think of we compute a finite alphabet consisting of all small trees small is exponential Okay Then now so this set is basically doubly exponential. They are doubly exponential many trees of exponential size Okay, so we have a doubly exponential big alphabet and with this and this is the alphabet that we're going to consider This so and on these trees basically so basically on these letters You can you can define the letter rewrite systems the complete letter rewrite system Okay good, so so let R be the quantifier rank of the formula and The intuition is basically that if you have a formula that has quantifier rank I So it's a smaller quantifier rank then such a formula then can cannot touch any tree of size The size of the ground to that system times four to the I So what I mean if you have a if you have a huge enough tree Then a formula cannot touch the tree and cannot touch the know the leaf of a tree Just because the tree is too big. That's as simple as that Okay, so again, let me recall that this alphabet that we're going to talk about is gamma and It consists of the rank trees of exponential size and on this Finite set we're going to define two subsets so we have Exponential big trees we're going to define small trees and medium trees Okay So for each quantifier. Well, you can choose for each quantifier rank. You did we did basically define the set of all small trees the small trees are of size at Most size of the ground to that system times four to the I okay. These are via small trees And what are medium trees medium trees are trees that are not small but Look as follows. Well, you have a you have a Root and below you all you only have small trees But the resulting tree is not small okay, you can have at most to give exactly one symbol here and The whole tree is not small. So it's a bit bit bigger than small. Okay Okay, so we have The exponential trees and we have two subsets the small trees and the medium trees So let's assume our given Formula phi is as follows with in pre-nix normal form Okay, and we're going to construct. I promise to give a new formula phi prime And now the question is how does this formula phi prime look? well, it's Phi prime is just the homomorphic translation of phi, but the quantifiers are relativized So instead of talking about the original formula talks about the existence of trees Yes, there exists a tree such that something holds the resulting formula phi prime talks about over words, right talks about Properties over the words in the word in the letter rewrite system But I Additionally restrict those quantifications to only quantify. So if I have a quantifier qi X I then I restrict this quantifier to only range over the small trees so the one letter words it's a lot one letter word or Some word Where exactly one letter is a medium tree and the rest of the the prefix and the suffix are basically small trees okay, and Additionally, I can talk about the neighborhood if I already have quite if I already have quantified some some elements Then I can talk about the neighborhood of these elements Yes, so the lemma so I'm not going to talk about the proof the whole proof But I just want to give you a rough intuition so we the original quantria to quantry read system satisfies the formula even only if the letter read systems satisfies the modified formula so the proof sketches basically by a n-phrase arguments so assume you have you have Already selected in the in the n-phrase game. You have already selected some words in the letter rewrite systems but those words we require to have That that they satisfy this local Neighborhood property that just talked about yes so either small trees or these small trees medium small trees or in the neighborhood and Assume that we have so a partial isomorphism from the words that were selected in the game and to some trees that are selected in the infinite system then and This neighborhood talks about well about a neighborhood of a certain radius namely four to the I plus one and the claim is that this Well, this election of nodes can be extended in the next step So can be extended to a further partial isomorphism for any move of spoiler But whether neighborhood is well, it's become smaller Okay, you divide the neighborhood before you had a neighborhood of four to the I plus one and now you want to have a smaller neighborhood of Four to the I So how does the game work? So what how can we what is the the intuition behind the reduction? So assume spoiler chooses so I'm only going to talk about the trend the the step from the ground the under the assumption that Spoiler makes a move in the ground tree right system and now the question is how does duplicator? Respond in the letter rewrite system. So assume that spoiler chooses some tree in the I round in the ground tree right system and The first assumption is assumed that The chosen tree is already close to a tree that has already been selected before close in a certain in the sense that it isn't in this radius Three times four to the I so just assume is the total the chosen tree by by spoilers close to the already chosen trees Then one can show since one this extended isomorphism the partial isomorphism only has to talk about the the neighborhood of size four to the I that the partial isomorphism can be extended in such a way that you just apply it the the same choice as Since that since the tree is not far away one can choose the The same strategy as as given by the induction hypothesis so now the question is what what happens if Spoiler chooses a tree that is far away from all previously chosen trees So assume that the tree is not in it four times three times four to the I neighborhood Well, then we make a case distinction. Is this tree small or is the tree big in case that the chosen tree is small? well, then well, then it is small then we just Then duplicate a response by a small tree by one letter. Yeah, I promise that it has to be a letter or so the response has to be either a small tree or and small a sequence of small trees and one medium tree and Then a sequence of small trees again in this case when Spoiler chooses a small tree already then I can answer with a small tree, but what happens if spoiler answers with well starts the game with With a tree of bigger size. Well, then if you if you have a tree of that is bigger than S times four to the I Then you know That there's a lead at least one place in this in this huge tree That is not small Okay, and this occurrence this exists this occurrence we call this occurrence of a subtree that is not too well That is that violates being small. We call this subtree. It's it's rooted somewhere at age age is some symbol and We have the subtree that is not small, but it's medium and Then we additionally select on all we do the following go We select maximally big sub trees that are small Okay, and now how does the the spoiler? Respond And the duplicate how does it how does he respond? Well, you just collect all those small sub trees you put here the medium tree and All the remaining small trees, so he he responds by a sequence of Trees where all of them are small except for exactly one so in this way we showed that you can reduce the Model checking problem for ground tree that systems to an two-fold exponentially bigger Laterary right system Let me come to the lower bound So the low bound is that there is already a fixed ground tree that system or ground tree at graph whose first order theory is hard for The complex the complexity class to to the poly n with polynomial number of alternations Well instead of proving hardness for this complexity class We just let me just sketch the proof for the two next time lower bound So for the two next time lower bound there Assume some tiling problem. Okay, assume some fixed tiling problem such that's deciding the following question You're given an initial coloring of the tiling So you've given an initial coloring of the first the lower parts of the of the tile And the question is whether you can expand this this given coloring to a 2 to the n times 2 to the n tiling I Want to yes, then The point is that there is already a fixed tiling system for which this is too next-time hard and the fixed ground tree At graph will depend on this fixed tiling system So what is the intuition? Well This is the grid The 2 to the n times 2 to the n grid and then there's one point ij and we're going to represent one point in this two-fold exponential big grid by such a tree such a tree is Exponentially big and at the leaves you have a zero zero zero zero zero ones and this tree basically represents a by well a Binary number and this binary number Should encode this i and j so one such a tile tree corresponds to one position in to one point in this grid and now What what do we now want to define what we want to define grid trees what are grid trees? They are just huge trees such that each small subtree is a tile tree Okay, and Additional what the local the local properties hold that are given by the tiling system So a grid tree is a small Well, it is a huge tree such that all small subtree are tile trees Each grid element appears exactly once you don't we don't want to talk about more than one Good element exactly one and it satisfies the vertical and horizontal matching relations Okay, and then Alema shows that you can define over a fixed grant read system that basically modifies modifies little sub trees of such a tile tree So one can come up with a with a first for first order formula. That is not too big big that can talk about the existence of a grid tree that satisfies the initial coloring okay, and Asking whether the initial coloring can be extended to a bigger coloring just boils down to asking for the existence of A grid tree that satisfies the initial coloring Okay, so I would like to conclude with Well, one further lower bound. It's basically so if you do the following little extension if you and This I claim that there's already a fixed grant rewrite graph But with a unary predicate that is given by a regular tree language And then the first order theory is non elementary. So there's already a fixed grant read system With a fixed regular language such that the first order theory is non elementary You can think of it the intuition is basically that this fixed Regular tree language can simulate basically the computation of a of a bottom-up tree automaton and therefore you can easily Reduce from the satisfiability problem Over finite words for first order logic as An interesting and perhaps a bit ambitious open problem, but it's the following So it's the by simulation It's the following problem decidable given two grant rewrite graphs Are they by similar? Yeah, so there is currently not known to be decidable the best known lower bound is extra time and Which also corresponds to the same lower bound for push-down systems, but there's nothing known Okay, that's all thanks for your attention


Hello, everyone. Today, Xiangqian and I will give a deep dive on Kubernetes data protection working group. My name is Xin Yang. I work at VMware in the Cloud Native Storage team. I'm also co-chair in Kubernetes 6 Storage and the co-chair in the data protection working group working with Xiangqian. Hello, everyone. My name is Xiangqian Yu. I work for Google as a software engineer around the Cloud Storage department. I also lead the group with Xin. Thanks, Xiangqian. Here's today's agenda. First, we will provide key updates. We will talk about who are involved in the data protection working group, what is our motivation. Xiangqian will give a deep dive of the change block tracking proposal. And finally, we'll talk about how to get involved. We have published a white paper on Kubernetes data protection workflows.  We also have annual reports. Those are in our community repo. And here we also provide links to our previous KubeCon talks. There are many companies who are involved and are supporting this data protection initiative. So we have them listed here. So let me talk about motivation for this working group. In Kubernetes, the DevN operations for stable workloads are well supported. There are persistent volumes, persistent volume claims to support the voting operations. There are workload APIs such as default set, deployments for declarative management of your workloads and the components of those workloads. According to the 2022 report by the data on Kubernetes community, more and more stable workloads are moving to Kubernetes. This includes different types of workloads such as database applications, analytics, AI machine learning, streaming and messaging and so on. They move to Kubernetes because they need to have a rapid iteration and agile deployment. They want to be able to have built-in scalability which can be provided by Kubernetes. And they also want to be portable. So all of those can be facilitated by Kubernetes. On the other hand, data operations for stable applications such as protection, data protection are still limited in Kubernetes. GitHub's workflows has limitations for supporting stable workloads. For example, secrets and config maps cannot be stored in Git and data stored in the persistent volumes cannot be stored in Git either. So we need to have a better way to support data protection for the stable applications. Data protection in Kubernetes refers to the process of protecting valuable data and configs of applications running in a Kubernetes cluster. The result of the data protection process is typically called a backup. When unexpected scenario happens, for example, data corruption by malfunctioning software or data loss due to a disaster, such a backup can be used to restore the protected workload to the states preserved in the backup. In Kubernetes, a stable application contains two primary pieces of data. The first piece of data is Kubernetes metadata. It's a set of Kubernetes resources stored and managed in the EDCD database and accessible through Kubernetes APIs. And the second piece of data is persistent volume data. Kubernetes has the persistent volume claim API to allow users to provision persistent volume for user workloads. Persistent volume data will be managed and stored on the underlying storage system. Data production aims at providing backup and restore of the above mentioned two pieces of data. Part of the data production, one group's charter is to define and implement a list of Kubernetes native constructs to enable backup and restore at different levels. This figure shows the backup workflow with existing and missing building blocks in Kubernetes. The blue color shows the process. The green color represents the existing Kubernetes components. Yellow means working progress and orange means missing Kubernetes components. To backup an application in Kubernetes, we need to backup two pieces of data. As mentioned earlier, the first one is the Kubernetes metadata. And the second one is the data stored in the persistent volume. There are two ways to backup the volume data. You could use native data dump, such as MySQL dump, or you could use the controller coordinated approach where a volume snapshot is created to ensure application consistency. The application should be co-used before taking the snapshot and unco-used afterwards. The backup of both Kubernetes metadata and the volume data will be exported to a backup repository. A backup repository is a location or repo to store the data and the metadata. This can be an object store or NFS or other type of storage. It could be in a cloud or on-prem location. We have a few components here that are green. There are existing features in Kubernetes. We have six apps owned workload APIs, such as Staplesat. We have one snapshot that has been GA since 1.20 release. We also have a few alpha features. Cozy container object storage interface introduces a set of Kubernetes APIs to allow object buckets to be provisioned and accessed by the parts. There is also a set of GRPC interfaces so that a storage vendor can write a driver to create object buckets in its object storage backend. Cozy can be used together with a backup repository. Consistency group snapshot is another alpha feature introduced in 1.27 release. Sometimes application consistency may not be possible or maybe too expensive. An application may require the snapshots from multiple volumes to be taken at the same point in time for crash consistency. This feature introduces Kubernetes APIs to create a consistent snapshot of a group volumes. Another existing feature is volume mode conversion. When creating a PVC from a volume snapshot, a user can change volume mode from file system to draw block. This can introduce potential vulnerability to kernel. On the other hand, volume mode conversion is needed for efficient backup workflow. To solve this problem, we introduced the prevent unauthorized volume mode conversion feature. We added a source volume mode field in the volume snapshot content. Volume mode conversion is only allowed if an annotation called allow volume mode change is added on the volume snapshot content. If the annotation is not there, a request to create a PVC from a volume snapshot with the volume mode change will be rejected. This feature is a beta since 1.27 release. In the upcoming 1.29 release, we are going to enable the feature flag to true by default in the external snapshotter and external provisioner. So for any application that relies on this workflow, action is required. You must update your application accordingly. Otherwise, your application will fail. We have the change block tracking in a yellow box here. This is the feature that the data protection or in group has been actively working on. Xiangqian will give a deep dive about it later. Now let me talk about the restore workflow with existing and missing building blocks in Kubernetes. During application restore, we need to import backup from the backup repository. Restore Kubernetes metadata and restore PVC and PV. If the volume was backed up natively, we need to restore from the native data dump. Otherwise, we need to rehydrate PVC from the volume snapshot or volume backup. Here we have another beta feature called warning populator. That is very useful during restore. It allows you to create a PVC from an external data source, not just a volume snapshot or another PVC. This also supports the beta for first consumer warning binding mode. Warning populator makes sure a PV is created and populated with data from the external data source, such as a backup, and binds with a PVC. So that's all I have for the restore workflows.  Thanks, Xiangqian. So, okay, let's get started. So what exactly is change block tracking? From the community's perspective, it's nothing but a set of interfaces which allows backup applications or any other related features to retrieve a set of changed block on a storage device between arbitrary to snapshots against the same volume. So there are some key things over here. One is a set of interface. Secondly, it operates on snapshots of the same persistent volume, which means that you cannot use this API to operate against different persistent volumes. Snapshots for different persistent volumes. So the purpose of that is to utilize in the underlying storage systems capability to efficiently calculate those changed blocks for backup purposes or for replication purposes. Now, if you look down the two graphs underneath the, sorry, the graph underneath the inner sides, in a simple way, let's assume there's a volume with nine blocks or labeled with one to nine. So at time one, you take a snapshot and that's exactly what the data will look like on your disk or on a persistent volume. After some certain time, you take another snapshot as they take T2. And this moment, those ones marked as red color has been touched by the application, meaning that there will be changes to those blocks. And the purpose of these interfaces to efficiently return you the changed blocks indexes 2689. Now you can think about that way. It's not the purpose for this API or interface to return you the changed data content. The only thing that will return to you is the list of changed block indexes. So with that, why do we even need this? The next slide, please. The main purpose of having changed block tracking is to do backups or replication efficiently. In this context is more about backup. Why is that? Because these will enable incremental volume backup. First of all, from the space's perspective, you'll be using less space when you contact the backup because you only copy the deltas instead of the entire volume compared to the full one backup, of course, to the destination. In this case, let's assume your change rate is about 10% that you are talking about. In between two snapshots, you only copy 10% of the data. The second thing is actually, it may greatly reduce network bandwidth requirements. Why is that? Simple, right? Less data to transport than less bandwidth requirements. And the consequence of it, you can lower your RPO. In mind, not necessarily, sorry, it might increase your RPO a little bit because during the restoration, you need to kind of replay all the changed blocks from in between arbitrary two snapshots. But for RPO's perspective, since there's less data to transmit and it's incremental, it can actually effectively reduce the RPO. So that's one. The other main purpose is there's so many storage systems in this world, right? So enterprise storage arrays and the cloud provider storage systems, et cetera, et cetera. So backup systems in general do not want to have customized solution for every single one of these storage systems, rather than they want to deal with the one set of generic interface, right? That effectively couples the backup system or the replication system from the storage system. Of course, there are other considerations backup team or backup applications can use. They can use full backups which they will suffer in performance and they will be less efficient in space, et cetera. They may choose to couple with the storage system just for the sake of utilizing more advanced features from the storage system, et cetera. And that also opens those tools like a Rustic. Rustic is storage system mechanistic. It calculates the changed blocks by itself. The main benefit is that for backup systems to utilize Rustic is to, they don't need to worry about how, what is exactly the underlying storage system, but it leaves utilizing the underlying storage systems efficiency, an efficient way of calculating changed blocks not too possible because Rustic does the calculation by itself. So moving on to design principles, right? So we have a couple of goals and non-goals. Next slide, please. The main goals here is to utilize in CSI for the interface for change block tracking. That allows, remember, one of the main things we want to achieve is actually decoupling the backup system from the storage system. So using CSI is a standard interface. So that has nothing to do, it's independent to the underlying storage system. The second goal is we have to meet Kubernetes security standard, it cannot be worse. And the third thing is to, we have to avoid overloading API server. Why? Because the amount of metadata per, for persistent volume to present the changed list of blocks is tremendous. So we estimated about five gigabytes of metadata per one terabyte of persistent volume. And we all know that API server is actually one of the non, bottlenecks of the Kubernetes cluster. Of course, there are a couple of non-goals. So data accessing interfaces for change block, it's not in the consideration because it's so related to the underlying storage system and to the backup system. As I said, when the interface returns, it returns only the indexes of the blocks. It does not return the data content on those blocks. And there's another no-goal, which is to keep track of changed files. This is typically, RESTIC does provide that. And some of the storage systems does provide that, basically view the catalog of file changes based off of block changes. This is not the goal of this community to provide such a functionality in the change block tracking network. So talking about goals and non-goals, let's go through some of the difficulties we went through during the design. Next slide, please. The first block we hit during the process is whether we have the APIs or interfaces as imperative versus declarative. So as all you know, the Kubernetes resource model is all declarative. So basically you define your YAML, your CRD, and you store the CRDs in the API server. There's a reconciler, keep on reconciling on that. The community took that route initially and utilizing CRD plus aggregated API server. However, due to massive metadata, there will be massive that metadata needs to be served, especially the scenario is especially bad for the first change block tracking because for the first backup you do, you literally just back up the entire volume. And that imposes huge risk of overloading the API server and thus get rejected. The current thought is to provide imperative interfaces. So instead of providing CRDs and utilizing API server as a data serving pass, we'll be providing GRPC interfaces that allows softwares like backup systems to interact to get the data out. That's one. The second thing is how do we hide heterogeneous storage systems that is available to Kubernetes community, right? So the answer seems to be pretty straightforward is to define the interfaces in CSI and then there's a little caveat over here is that we need to define a community-maintained GRPC service in front of the CSI interface. I explain why we did this in the next slide. So from the storage systems perspective, they implement the CSI driver and from the community's perspective, we provide the GRPC service which provides generic GRPC interfaces for a backup system to use. And lastly, we need to be able to meet the security standards. Actually, that's the main reason why we need to hide the CSI interface and instead provide a community-maintained GRPC service because we need to do good amount of OS N and Z for across all the kinds that try to utilize this feature. Moving on to next slide, please. I'll go through some very high-level detailed designs. So all the way on the left side is the backup system or anything that will be utilizing this feature and the right-hand side will be the core components. So there will be in total seven steps before the backup system or any client can actually obtain the change list based off of the two different snapshots. So the backup system initially tries to talk to the API server where the token request API to obtain an off-end token. What is contained in this off-end token is actually the identity of the backup system. It can be your service account or if you're a cloud provider, it can be your cloud service accounts or some identity that you plug into the Kubernetes cluster. Then the backup system, after it obtains token, it includes the token to call the generic interfaces we provide as a DRPC service. It's called getData or getAllocated. There's some differences between these two core. I will not dive deep into these other differences. This is where the TLS connection to the service directly. And once the metadata service, which is the community maintenance service, DRPC service, which requests the call from the client, it retrieves the token from the request and to do a token review against the API server. That way, the metadata service knows who is calling from. And this token review will basically say, oh, this is actually authorize a user in Kubernetes cluster to use my service. And once this passed, the metadata service knows who exactly this request is sent from. And then it does an OSD, we are subject review. Why OSD here? Why we need to do this here? This is to validate the service account of whoever is calling the DRPC interface has access to the snapshots it provides. So basically, this is nothing but validating whether there exists an RBAC in the system, grants that particular user the permissions to access the snapshot into information. Of that is done, the metadata service will go to talk to API server again and obtain the Worm Snapshot IDs from the system. That is stored in the Worm Snapshot API and the Worm Snapshot Content API. After all this, that's the real work gets started. The Snapshot metadata cycle, which is the community maintenance cycle issues a CSI call. In this case, it's a private CSI call to the underlying storage system CSI container with the snapshot IDs provided by the client. And this is through a CSI-GRPC call where the domain socket. Once this is done, the metadata cycle will wrap the request together in the format it provides in the public interface and then return the changed block list to the backup system. And this whole thing identifies an entire workflow from very high level, how step-by-step change block tracking, a change blocks can be retrieved from two snapshot IDs. And the green line stands for API server calls from the controller or from the client. And the red line stands for GRPC interactions between different systems. So this is just a high level with that next slide space. And in reality, this is what exactly it looked like. You probably won't be able to read the image from this diagram, a huge call out to folks who work dedicated on this, Carl, Prasad, and Elon, et cetera. This is still stolen from their sites that they presented to the community in our data protection working group meetings. With that, let's conclude to the status of the current project. The dev team is mainly composed by Ivan, Prasad, and Carl. They've been spending a lot of effort on this thanks to them. And the debris socket right now is alpha in Kubernetes in 1.29. Current status is the cap is under review. Both the cap and actually the new CSI, it's under review right now. And they have also provided the POC as a prototype that I put the link right there. That's all I have for change block tracking. So if you want to get involved, next slide space, please feel free to with the homepage and get understanding what we are doing, et cetera, et cetera. They are bi-weekly meetings hosted on every Wednesday at 9 a.m. Pacific time. So there are a lot of meeting recordings available on YouTube and there's a agenda doc which will tell you what exactly will be discussed during a particular meeting at that. And we have a Google group mailing list. Get yourself subscribed to that group so that you can receive up to date updates from the group. And we also have a stack channel listed over there. And if you have any questions, feel free to communicate with us. We are any of those methods and feel free to join our bi-weekly meetings on Wednesday. Thank you, that's all I have. Thank you, bye. Bye.


What was Joey Barton like? Joey Barton? Why have you asked me that? Yeah, that's a good question I think. OK. Cos he's a famous footballer, plus he's background and wanting to know what he was like and strange ways. You know what? I'm glad you've asked me that. I never mentioned him. Let me tell you first, we had his younger brother and cousin. I think his younger brother was 18 and we didn't have 18-year-olds at strange ways and his cousin was 21. They were accused and got found guilty of killing a lad. Might have been in it and he was somewhere in Liverpool. His brother or his cousin, they believe it was his cousin but his brother took an ice-hacks to the party. Ice pick. So his brother was 18 and his cousin was 21. I've gone to sort this lad out with, he've had bother with and one of them stuck an ice pick in his head and killed him. So we had them first. His brother was not 18 in mental age. He was like a kid.  He definitely did it. They got them both for it, joint enterprise. Do you know what a joint enterprise is?  So that was his brother. So Joey Barton, he was on B-wing, drug-free ring. It's a bit of a joke aren't it, drug-free wing. It was an easy wing to work on.  They used to pick the prisoners. It wasn't drug-free, there's no wing that's drug-free.  He came into the prison. Everyone knew he was coming in, high profile footballer. This is not from our governor, I believe this comes from elsewhere. The jail, let's say the jail was told he got to be allowed to keep fit. I went on B-wing, I remember, there's a lass.  He didn't run on stairs in jail, he didn't run, you pull someone. So I shout after him, this female officer goes, it's Joey!  Joey Barton! So he got a job on the wing straight away. He sat to lad who was decent and gave him a job on the survey, on the wing. So he got to eat pretty much what he wanted. They also made him gym-orderly. Best job in strange ways for any con is gym-orderly.    Do you know what I mean? So there you go, that's Joey Barton. He had an easy life in strange ways. He was on the drug free wing, loosely speaking. He got as much gym as he wanted, pretty much what he wanted. Was all right any grief?


Alright everybody, what is going on? Welcome back to another Rugby related video.  It seems like a big debate. I still get comments daily about this on this video. In fact, these two videos have been two of my most popular videos in my Rugby related playlist. Now, today we are settling the debate between what is a goose step and what is a skip step. Now, a skip step is only a move that certain players are going to make.  If you are not light enough, you are not even going to attempt this step. A goose step, on the other hand, is a stop start. It is a stop and go. It is a dead leg, they call it in the NFL. A goose step is a sudden, sudden burst of exhalation from nothing. That is going to leave your defender for dead, hopefully. On the other hand, a skip step is when you are at full pace. You have got a defender coming up to you, you are at full pace, you do not want to slow down. You do not want to try and do a left foot step or a right foot step. All you do is sort of hop in the air and swerve to either the left or the right. So the main thing about the skip step is that you do not lose pace. Now, in the most recent All Blacks vs. Springboks Rugby game that I saw, I saw both these steps done to absolute perfection. And that is what I am going to bring to you today. So the first step is by a guy called Seville Reese. He plays on the right wing for the All Blacks, and he does a goose step.  Advantage to the All Blacks. Mowang that, well that is one way of getting the ball to Seville Reese. Four pieces kill, this is it here from Richie Mowang. It looks to kick long, it changes his decision. And then a stop go from Seville Reese, leaves him a pimpy for dead. The second step was by the other right wing for the Springboks, believe it or not. Chislin Colby, an absolute superstar in the making, he does a skip step. I don't see nobody in my lane, it's quite go get it, like me.


goes. Number three, Tuscany, Italy. Few places celebrate the slow life or embody La Dolce Vita like Tuscany, be it exploring new hiking trails or rediscovering Cusiana Cantania, farmhouse cuisine. The new Gen Tuscan experience remains in perfect symbiosis with the land. And number four, Donegal Island. With the longest coastline in Ireland and more than 100 beaches, the northernmost Irish county is purely wild with a big heart. The high-seaf cliffs in Europe, miles of on-sport coastal hiking trails along the Wild Atlantic Way, ancient forts, musical traditions and rich heritage of the Irish language make it perfect for the curious visitor. And who did we beat out behind us in the top 10? Pasvasko, Spain, pardon my ignorance, I don't know how to pronounce that, Southern Thailand, the Swahili coast in Tanzania, Montana in the United States, Sefelden, Ljogang in Austria and the far north of Scotland. So that was the top 10. We placed fourth in there. So we're amongst good company, all right? So it wasn't, I'm not gonna say a place name, forgets you in trouble. So that was first, second, third, fourth and then I ran through the entire 10. Happy to do that for you. Can anyone explain why the cycle lane on the way out from the pole star just stops at the new pedestrian ramp? If they're expecting cyclists to dismantle and walk over that, they are seriously misguided.  I haven't seen the sort of that ramp. I presume for most cyclists, they'll be able to go straight up and over that, would they not? I don't think most cyclists will have to dismantle. It seems to have quite a low wing client. I could be wrong, going from memory. Hi, I was wondering if anyone else thinks the ramp going into Rosola and McNeely Villas is absolutely awful going in at an angle. It shakes the cars to bits. I'm not familiar with that. The traffic mayhem is the infrastructure, is designed for business and not for people. So, maybe we should do a social media poll. Is the traffic worse than that of Kenny and I than it was before the lights went on? Would you expect that the situation would be... would be resolved at this point? What about all the nice trees and bushes set in the centre merit and on the full lane? What happens when they have to close lanes to trim them back? I know what that's what they're doing at the moment. I don't... I know it's kind of pretty. I don't really get... I don't really get the logic of the trees at the middle because you have to close one lane to cut them then. How often? I don't know. But anyway, Jon's going to join us after this short break. 9122238, Sister Sirens, now sponsors of Today's Show. Always better value. Terms and conditions apply if you're confused on the extent your grocery shop of 25-year-old or more. Must end Sunday. Did you hear about Nissan's 241 offer? Wait, do you mean 241, the licence plate or two cars for the price of one? Both. If you buy a selected 241 Nissan now, in 2025, they'll replace it with a 251 Nissan for free. Wow, that really is a 241 offer. Buy a selected 241 Nissan and get a 251 Nissan for free. For details about this and all our 241 offers, contact your local Nissan dealer or visit nissan.ie. Terms and conditions apply. Nissan, innovation that excites. Highland radio time checks with Expressway. Travel Route 32 from Lettac, entity Dublin when you book online and travel for less. Expressway, bringing you the time, Matt. 21 minutes past 11. John, good morning to you. Good morning. How's it going, Greg? Not too bad. You've been out and about in letter Kenny this morning. What have you noticed? Well, there's been a major influx of these people that are supposedly begging on the streets again, the whole way from Don Stores right up to Upper Main Street here. And it appeared to be coming up now for the Bank Holiday Weekend and Christmas period. Like, it's certainly not a sort of attractive situation for people who come on to do their shopping, you know. Can you give us an idea of how many might be on the street? There's probably six or eight, maybe at this age, you know, but there are different parts of the town, like the whole way from the old Don Stores right up. And they certainly don't appear to be in any distress. They all have a blanket and they're all begging and they all have to hand out, you know. And you are confident, John, that a lot of these all came in, a lot of these individuals sort of all came in at the same time? Well, of course, they all appeared this morning. Of course, the first thing this morning, they were all chipping on the various spots around the flower baskets and around the square and around different parts that are attractive for people who come to do shops and do their shopping, you know. And you believe Gaudi should ask on this group and speak to them, find out what the situation is. I mean, why would a number of people all turn up at the same time? You believe that requires a bit of investigation to ensure that there isn't an organised thing going on here? That's all to do with the fact that we're going to bank holiday and there will be lots of people around in the next couple of days. We're celebrating Halloween and there'll be young families and, you know, they'll find that an attraction, you know, so it's probably organised to a certain extent, you know. All right, well, listen, we'll put an inquiry in Tonga to see what they will do or what they believe is going on here. We know they have taken action on this before. It might be news to them until such time as they're notified of it. But we'll see what comes from it, John, but you believe that it doesn't, it creates a bad image for Letter Kenny Main Street. And you also, by the sounds of things, John would question if these are actually people that are desperately in need of financial support. Yeah. OK, right. Well, as I said, we'll check it out with Degardy. Thanks, John. Have you spotted that yourself? 086625000. What about all the nice trees and bushes set in the centre meridian on the four lane? What happens when they have to close lanes to trim them back? Well, they have to close lanes to trim them back. Another caller says, Hi, Greg, someone texted your show less than two weeks ago about no room for ambulances. Your words, you said, I'm sure. There'll be room made for emergency services. Rewind, listen to your own words. Well, I'm not on authority on anything, by the way, just to be absolutely clear on that. And I hope I don't come across as setting myself up with that. I use this platform to, hopefully, for the most part, give people a platform to speak themselves. And also, sometimes maybe in terms of a comment, you have to, the tone kind of sets the tone for the comment as well. I.e., you would hope that you spend millions upon millions upon millions on a new road entering a town and a very complex set of traffic lights on a roundabout. You would hope, and this was what I would have intended with my comment, you would hope there would be a plan there within to accommodate emergency vehicles, be it the ungoddess you can't, or the fire service, ambulance service. So sometimes I wouldn't say the comment was made tongue in cheek, but sometimes how you position a question, a lot can be read from it in that regard. I know myself, I have great concerns about ambulance access and raised it on this program on numerous occasions when this road works ongoing and what have you. I would hope that the infrastructure of that road and the lights on the roundabout have been done and planned as such that there is a plan for emergency vehicles. We have an expert from the council on the show tomorrow to answer questions on it. One of the questions I will ask is what is the plan to accommodate emergency vehicles? Where are cars supposed to go on the four lanes? Where are cars, what is cars supposed to do on the roundabout? Because that had to surely form some part of the planning on a project like this with the main access or one of the main access routes to the hospital. So I will get that question answered for you. Hi, Greg, the Polestar should be temporary traffic lights for busy times. It just took me 10 minutes to get from Bali Rain to the Lidl. It used to take two minutes. I would have walked quicker. Well, the problem is the traffic lights when they're on at busy times, they shut down the town yesterday. I'm not sure and anyone out there, let it get a main street, the retail park in around where Corrie's is, the main street up around the roundabout there at Pennies. I didn't see what was going on there. If you were there from like, say, half four to half five was traffic moving freely? Is it just the remelton road in the four lanes where the problems are? Was traffic moving freely through and past the ATU? For an example, like, BRIs here, let us know what the story was. Maybe it's only those two routes that are affected and not the other two, if that makes sense. 086, 60, 25,000. Right, I don't have to take a break just yet. I can get to some of these comments here. I was in the ED in Ladder County yesterday from 11 a.m. until discharged at 7.30 p.m. I'm amazed at the staff there, how they work in such conditions and keep a very caring and compassionate attitude. My experience was good. Maybe I was lucky, but treated with utmost respect. Care was excellent, offered food three times while there. So thank you to all our staff. You're doing a great job under difficult circumstances. Management need reviewing. It is, it goes without saying, but maybe we need to say it. We're doing this and speak about this in support of the staff in recognition of the working conditions and the incredible work that the staff do, the same for the consultants, the junior doctors and all the secretarial staff, the people that have to answer the phones, the people that have to organise what's going on in the background. We're highlighting this to try and support them whilst also supporting the county in having a proper access to emergency services, acute services in a hospital. And make no mistake, whilst we're having this conversation, things are being done to try and improve it as well because no organisation wants this level of scrutiny. But we also understand that some things can't be fixed immediately, but certainly some things can be worked on and one would presume they are. As a diabetic and bon crana with podiatry and eye problems, it's just steady up and down the road to Sligo and Galway. No HSC podiatrist in letter Kenny either. The pump isn't an option because that would mean more trips to Sligo. I need a driver to company on all trips. Can't even claim the travel cost back against tax. Shocking state of affairs. Yes, there is a pump in Sligo, but it's a long way away for a lot of people. My husband has to travel to Sligo for dermatology as the consultant won't travel to letter Kenny. Well, a lot more people are, if they can even get an appointment. You heard that letter I read earlier on, which was incredibly strongly worded. And you could read between the lines and what was written on the lines. How long is that person gonna stick that out for? How can all these refugees afford the cars that are sitting parked outside their free accommodation? BMWs, Audi's, Merck sitting in a car park getting free buses to school? Well, a condition of fleeing Ukraine and being hosted here is not being poor. If you had a Merck, you can take your Merck, you're fleeing bombs. It's not necessarily about rich people staying in Ukraine and poorer people leave. So that's why, presumably, and there's lots of people here with Merck's that their children get school buses. So I'm not contradicting you but that would be the reason as I would see it. Okay, now there has been a lot of coverage and reports that read as follows. And I hadn't come across this and I was pretty much across most of what happened at Chrysler. And the emergency response at the time it was cross-border, it was all resources that you need, they're there for you. And I would have thought if something like I'm about to read it happened, I would have heard about that at the time. Some Northern Ireland ambulances were unable to rush to Chrysler after last year's gas, last year's explosion that killed 10 people because foreign-born paramedics on board did not have visas that allowed them to cross the border. The disclosure about the Altner-Gelvin hospital-based ambulances in Derry was made to an inquiry by the British Irish Parliamentary Assembly into the operation of the century-old common travel area agreement between the Republic and the United Kingdom. The comments came from Finnegell's senator, Emer Currie, as I say, it's the first I had heard of that and I would have expected to hear about this if this were the case. And we tried to get the senator to tell us where she got this information from. Dr. Nigel Roddle is a medical director at the Northern Ireland Ambulance Service and joins us on the programme. Now, Nigel, and I presume this has been thrust upon the Northern Irish Ambulance Service, this information, as it has us. But what can you tell us as to these claims by this senator? Well, good morning and thank you for the opportunity to come on because this is as much a surprise to us as it appears to have been to you. We were made aware of these media reports about the response to Creasley on the 7th of October and this suggestion that some of our crews were unable to respond due to these issues. We would like to put on record that our response to Creasley was not affected in any way due to border or visa issues. No one asked that for preventing and crossing the border for any reason. And to be honest, we're deeply concerned at any reports suggesting this because those comments will be deeply upsetting to the victims and families who were and still are affected by this tragedy. And I think that's a very fair comment, Doctor, but also. I think it does a disservice to the spirit of the response to that crisis, the cross-border nature of it, the fact that all gloves were off, it was all hands on deck. You really, I mean, you've described it very well there. We, I can remember the phone call coming in and returning to our control room when this was unfolding. We immediately dispatched the range of resources, including our air ambulance, our helicopter team on board, our specialist, what we call our hazardous area response team, ambulance officers, paramedics, emergency technicians and even some of our non-emergency transport crews to assist our colleagues in the national ambulance service. And in fact, later on that evening, we sent further crews as they came on for night shift to relieve the crews who had already been responding. And we were on scene well into the weekend to assist with the rescue and recovery efforts. So we're right here that we're not aware of any difficulties at all in responding this incident. We do not believe we held anybody back. And in fact, the issue of visas and border issues did not arise on the day. That being said, I'm sure you would have had knowledge in advance, not of Chrysler, but in advance and the fallout from Brexit that there could be issues. Is that something you had taken account of to minimize the impact of that as much as possible? Yes, on a number of levels. First of all, we do have a memorandum of understanding and it's been long in place with the national ambulance service to provide cross-border assistance in the event of a major incident. We have done work ahead of the EU Exit to identify a very small number of our staff who were non-EU nationalists. And we worked with them ahead of the EU Exit to make sure they had the necessary paperwork in place to allow them to continue to work on hindered. There have been queries before about the cross-border working of registered healthcare professionals, such as paramedics, et cetera. And we have a lot of discussion back and forwards with their own Department of Health and between the two governments to allow crews to respond across the border, which we do on an almost daily basis anyway, but to allow them to continue to respond across the border where there's a clear, immediate, identified humanitarian need. Okay, well, Doctor, I mean, we know the amazing collaborative response and the unfettered response as well, because we all came together at that time. And obviously, you know, and I hope you do know, we all greatly appreciate it. And I'm really pleased that you made yourself available such short notice just to absolutely clarify the situation. Well, thank you very much for that opportunity. Our thoughts are absolutely still with our colleagues, friends, and neighbours affected by this, and I know Chris live well. I would visit there often. And we have been particularly touched in the service by some of the incredibly kind communication we've had from members of the community in the aftermath of this incident. Okay, take care of yourself, Doctor. Thank you very much for your time. I do appreciate it. Okay, that's Doctor Nigel Ruddle, who is the medical director at Northern Ireland Ambulance Service. And you heard there really directly from him and in no uncertain terms that that claim has been absolutely refuted. Back with more after the break. Watch the show live now on YouTube, Facebook, and at HighlandRadio.com. It is almost the season to indulge. Secure your staff party or get together at Sister Sarah's Letter Kenny. Christmas party nights now available to book on 9-1-2-2-2-3-8. Sister Sarah's, our proud sponsors of today's show. Are you ready for unmissable magic? Are you ready for winter in Dublin? November's longer evenings when the city lights shine even brighter. Chock a block with festive fun in December. And unmissable live music and must-see events in January. That's three whole months of winter wonder just waiting for you. Get ready for the buzz of our bustling city streets. It's enchanting, unforgettable fun. Make your plans today at VisitDublin.com. Winter in Dublin, it's magic. Brought to you by Folger Ireland. New this week at home store and more. All loose cutlery and all cutlery sets are all half price. But better hurry, because when all the half price loose cutlery and all the half price cutlery sets are gone, they're gone. Also, all vacuum storage bags and all living room throws are still all half price. But when all the half price vacuum storage bags and all the half price living room throws are gone, they're definitely gone. Drop by your local home store and more. Or visit us online at homestoreandmore.ie. New store now open in Trascati Centre, Black Rock Dublin. Home store and more. A happy home. Uno dos tres, a hein, a doa, three. One, two, three. The Orona, the Atteca, and the Toraco. Three great SUVs from SEAT. And when you order now, you can enjoy three years free tire insurance and three years roadside assistance. Plus three flexible payment options to purchase your new SEAT. Visit SEAT.ie to discover even more of our fantastic offers. Great things come in threes at DMG Motors, Dunnegull Town. And while I have three seconds, allow me to say that yes, terms and conditions apply. ResTechs, beds and furniture are a special offer for this month only. They're giving a free pack of hotel-grade pillows for every customer. When you buy a bed or mattress, tease them see supply wine stocks last. Call into their showroom at ResTechs, beds, mountaintop, Letter Kenny. Thinking of changing your floors? Why not see what Florid Letter Kenny has to offer? Florid, have a large selection of solid, semi-solid and laminate-click vinyl wood flooring together with a fantastic choice of parquet, herringbone flooring, all at incredible value. Don't delay. Call Florid today on<PHONE_NUMBER>. Hi, Kate Appleby here. Just wanted to let you all know, my exciting new autumn shoe collection is available nationwide in all good shoe stores. KateAppleby.com. Hope you enjoy my shoes. Now, you're very welcome back to the Ninetal Noon Show. We welcome on to it, Eddie Crawford, Red Hugh O'Donnell, society member. Good morning to you. How are you getting on, Eddie? Good morning, Greg, and thanks for inviting me on to talk about our birthday celebrations for Red Hugh on Saturday coming. Talk to us about the fighting prince of Donegal. Give us a brief history. Well, Red Hugh O'Donnell was the son of the then ruling Lord of Turkunl, who was also Hugh O'Donnell. He married Finula McDonald from the Isles, and Finula herself was, I suppose she came from Great Stock herself, been a McDonald from Scotland, and her mum would have been Campbell from Scotland. And when they got married and she came to live in Ireland, she took what there were the 100 of her best bodyguards. And would you believe any of those were Crawford's, and that's where my interest comes into this. Possibly my ancestor's history would have started in the Port Halls in Johnston area. Now, when he gave her as a present a few places, one of them was a castle in Carrigan's, and one where we'll be involved a lot on Saturday is Montgavenin Castle that's built on the shores of the River Foyle there between Port Hall and St. Johnston. And of course, they also had a big association with the Lifford. So we have a full-daged programme of events. Greg, if you want me to give a quick run over them now. Yeah, I haven't let you off the history message yet. I can answer any questions. You stole the brigand. It's not that long ago that we had the huge celebration. Well, it's half a year longer than I thought my words. 2007, was that when we had the, was it the flight to the Earl's commemoration? Yeah, well, that would have been the fate of the Earl's, which is a different aspect of the history of the Ordonals and the troubles that they had with the English back then in the 16th, 17th century. The flight of the Earl's would have taken place from a place called Port de Moray. It's just on the letter Kenny side of Rathmullen. And that's where our own Red Hewdall was also abducted at the age of 15 years of age and taken to Dublin Castle by the English and held for over four years before he successfully escaped and put his way back to Donegall again. How well archived is our knowledge and history of Red Hew or Donaletti? The archives and the knowledge of Red Hew, it's quite good actually, but it's getting the message out to the people of Ireland. Certainly from the part of Spain through the work of our fellow group colleague, Carlos Borges, and via the lead where Red Hew is buried, these certainly celebrate the life of Red Hew or Donaletti big time, much, much more than we celebrated. So this is why I'm trying the moment with the Thomas O'Blogan and other people involved in our group to promote Red Hew to how important that his life was and what he had done for the freedom of Ireland during the 16th and 17th century, well, 16th century in particular. And this is what we hope to achieve here and we have quite a number of aims as a group that we can move this process forward. And thank God as a result of the search for the remains of Red Hew a couple of years ago and via the lead, which by the lead was the ancient capital of Spain. And as a result of that search, it went worldwide, it went all of the major media stations worldwide and it brought a local lad that was born in our area to the world stage. And yet no, we haven't succeeded in that, but thankfully this last two years, as I say, what the help of our colleagues in Spain and in Portugal, we're doing that and we're succeeding. And I had a chat with our historian, Dr. Joe there. I might have been earlier this year last year and I really think this is an area of our history and with tourism potential that we really should capitalise a little bit more on because an awful lot of the people in our ancestry, our history are held in much higher regard and importance in other parts of the world. And why aren't we building on that and selling people the journey of these people's place of birth and their heritage? So Eddie, I stopped you in your track. You were about to go into full flow of this series of events in Lifford and St. Johnston on Saturday the 28th of October. So what's coming up this coming Saturday? Well, Greg, it's great to have the opportunity and as usual, Highland Radio has always been back on us from we started this and thanks to yourself and to Caroline there for giving us the opportunity as well to highlight it. So it starts on Lifford on Saturday coming at 1 p.m. just outside the courthouse in Lifford where our colleague, Thomas O'Brogan who is a historian and a military reenactor of the period, he will give a talk on the history of Lifford and how the town was formed around a castle that was built by an O'Donnell. He'll also talk about the way that this particular O'Donnell along with the Scribes wrote the life of Colm Kill from Lifford. A lot of people don't know that. He'll also talk about the various battles that have taken place in and around the Lifford area and the strategic importance that Lifford held, especially during the siege of Derry. An awful lot of history to Lifford and I would really, really implore the people of the Lifford and Straban local area to come down along and find out the history of your local area and especially the young people. Well, there's something very special in standing in the space that these historic, like me and you can talk and it's fascinating, right? But you can stand in the space, you can stand almost in the same footprints that Red Hugh and others stood and learn in that real five-dimensional way what happened in that area.  It's brilliant and Thomas himself has a great way of getting it across. So I would really recommend the local community to go down to Lifford at one o'clock and then from there, we reassemble then Greg down at Maggie's Tavern between Port Holland, St. Johnston. We reassemble there at the car park and we'll move on to Montgavelin Castle which is just a couple of minutes down the road from it and down there, I'll be giving a talk on the history of Montgavelin Castle itself and the various things, how it was built, et cetera and we'll also have a lone piper down there who will play a lament and all in the memory of Red Hugh. And then after that, we move on back up to Maggie's Tavern again and that's where the fun and the entertainment and the rest of the evening's crack and it starts off the fourth session of traditional music and that'll be started off at four o'clock. Traditional music from good friends of mine that are really, really quality players and traditional Irish music from the Straban area. The military re-enactment group, Oris, will also have a table display of dress and weaponry from the period and the young people will be able to go up and touch these and hold these weapons and give photographs with them and learn how it was all done and this Oris group, it's a fantastic group. And of course, Maggie's will put on tea and coffee and biscuits and refreshings. Stop it, I haven't eaten yet. You had a pocket in, will you? You've done enough for it. We've plugged it. You don't have to torture me at the same time with Maggie's Biscuits and sandwiches. You only have to listen to me a bit more then because we have so, so much more coming on and all of these is free of charge to the public. It's not cost the public that he is totally free. Then at six o'clock, then we'll have the official opening of the Red Hugh Lounge in the tavern itself. Lovely. Alice, who's the proprietor there, wanted always to have a lounge dedicated to the, or local chief in Red Hugh. So the Kahirak of Donegal County Council, councillor Martin Hardley will be officiating at that. And he will be joined by the county manager of Donegal County Council, various council members. Councillor Patricia Lowe's going to be there as well, the Mayor of Darius. Yeah, the Mayor of Darius Straban, Patricia, she is also coming as is a lot of our national and local politicians will be there as well. And it's great to have people like that on board, Greg, because especially with Patricia there, because there's a cross-border element to that and the way that, and this in itself, it's a great opportunity from a political perspective because our aims as a group, we need the politicians behind us. Of course. And if these people- How could they refuse you? I mean, I have to let you go now, because I'm running out of time, but listen, storytelling, weapons and dress display of the 16th century, the opening of the lounge, it's going to be a fantastic Saturday. Was it the, was it the Wolf Towns most famously did a song, The Float of the Urals? Is it? Well, they've all done it. Not just The Flight of the Urals, they've all done- Elements.  Phil Coulter, listen to Phil Coulter's song about Red Hugh, Donegal. The tune that he played, I just, I forget the name of it offhand. But yeah, to Mara Loog, she will be, she will be actually Indian Duke, Red Hugh's mother, live that night on Saturday night, and she'll be doing a talk and her association with her mother. The pipe major from Derry, Jim O'Hagan will be there. All the traditional music, the musicians, the great group Crack will be playing and they're all doing it free of charge. They're all doing this. So this is the thing that we're trying to promote now. And if we can get, oh, I also have to, I can't forget not to mention the Donegal's Coyote Council and Dylan's hotel for their sponsorship as well. Well, I have to go, it's The Flight of the Greggs now, I'm afraid, Eddie. I have to cut you off for it. It'll be Saturday, you have to get ready. It's lovely, great. Thank you. Take care of yourself, Eddie Crawford, of the Red Hugh O'Donnell Society. Shall we hear a little bit of the Chieftains and their song, Red Hugh O'Donnell? We'll Fly to the Earls about you, pardon me. I can hear the bells of Dublin in this lonely waiting room I'm singing. It's the busiest time of the year at Sister Sarah's, Letter Kenny. And your unforgettable Christmas party now with fantastic food and festive fun this December. Sister Sarah's, our proud sponsors of today's show. Welcome to the Spa at Orchids, one of Europe's largest spas. At the Hollyroot Hotel, Bundlehorn discovered tranquility in our Japanese themed garden, boasting seven treatment rooms, seaweed baths, and a secret garden with an outside hot tub and sauna. Now, let me take you on a ride and see what you can do about it.  Now, let me take you to the heart of Bundlehorn where you'll find the Hollyroot Hotel Spa and Tleisure Centre.  More information at hollyroothotel.com. If you've got a smart meter, you should get an Electric Ireland smart meter plan too. Why? Because you can see a breakdown of your energy usage like never before. From heating, cooking, lighting and more. Now you can find out exactly how much electricity you use by hour, day and type of appliance. Making your usage clearer and your world brighter. Sign up to a smart meter plan at electricarland.io. Smart meter require T's and C's apply. On Wednesday 25th of October, doors open at 7 with eyes down at 8pm. For more info, see ShopLK on Facebook. OK, spells of hazy sunshine will occur through the afternoon. Rain's likely during the evening or early tonight. Temperatures of 10 to 12 degrees in moderate breezes. Rain will give way to scattered heavy showers and clear spells overnight. Lowest temperatures 5 to 9 degrees in light south-east breezes. Some missed all fog locally too. There was a fog warning issued by Mettern yesterday evening. I didn't see any fog myself, but that doesn't mean it doesn't happen. Greg, I live on Largy Brack. The ambulance have to use the 1114 at the bottom, which is an arrow road and they get held up with large vehicles on that road. I used to walk to work using Largy Brack. Now I can't due to traffic using the hard shoulder as a lane. OK. Driving behind a bin lorry this morning at 72km per hour. General speed limit. It was dark. Noticed a young man standing on the back and holding long. Looked very dangerous. I know this is not allowed. Traffic back this morning to Apple Green on the four lanes. Well, it was back first than that when I was coming in. Right. Greg, I am parked. Some of these come in over the course of the morning. OK, so just in case you're on the road right now, it's not going to be the case now, but people took the time to message in. I'm parked just before you turn up to the church lane. Just as you speak, and there's a guy with a blanket over him. Oh, sorry. This is as it relates to beggars. There's a guy with a blanket over him having a right feast to himself. Coffee, sandwich, and now he's just jumped up and walked down the street and abandoned his stuff on the street. So I was to say we're going to flag that with the guardie to see what's going on. I'm just after coming in from shopping and there is three on the street in very close proximity. I totally agree with John. Something needs to be done about this before the bank holiday weekend. Isn't it time the whole issue around the new bridge was highlighted in the national media considering millions were squandered to buy the land for it? A Bonnegie looks to me like the four lanes and Paul Starlights are a deflection from what's badly needed, i.e. the bridge. Well, I can't dictate what they talk about nationally. My word is tough enough, but it's part of the vision. If a regular work scheme meeting turns into... I'll come back to that because it's quite a complex one that I can't just throw out at the end of the show. That plane early this morning was from the German Air Force. So the plane finder up on my phone told me there's one big German plane has gone over, it does go over from time to time. It's got propellers and it's really noisy. I wonder is that it? Last couple before we leave you, we just witnessed a blue car throwing out a handful of paper on the Termen Flatt as we sat at the traffic light. Shame on them. What would possess someone to dump paper out of their car? Like that. And especially with people watching. It takes a special type of character, doesn't it? Hi, Greg. With regards to the lights and the dairy road and letter Kenny, the grass is doing better than the hedge and trees in the middle of the road. That person who was talking about the cycle lane wouldn't have to worry about the cyclists because they'll still be using the road. And if there's a build-up of traffic because of the lights at the roundabout, just wait until the lights at the bottom of the Cullian Road and the clanry get turned on. Please, it's too late in the morning. OK, listen, thanks so much to all of you who listen to the show daily and those of you who watch the show. Your support is so, so appreciated. I hope you know that. And we really do try and work hard for you here in the show. Obviously there's the on-air stuff, but Caroline and myself working behind the scenes to appreciate your support. We're back with you tomorrow morning.


Hey everybody, stay tuned where Martin and I will be talking about GitHub, some of the new features and why IT pros should be looking at it. Hey everybody, my name is Sarah Lean, and today on Azure Unblogged, I am joined by Martin Woodward from GitHub. Welcome to the show, Martin. Thank you very much. Good to be here. Thanks for having me. Awesome. Today, we're going to be talking about GitHub from the IT pro or CIS admin type role, and I'm in that role, Martin. A few years ago, I used to think GitHub wasn't something that I had to pay attention to. It was a developer-only tool. I'm starting to become suede, and now I probably use GitHub at least once a month, if not more than that. Could you talk to our audience about why they should be looking at GitHub if they haven't already used it? Yeah. As we're doing more and more working towards DevOps, in an ops team, you have to work more and talk to developers more the way that they want to work, and that means often using version control and then using the collaboration environments your development teams are in. GitHub is obviously the one that all developers know and are in. But there are other version control tools as well out there. I think as an ops team, the first thing to get to grips with is just using version control.  Let me take that script and change it and make it working with these particular tables and with this particular schema, or we're trying to deploy out to Azure, let's get an ARM template. We've got a similar ARM template over here, let's take that and use it. Getting all those resources into version control and then sharing them with your team is a big step, but at that source of the major part of the learning curve is just getting into a habit of versioning things by actually having version control rather than having v3, v4, v5 in your naming conventions and lots of zip files put around. Not that I'm guilty of that in the past, not running anymore, I definitely have seen people doing in the office. Then, yeah, go ahead. Yeah, I was actually going to say that was the first foray into GitHub for me because I had all those scripts that I'd built up Martin and they were spread over everything, various different Cloud solutions, USB drives, laptops, and then I thought, do you know what, GitHub's probably makes the most sense to put these, and now I can find those scripts, so you're very much right about that version control. That's how I would get the practice, because even just stuff things like yesterday, I was writing a script in Bash that was converting like a directory full of mob files into MP4 files using ffmpeg, and I can never remember the Bash syntax for a loop. Not that you would ever want to be doing loops in Bash, that's clearly explained, but I can never remember that. When I finally got it working in one line with a lot of semicolons and things, I'm like, right, I need to put this somewhere. I checked that into my personal GitHub repo, just so I've got it, so I can go back and grab it. Yeah. Get used to version control, do that, and then you can start, not only can you start sharing with your development teams and start talking to them and working in the same collaboration space, but when you had a real job before you came over here and working at Microsoft, you were sharing stuff with your teams, and if you've got them stored in a place that the team has access to, that the organization has access to, then you can encourage collaboration by having people be able to read code that other people in the organization are doing. So this isn't public open source, and people often have that misconception with GitHub, that GitHub is like, it's free, it's available to everybody. There is GitHub Enterprise where you can just share things in your team, but now you can share things in your team, you get a lot more collaboration happening naturally, because if you want to know how to deploy something, you know Bob upstairs has already done that deployment.  We're still very, very, very restricted right access, just because you're given in traditional source control systems, once you gave somebody access, they had read write access to source control, and that's very not typically how you do things with GitHub. You quite often get permissive read access, but it's very, very restricted right access to the person or the team that's responsible for that area of your system, and then they then can come in and you can send a pull request to them or do changes that way. I think that's quite key to that whole read permissions because I think I have been guilty of opening up a shared script, thinking it was my copy, Martin, completely blowing it away, and then the whole team is panicking because we've just lost something massive. So yeah, those permissions can be key as well. Well, that's how you know as an ops person, that's how you test if somebody's, if somebody's not, you just switch it off and see who's screened. That's definitely the quickest way. So yeah, with scripts, it's the same thing as well, but you can share it with the teams who's doing it and collaborate that way.  But that's because they don't know any better and there's an ops team you can be coming in and really start educating the whole organization into the best practices and how to do things and start to template things and start to automate with GitHub actions and things like that. Cool. So in terms of Azure and GitHub, kind of mentioned GitHub actions, and I know I've used a bit to deploy some stuff to Azure, but how do they fit together? Do they, are they a great fit together or are we rubbing against? How does all that work really mark? All right, yeah, no, yeah. So it is a great fit. Obviously you would expect it to be. There's a whole team that, so there's different aspects. You've got parts of the Azure portal that they're actually able to integrate with GitHub and use GitHub for source control of things. So recently Microsoft launched the Azure static website stuff and that requires a GitHub repository to sort of deploy from and things like that. So there's those levels of integration from the Azure portal in. You can log into the Azure portal now with your GitHub credentials as well, which is a bit interesting. You know, you can link the two, your Active Directory credentials and your GitHub credentials, and you can kind of log in either way with both. But on the GitHub side, the major part of automation that an ops team wants to be most familiar with is this thing called GitHub actions, which is the automation engine. And there are a ton of GitHub actions for Azure. So the Azure teams create actions, so little bits of automation, which allow you to deploy to Azure environments to spin up virtual machine scale sets to do all those setup network in configuration, do all that stuff you do in an automated way. We can do that using these actions for Azure, which we have whole teams dedicated to supporting. But it's not just on the Azure side as well, because obviously all the other cloud providers have their teams that are building GitHub actions to their platform as well. So the advantage of GitHub is you've got this kind of cloud agnostic kind of tool really, but obviously Azure's fantastic, so it works great with Azure. Yeah, and I think when I use GitHub actions, I actually used PowerShell within my action. So I didn't have to, maybe that's not the best way to do it, Martin, but I didn't have to learn something new in order to make GitHub actions do what I wanted. So I thought that was quite good from my point of view being a non-developer. In fact, Christy, one of the MVPs, she's actually just done a whole raft of improvements to the documentation around using actions and PowerShell, because again, she's from the ops background just like you and kind of helping other people do that. And because the GitHub is GitHub, so the documentation is open source as well. And so she actually contributed that in and try and make that easier. So yeah, it's definitely a use case to see. I'm still not like kind of PowerShell is something I use when I'm not PowerShell native yet. I'm not posh native. I'm kind of just posh curious, I guess. Try and make myself use it when I can. Cool. I've had some buzz around GitHub code spaces and I think that's the right name. What is that, Martin? Is that something we should be looking at as well? Yeah, I mean, so GitHub code spaces is still in private beta. So if you go to github.com features code spaces, then you can go in and sign up and join the wait list. But basically what it is is a full development environment in the cloud for you to use. So if you've used to using, we're all, we're ops people, we're architects in the background. It's basically just, all it is, is just a container in the cloud that's using the dev container concept from Visual Studio Code.  So right from GitHub, you can come in and you can say, edit code in a code space. And then behind the scenes it's going, creates a container, loads it with the stuff you want, and then gives it back to you in the browser so you can start coding. And that gives you an environment like straight away. But the great thing is, is you can actually encode in the dev container, Jason, and then a Docker file and things, you can configure exactly what you want in that environment. So if you don't configure anything, you get what we call the kitchen sink container because it contains absolutely everything. But if you want a container that uses a specific version of PowerShell that's using specific versions of dependencies, because that's what your project means when it's deploying, you can bake them into your dev container. Not Jason, you can bake them into your container that's gonna get instantiated in the code. And then you know anybody that comes in and goes code new code space is gonna get exactly the same environment. And that's the way you as a team can roll out a development machine to your entire organization. And that's a full dev box that you're giving them access to that you're hosting in Azure, in the cloud, in a container.  And because it's a full container, you don't need to be giving people admin rights to their real machines. You're just giving them admin route access to this container instance. And so they can like from a completely locked down, you know, heck from a tablet or whatever or a really locked down, you know, machine, you can connect in and get a full dev environment that's running Visual Studio Code, debug, all that support just works. It automatically port forwards ports that run inside the container over SSL and authentication for you. So it's a really cool dev environment that I think will help a lot of our teams. And it really helps support use cases because, you know, you've got the problem where quite often you've got an application that's running in support and you don't wanna touch it because it's working and you've got like defects that are building up but you don't wanna go start fixing them because you know, you've got to pay that tax of getting everything set up. You've got a code space set up, you've got CI, continuous integration using Git of Actions and you've got CD, so continuous deployment. Again, using Git of Actions all set up on that repo calling code checked in alongside that code in the repository.  And so if you can get projects into that space then it's a lot easier to be able to maintain projects in the future once we go into maintenance. Awesome, that sounds very cool. I'm definitely gonna have to request some early access to that. Send me your Git of ID, we'll get you in. Awesome. I think it'll also be quite useful, I think, from what you were mentioning, from a support type of issue and a desktop engineer because often, like you say, you have to give someone maybe admin rights to their local machine to get all the extensions, everything set up and no one wants to be in that position. So being able to put it into somewhere like code spaces and have it a wee bit controlled and allow your developers the agility that they need is definitely something that I think lots of teams will be able to use as well. So that sounds pretty cool. And you could, if I like the container that's the standard, this is our organization container template that we use for our dev environments and then the team can come in and do local customizations to their container and all that sort of stuff. So yeah, it's gonna be really, it's gonna be really, really, really powerful. I'm really looking forward to this as it starts to evolve. Cool, awesome. So in terms of going back to IT Pros and why they should be looking at GitHub, where can they go and learn about using the tools and everything we've mentioned before, Martin? Yeah, so I think the first thing is to learn some Git and we've kind of talked in the past, learning by doing is probably the easiest way. Git is the most popular version control tool now, not for any merit of it being like the best version control tool. It's fantastically hard to use. It's like quite sort of illogical at times. And while the GitHub UI kind of makes that a lot easier by making you, you know, you can edit in the web and you can do all that sort of cool stuff. Knowing some core GITs and knowing how to, what's called clone or repository, let's get a copy of the repository locally, make changes, commit them and then push them back to the central repository. That's all good to learn. So there are a number of, you know, we've got the learning GitHub learning lab can teach you about that where we've got a number of interactive online courses over on the Microsoft learning lab as well. We've got some courses there.  But to be honest, just trying it, forcing yourself to use version control is probably the easiest way. And then you learn five commands you know how to do, like clone, check out, commit and push. And then you have to go to Stack Overflow and, you know, search the rest of them, like when you're trying to resolve some horrific merge conflict or do something like that. Either using UI, using like GitHub desktop or something or Visual Studio or, you know, the web or go, you know, Stack Overflow and answer. I'll tell you how to do it from the command line. Yeah, I think I have broken a few repositories and had to just delete them and start again because I couldn't fix whatever merge conflicts I had. And I have just learned how to use branches within GitHub. So it's definitely a big journey but I enjoy it by hands on learning. I think that's the best way. You remember your mistakes and hopefully don't do them again, Martin. Yeah, for sure, hopefully. Cool. Now I saw you on social media talking about prepping for GitHub Universe. Is that like GitHub's version of Ignite or is that completely different and I've got it wrong? No, no, yeah. It's all like, you know, we have sort of two major events every year. There's universe and then there's satellite. Satellite kind of usually happens in the non-virtual world. Satellite light goes around the world and happens in a remote location. And then universe is the main conference that happens in the other San Francisco headquarters. That's coming up as we're recording. That's coming up next week. No, not next week, December 8th. So yeah, we're pretty excited about it.  You can expect to hear more about code spaces. You know, we've been doing a lot of work around discussions and around actions as well. And there's some really cool stuff coming around the action side.  So yeah, some great stuff coming in and a few surprises. So should hopefully be a good conference. Get on universe.com if you want to go along. I always be promoting, I guess, this. Cool. Thank you so much for your time today, Martin. I really appreciate it. And hopefully it's been useful to our audience. Some of the information and resources that Martin talked about will be in the description box. So make sure you check that out to do your further reading. Remember to hit subscribe to this YouTube channel so you can get future episodes of Azure unblocked.