Hello, Internet! This is kind of a video write-up for the challenge Try Harder for 150 points in the web category of HACCON CTF 2018. So full disclaimer, I say this is kind of a video write-up because this is a little different. I am not going to be writing code. I'm not going to be doing this kind of side-by-side with you. I'm actually going to be replaying some of the live raw footage while I was playing this competition. Very, very sped up, so epilepsy warning, I guess, and you'll see through all of the rabbit holes and missteps and everything that I took and me playing it live. Because the old service that originally came, was given this challenge from here, was given as an IP address, not a domain here, because it didn't have a whole lot of protections, I guess. I guess it just wasn't stable, because that hosted the website and it got hammered and brought down a lot. It was just unstable. So the CTF organizers decided, okay, let's host it somewhere else and let's put on this Cloudflare DDoS protection. So it uses the panic mode, I think. I think that's called. I think that's the name of it, where it will check your browser, make sure you're running JavaScript or whatever, and it will take five seconds to load the page. And it was Agony and is Agony for what this kind of challenge actually is, considering it's like blind airbase sequel injection. So I want to showcase it because I don't think there are a whole lot of video write-ups or even text write-ups. I haven't seen anything on this challenge before, but I wanted to give it to you so someone in the world covered it. But again, partial video write-up and that I don't get the full flag, I didn't finish this during the CTF, but understand and know the solution now after the game. So I still want to show it to you and hope you guys can bear with me for this. So I want to prove this to you. If I go to this URL, you'll see there's this Cloudflare DDoS protection and after a crap ton of time that's wasted, especially if you're trying to automate and attack, you'll get the web page. I will showcase, you can actually script this. Originally, myself and YgglesMoto and Monorail and other people that I was playing this with didn't think that we could script automating our interaction at the website because of that Cloudflare protection. We recently found this CF scrape GitHub that will allow us to do that just like that. If you want to Google that, you certainly can, but it's simple. It essentially just mocks the request library in Python, but will allow you to go through that CF like Cloudflare protection because it's, I don't know, pretending JavaScript or whatever. But that's handy. However, it still takes five seconds for it to return the page. So if I run this, it's going to do that Cloudflare check and eventually I'll get a page return. You can see I've just an exit saving here. Eventually I'll get the output of the web page. However, if I tried to do this for a blind sequel injection when I'm trying to leak information out, I don't want to wait five seconds for literally every single attack that I'm doing. So this is just agonizing and was not readily used and accessible for the game. The original script that I use, I just use the original website, the first one that they released. However, right now that is down. It is not up. So I cannot show you this attack like that. That's why I want to showcase the live footage that I recorded. So I'm sorry enough of me talking. This is probably going to be a super long video and I really apologize for that. But hopefully it'll be worth it showcasing cool, cool things. Let's play this video. So I'll speed this up. Again, epilepsy warning. You'll see a lot of discord notifications. You'll see me talking because this is my raw live footage. Shameless self advertisement. If you aren't in a discord server, please do. You can see the camaraderie, the brotherhood, the family-ness crap like that that we're doing right now. We're all in voice and I'm chatting with some of these other people that are attacking this with me. So off on the side, you can see my supply and text window. I've got you over the website creating a session, getting the cookie out. And we didn't, I didn't see this hint originally. It said, don't touch my cookie. But Yiggles pointed out to me that eventually when that was released, we noted it in there. I was actually just testing with the cookie involved and I don't think they were. But I got success with the cookie in there and they weren't.  That must be why it's actually in there. So we started to test because they found SQL injection in that cookie. And that was awesome. That gave us a little bit of a lead. Now we had to figure out what we were doing. You saw me just script there trying to connect to the Cloudflare one, but it just didn't work. So I went back to the old service. We didn't know about CF scrape at that time.  So do not CTF organizers and CTF planners do not put I'm under attack mode for Cloudflare on a SQL injection challenge. Pretty, pretty please. I understand the issue, but okay. So I am testing the cookie with a lot of SQL injection and I'm trying to determine what errors can I find. I'm seeing this truncated incorrect double value, which is the cookie down there. So I see interesting things are happening. I'm getting weird results and I showed this to people in the discord is like, I don't know why I got some of those values or some of those responses like try to brute force a list of possible account names, etc. That was really weird. But I am getting some errors out of it. So I kept testing and that's what a lot of this video is going to be where I'm just testing things. So I'm sorry, bear with me. Maybe you'll learn a few things because through this research and through what I've been trying to learn. I did pick up some interesting tidbits like this if syntax for my SQL. I had no idea that that was a thing and it's pretty handy. Especially if you do have a SQL injection vector and you're trying to blind SQL injection. Maybe this could be of use. So I actually ended up figuring out this condition set up where I would test a condition determine whether or not. Okay, that condition is true or whether or not that condition is false. And you'll see what I do in just a little bit here after I kind of get the hang in the syntax is I determine. Okay, let's just return a string or something that I know will air out with that truncated incorrect double value. Because for some reason that is always going to spit out an error. I can use that to test if my condition failed and I know I'll get a result. So okay, that's an inkling of blind SQL injection. Maybe I can weaponize that. Maybe I can use that to my advantage.  That's on my GitHub. I share it with my Discord. You're totally welcome to use it for sure as well. I found that to be very, very handy. If I have explicit SQL I or blind SQL I, I can use that to leak out any portion of a database that I particularly want to once I figured out an attack vector. Here I'm finding interesting things about the database like this unhackable dot. So unhackable being the database name and whatever I'm looking at being the table though that was pretty handy. I didn't end up using it at all. But again, doing this testing and fuzzing is awesome for doing whatever recon or enumeration or trying to figure out whatever we can here. I don't know what I'm doing at this point. Trying to determine if I can leak any other like tables out any other fields. And you can see I'm getting that occasional what error and that my condition didn't work. And I noticed that I was getting this row 64 was cut off by group concat. So it seemed to be like truncating what I was trying to leak out and that there were multiple rows. So I think I tested with like a limits without a dude like limit one, etc. And I after some other tinkering, I was able to find the version and I thought like, okay, that's actually returning a full on string. That's like essentially explicit SQL if I could actually get any traction with that. But I wasn't able to I showed this around to the guys in the discord server. But I wasn't able to get anything else with it. Even when I thought, can I get strings just straight up displayed to me? I even tried this. I went down this rabbit hole for a while. I was testing. Can I cast something as a string with Varchar or str or whatever functions that my SQL could offer for me. And I just couldn't get anywhere with it. So again, worthwhile testing, learning experience, whatever the whole point is to be banging your head against the wall long enough that something breaks through. And that's why this challenge is called try harder. That's why my script is called Ape because I am of the mindset where I throw stuff at the wall and see what sticks in this video itself is even an hour long. However, it does get cut off. So I don't want to be a disappointment here. But once I get the vulnerability, once I actually find the payload that will get a blind SQL injection query. For some reason, my keyboard just stops working and I have to reboot. I told everyone the discord server and it sucked. It was awful. But it was so exciting because after I reviewed it like, okay, let's weaponize this more. Let's leak out something else. I thought I had a little bit of an attack right here where I could get row, blah, blah, blah would be a success or otherwise to get my condition aired. But it wouldn't give me what I wanted. And I just didn't feel comfortable with that because I wasn't able to actually determine any password or ID field, etc, etc. So I saw this weird error that said you can't select this table users for update, etc. So it says I couldn't use anything, whatever as an update. And I thought, how can I get around that? I've never seen that error before. So this is where I researched. You see me on Stack Overflow and I learned a little bit about MySQL aliases where you can select a whole another table as something else. And just trying to kind of treat it as like a temporary variable that you can still look through. So I tried to see if I could get that right rather than selecting that table. I did select something from that table as alias. And I had to get the syntax right. I had to keep playing with parentheses here. So I ended up having with some disgusting payload and I'm really sorry for that. But I did get that to work. I was able to select all from users eventually with an alias set up. I think I needed a little extra set of parentheses. So I know my payload is getting very, very strange and it's probably hard to follow at this point. Again, I wanted to show you this because no one else has and maybe you'll learn a little bit from it even if it is like rapid fireworks on your screen. At this point, I try other ideas. I'm trying to change whether or not my or statement at the very beginning would be better effective as an and statement. I'm probably just going a little bit insane. I'm probably just scraping at straws. But again, that's the testing that I've got to be doing. I'm trying to do stupid conditionals like where one equals one, I know that should return something and where one equals two, I know that should air out. But it didn't seem like I was getting something. It didn't seem like where one equals two, it wouldn't return anything else. So I thought, okay, for some reason that is still evaluating correctly and I have no idea why. It probably was just returning a null response, which for whatever reason, my SQL was still willing to handle. So whatever. I wanted to use Union Select because that is my typical go-to for blind SQL injections. But again, this was just a weird challenge where it would convert everything to a double if it just kind of like hung out there in space. I promise I'll get to an actual working payload at some point. And I know you probably hate just listening to me talk right now. Whatever internet anxiety, whatever haters, trying to concatenate some things. These are just dead ends that I'm looking around at. Again, I'm trying my limit one to see if I can only get one response, not that row. Massive amount of numbers for whatever reason. At this point, I tried to see if I could force my SQL to throw an error because I didn't feel that comfortable with the condition. And you can see I kind of moved on from the if statement. So I kept trying to tinker with other things. Keep an eye on the clock here. You can see how long this is moving. You could also see the music that I was listening to. I like to listen to like retro wave or techno or EDM when I'm when I'm hacking when I'm going through CTFs and stuff. Eagles Moto started to try and do some like local file inclusion see if we could actually get responses with trying to read a file out. Didn't seem to get anything. With a try, I think we were just poking around in the SQL injection cheat sheet that I have whatever for our own learning purposes to. We're all here to learn. Please do join the Discord server if you're into this and you want to be part of a team and you want to be together with people that are just trying to get better, trying to improve, we're all passionate about it and stuff. I also personally welcome whoever joins the Discord server. You saw that notification just come up. So join the Discord server. I'll personally welcome you. It's cool. Subquery returns more than one row. Again, I try and limit things at this point.  Because I share this in the Discord server and that I'm excited about it because it looks like a lead. I'm able to actually get an error if the password equals null, which it doesn't, but I'm able to get a response if it's greater than something else. So like, okay, perfect. This is the makings of a blind SQL injection attack. Finally got a payload that does something. So I start to test this. I go ahead and get my thresholds ready where I've got an error cat. I'm sorry, an error caught or an error catched. Catched is not the right word or a success. And I can finally start to piece this together. So I thought originally like I can't trust any of the lists that I've created before. I'm just going to loop through the ASCII table. I'm just going to loop through numbers. I actually asked in my Discord server, hey, does anyone have an ASCII table or does anyone know it? And Monorail, you saw the notification up there. Googled an ASCII table for me. I felt like a shithead for not just doing it on my own. Thank you. Thank you, Monorail. I appreciate the teamwork, but we were just getting excited because we thought we had a weaponized attack. So I go ahead and open up another blind SQL injection script that I've had. Just grab a list of printable characters and I start to run through stuff. I realized that I had to switch where I was getting things appended right here. You can see I put it in the wrong section. I want to add a new character if I actually get an error.  I'm not going to actually get lowercase letters in this case. I got a D. I got a four. So I know I'm getting the flag and I'm like, uh, I need lowercase. So let's just put binary in every single select statement I had to see what would hit. And eventually like nothing, nothing got it. So I was like, all right, fine. I'll remove all the, the binary and just go back to getting it in all caps. Cause I know it'll all be lowercase. That's what the flag format has been for these challenges. Starting to get the flag format, getting excited. My keyboard starts to break and I have no idea why I'm moving things around with my mouse because I just straight up can't type anything. I'm yelling at the guys in my discord server and something's weird. It got caught on a quotation mark and that was very strange. So video ended. I'm sorry because I had to reboot and I didn't record following that, but I started to leak out the flag and it gave me dark, uh, why with like four H's and four Y's and then an underscore and then SQL one exclamation point underscore and things started to get really weird and really wonky from that point on. I wasn't able to actually get anything following this segment. Uh, and I couldn't figure out why. Um, we literally were not able to get anything else to leak out. So what we actually ended up doing, if I can open the script here is we started to look for other IDs that weren't ID one. We figured, okay, ID one must have been whatever admin, but we thought like, is the rest of the flag stored somewhere else? And we started to test for like leak out things were ID equals two or ID equals three, et cetera, et cetera. And we were getting results and they started to look like hashes and we thought like, oh, whatever, that, that's probably just normal. That's probably just trying to make it simulate like a real world thing where passwords are stored in a hash and we didn't do anything with them. I think Yiggles Moto tried to, uh, crack the hash on one of them while we got like a portion of it leaked out and he said that like, oh, this like, this is a partial match for the letter R. I was like, what the heck? Okay. That's probably garbage because they probably just filling it with random data and at this point, there's like seven minutes left in the competition and we're freaking out because we're like, why isn't this working? Oh yeah, the S was a five. You can see me starting to get the list. Why couldn't we get the flag? Why was nothing else returning? What was going on when the rest of the attack was working just fine and as it turns out, as I went to talk with the admins later, I was just freaking out in the telegram like screaming. Are there any admins around and no one was there at the time. So the following morning after the game, it ended. We're all just pretty heartbroken because we really wanted to get this like hundred whatever garbage point challenge for that only like five people have solved and we looked, we felt like we had a lead and whatever. It just fell through. So in the morning, I chatted with the guys, explained that this was my payload, explained that it was weird that I wasn't getting anything else, explained that I was using the old service and he was like, oh, oh, oh, oh. It all happened because the new service, the one with the cloud for their domain is actually actually has the flag all on that one row. And we didn't know that nor could we particularly script. Well, that that cloud for their protected one, but in the old service, what they had was they had the rest of the flag stored in those other ID numbers like two, three, four of the things that we were leaking out as MD five hashes of each letter and Oh, that pissed me off so bad because we had it. We were literally looking at each segment of the flag once we got it to leak out. We saw a letter R and we didn't piece together that that was the rest of the flag just in different pieces. So again, I'm sorry, I can't show you this, but take my word for it. Once you have this payload group can cat select ID blah, blah, blah where ID equals this thing and password is greater than this and that's probably disgusting. It probably could be cleaner than this, but we got it to work with that and we were able to leak out a password and we were able to do the blind sequel error based sequel injection. So that first part of the flag that we got following had we been able to leak out the rest of those ID numbers had the game not ended had the game not been delayed a day and also cut down to 12 hours, whatever. I'm not bitter. Maybe we would have got the challenge. Awesome learning experience in my mind. We still solve it. We still attacked. We got the exploit that we got the payload and everything working. So I was really happy with it and I did want to share with you guys. I hope you were able to enjoy this video. Despite it being very weird and very strange. Thanks for watching. All right. Hey, quick shout out to the people that support me on Patreon. Thank you guys so much. One dollar or more on Patreon will give you a special shout out just like this at the end of every video. $5 or more on Patreon will give you early access to everything they release on YouTube before it goes live because I like to record in bulk and then gradually YouTube schedule the releases on a day by day basis or whatever. If you did like this video, please do like comment and subscribe, especially if you want to see more CTF video writeups and other programming tutorials. Please join our Discord server. It is an awesome family of CTF players, programmers and hackers and we're just open to everyone. We're going to be playing I CTF and Nighthawk CTF as they're coming. So yeah, come hang out with me and other cool people. I'd love to see you guys on Patreon. That would be phenomenal and I would love to see you in the next video. Thanks later.


Well, this is bad news. Oh, that was so sick. That was actually so sick that I'm more impressed than I am upset with myself. How's it going, everybody? Dahtodoy here back with some more Dragon Ball Fighters rank matches. This time playing the suggested team of all the season three DLC characters released thus far, including Kevla, Ultra Instinct Goku and Master Roshi. I'm going to be completely honest. Sometimes I completely forget that Kevla is a season three character. It just feels like it's so long between, you know, a character like Kevla and Roshi. Oh, the multi-hitting medium was so clean there. I don't know if that's going to connect. Yeah, that's fine. Oh, that connected though. Oh, the back dash heavy was nice. But yeah, the reason I was so excited to do this team was because again, I always forget the Kevla is a season three character and it gives us a chance to talk about season three DLC so far and how we're feeling about that, including, you know, me in this video and you guys in the comment section. So really, all I wanted to talk about with that is the fact that I think it's been a really good season for DLC. I'm just going to go with a level one and hope it kills. Kevla, yes, the green orbs really worked out for us there. But Kevla, I feel like was a more standard character, but the animations and personality they brought with the character were really good. I actually feel like Kevla and fighters is kind of like a mix between the anime and the manga, and I think it really works for the character. Oh, not going to do not even going to do a normal combo. I was going to say not going to do anything too optimal with this one, but we didn't even get four hits in before I dropped that. You I Goku is probably the standout character of the season for me so far. Just really, really good, really cool. The dodges and stuff like that are fantastic looking a little bit on the overloaded side in terms of what he can do with his kit. But I'm going to be honest. If any character was going to be overloaded like that, you I Goku is a great choice by Kevla. Sorry about that. I wish we would have not dropped that combo. I'm Broly and then Roshi is just the most unique character in the game. So that's also another really cool avenue to be that I'm going overhead them.  I don't know why it got it got so nerve wrecking right there. But yeah, that's pretty much all my thoughts on that. Now we can just get back to focusing on the game. But but again, let me know what you think about all the DLC character spark. Oh, I miss the EX by just a few inches. That was not on purpose. That's fine. The two H was on purpose. Uh, I think I'm going to level three here. I don't know why, but I'm going to do it. All green Roshi got a little bit of the purple as well on the belt. Go ahead and jump for me. Jump big fella. Don't do it to him. Oh, I'm thinking about putting you in the jar to be completely honest. I'm thinking about it. I'm genuinely a whole. I don't know why I try to beam.  Roshi's going to get a beating and a half for that. My bad Roshi. Just don't look at him directly. Uh, he gets really nice elbow drop. Love to see it. Oh, okay. Hold on. Hold on. Nice get in the jar. That's not going to put him in the jar. Is it? It is.  And you know what base Goku? You're coming next. Go ahead. Jump for me. Oh, don't mess with me. I will put you in that jar so fast. You are going in that jar. You just don't know it yet. Even I don't know it yet. Hi, okay. And is he going to do the full 20? Is it am I getting the full times 20? I am. Well, this is bad news. That was so sick. That was actually so sick that I'm more impressed than I am upset with myself. But I am upset with myself that that worked on me, but I got to admit it was pretty clean. It was he faked going for the double key blast into the medium breath. That was character stuff. That was character knowledge. I have not even seen that until now. Am I dead for that? Oh, no, he's going to get to but I'm dead for that. I'm literally dead unless he drops it, drop it, drop it, drop it, technique, technique. He's not going to drop it. I can't believe he won off that key blast. The key blast tech was so heal. He'll Goku, please. He lit. Oh, the key blast tech was so clean. No, I can't believe that worked. Yo, big brain. Hey, okay. Okay, that was big brain. I got to give it up. That was smart. That was a way out of my IQ playing field. Capital is back. Yeah. Oh, no, not Roshi to I deserve that. I deserve that should have gone with more of a Goku there. I'll take that easy knockdown for me. And I'm just going to go ahead and do the little red orbs here. Don't mind me. Oh, and let him get away with a raw tag. That sucked. Oh, grabbed a hold on, hold on. Hold on, hold on. Guard cancel again. Roshi's too fast. Oh, hit by the jab. I try to get another two H in there. Hold up. No, no, we're going to take a lot of damage here regardless. Oh, stomped. You know, I'm about to combo him. You know, I got to do the big damage loop. I wonder if Mahfuba would have killed. I should have gone for it in hindsight, but I'm just going to take a Kefla level one that'll clean him up just fine. It's better that than accidentally letting Broly live. I guess if I wasn't sure, but I do regret not going for it.  I did not expect that two H to get me into this kind of situation. Level one into a level one. Yeah, I don't think he had too many other options. Does this kill though? No, no, no, no, no. I'm falling for every base Goku trick in the book. Literally, I won't stop until every base Goku trick has worked on me. I refuse to stop.  I want to face Bardock. Now, you could be saying that's a bad idea. Base Goku is one of the best anchors in the game and you'd be right about that.  Oh, I don't know why that was so funny. It was just because the music like cut out or at least in my mind it did. I why did I hit a button? Oh, no, I'm dead for that. I hit a button in the worst place. No, no, no. I thought Goku assist might actually help me there. Well, we still have level three spark, which isn't too bad. I honestly would have rather saved a character looking back, but I'm just going to go ahead and. Oh, why did it knock me? What? Base Goku assist. Pretty good work. Don't level three me. Appreciate it. That should be death. That should be death. Level two, I will definitely do both bars just to get Broly. I mean, Broly Bardock out of here. There were DLC partners. It's, it's fine to get them confused in this game. We got to deal with the best anchor in the game though. Everybody don't talk. Oh, start to start talking. The silence was crippling. The silence was deafening. I can hear the silence. Start talking. Leave a positive comment. Ah, Base Goku. Look at this damage. The timing is well on the spark. You've got me running out. I can't UI tech. It's too dangerous to go for this guy is IQ levels. We're maximum this game. Oh my God, that beam was so smart. I've never, I've never seen IQ levels like that. Base Goku hit the field and this man's IQ tripled. If not quadrupled. Oh, that was a great game. Man, I'm still not over the fact that that base Goku player could be out there solving the world's problems.  But he's actually just maining base Goku right now. I'm kidding. Of course, that was still a great game. It's actually been like I said, we had a, if you don't know, there's not unlimited rematches anymore. So you have to find more matches. So depending on the time of day you play, that could take a little while longer. So it's actually been quite some time. I'm getting looped. Man, when I replied to that comment that I said, man, I feel like now I'm going to lose. I'm getting outplayed. Why did the commenter write what could go wrong? This isn't even that bad of a team. I feel like he just set me up. I feel like he knew something I didn't at the time. It ran too far forward for the down heavy. I'm starting to think that comment was in cahoots with these people. He knew I was going to face the big brain Goku. Hold them down. Hold them down. Oh, just get on the other side of them. Oh, get on the other side of them. Switch out, switch out. Wow. Why actually switched out into a beating? Okay. That was pretty cool. I wonder if that was because of, it was Roshi and his speed or something else. Oh, rocket kick as well. He's just getting as much health as he can for some reason. Wow. We're going for big damage numbers, but for why? Now I just got to switch out. I got to leave. What am I doing? Let's go. Hold on. Hold on. Hold on. I should have gotten to H for that, but I didn't. That was a beam. That was a beam. Not a lot. Oh, I was walking for the key blast read. Hold on. We got a, we have a lot of coming back to do. You do not like to see this. We are down in a big way. Are we dead? He doesn't have any level twos, right? Level three. I don't even think that kills from there. It's comeback time. Literal comeback season. You just don't know it yet. Oh, it's comeback time. You just didn't know it yet. I'm actually coming back, dude. I don't care what anybody says. I'm a level three with Roshi. I know it's going to kill our time, but I want the hard knockdown mix. I need the hard knockdown mix. He just clicked a button because I missed my meaty. He didn't respect that and he shouldn't have. Oh, no, that was, that was devastating. That was devastating. Any other thing, any other scenario I would have been okay with get out of there, get out of there. No, we weren't plus. I was just hoping he wouldn't click a button. Oh man, that was rough. Okay. Hold on. Hold on. It's still comeback time. You just didn't, you didn't know it yet. It's still comeback time. Why am I getting more confident the lower my health goes? It's because I believe, dude. I believe that this is going to come back genuinely seven bar. If I could get a few more auto commas, if I could just get a few more auto commas and talk to Shenron, he would understand. I can't talk to Shenron. I got to focus on doing what I can now. No, you can't afford to miss that. Please hit. Oh my goodness. I took a huge risk there. I didn't know if that was fast enough. I knew this would be a comeback though. Don't ever doubt it. Don't ever doubt it. Were you doubting me at the? Oh, I want to see who's doubting me. Please hit. Yes. I just wanted to keep corner. I know that seems selfish. I just really wanted to keep corner for some reason. You're finished. Respect. It was me missing the meat. He was a blessing in disguise. Oh, only the ultra instinct theme music don't actually because of the copyright system. But imagine the ultra instinct theme music over that. Who that would be hot. It's up to you comment section. Go open another tab. I'm getting open another tab. Re-watch that entire section. Play the UI theme music and boom. There you got yourself a video. I'm going to have to come back again. I'm playing really bad with Kefla for some reason. I'm going through with Kefla for some reason. I'm sparking. I can't live like this. Oh, I am getting out of here. It's time to reset everything. Oh, the sparking ran out already bar point. Oh, nice button. I thought for sure I'd be able to get something there. Two bars that should be able to kill, especially with the C assist that I keep forgetting about. Unless he drops it, he's pushing it quite far. You did not have to push it that far, but I will take you up on your generous offer and leave. I will definitely be getting out of here now. Roshi, please finish it off. That's the greatest. Come on. Nice. We actually have a character lead now. I did not think that's where this was going. He pushed the combo. He tried to get greedy with that bar. I can't blame him. You can meterlessly combo off that. Why do I? I don't know why I always forget that. I guess it's just because it doesn't feel like something you should be able to keep. Oh, my thank goodness. I got reflect my accident there. I was going to say, are you going to keep jumping and thunder shock? That would have been very bad. Oh, messed up the combo. Too many hits. Oh, Kefla. I literally guard canceled to save Kefla. Bad read. I thought it would happen a bit faster. Hold on. We're still, we're still in a mess. I need, I need more of a lead to feel comfortable. Okay, not bad. Kefla. Why do I keep putting Kefla at risk? There we go. Big payoff. We could get something good here. That was pretty good. Let Kefla come back in here. Let Roshi do a bit of talking himself. Is this not going to kill? This has to kill. This didn't kill jump. Yes. That was such a read. We didn't even have to do that. That was so dangerous. That was way too dangerous. Go ahead. Jump into your dive kick. I know you want to. Oh, I couldn't beat him in time with the thunder shock. Can't afford to lose Roshi yet. Honestly, we still need, we still need. I think we should switch into Kefla. Yeah, at least this way we reset neutral. I guess, I don't know. I don't know why. I don't know why I did that, to be honest. I don't know what I was thinking in my time of need. I want to be done with this dude. I want to, I want to claim victory. Okay, okay. You had something you wanted to say to Ultra Instinct Goku? Yeah. That wasn't even bad manners. I'm literally just stalling for time. I'm stalling for sparking time. It's gone. The jab, the UI jab is too good, dude. Be gone, gone with the beam. That was clean. What a game. Great games to both opponents. Had a ton of fun this video. Hopefully you did as well. If you did, definitely make sure to go down below in the comments. Let me know your favorite moment. And while you're down there, make sure to like button and subscribe if you enjoy the videos on the channel and want to see more of them. You can also see more of them right now. If you look up on top of your screen, there should be, oh no. I didn't know that was a ranked down match. But yeah, the video's on your screen. You can check those out if they catch your eye. Other than that, I have been Dr. Doya and I will see you in the next video.


to physical therapy for a better life. I'm your host, Christine Linders, physical therapist and board certified orthopedic clinical specialist. I am hosting this show from my hometown in Ansonia, Connecticut, and I have a great show. We're going to talk about knee pain, why you all of a sudden have it, what to do if you have osteoarthritis, and what one critical muscle you can strengthen right now to make a huge difference. One of the most common complaints I have had as a physical therapist and even more so during the pandemic is people coming in with knee pain and saying, I don't know how I hurt my knee. I just noticed that it's hurting and now I can no longer take my daily walks. It hurts when I go up and downstairs. It hurts when I try to get up from a chair and sometimes even getting in out of the car is so painful. Help. And so one of the biggest problems, and this is why I titled it, the secret to healthy knees is a strong hip, is because the gluteus medius muscle attaches inside your pelvis to your hip bone. And that muscle lives right here inside this spasa and it runs down from your pelvis. That's if you put your hands right on your waist there. It runs down on those hip bones right out to this hip muscle. And so if it was going to contract, it would do this, like you're raising your leg out to the side when you're standing. And so that's all fine and dandy, except for the biggest action that the gluteus medius muscle has is to keep your pelvis level like this while you're standing on one leg. So while this leg is in the air and you're walking, are you going to put your leg up a stair? This gluteus medius on this side has to keep this whole pelvis and your torso level while this leg is in the air. If it doesn't, so if this gluteus medius doesn't while this leg is in the air, what happens is the pelvis will drop. I'll show you a video in a minute. The pelvis will drop here and then this femur bone will cave in and you see the twisting that happens at your knee. That's what happens.  So the biggest solution for people when you come into the clinic and you have arthritis, a meniscal tear, a collateral ligament tear, and ACL tear is weak. Absolutely have to focus on strengthening the gluteus medius muscle right here to stabilize you. Aside from knee pain, this gluteus medius, as you could probably see, if your pelvis is dropping like this is hugely important in preventing people from getting back pain or lumbar instability when they're walking. That's another complaint for another show.   So let's look at video number five to see a little bit more of that. In this video, you can see how her foot is turned out on the right side, the side away from the cane. And you can also see how her knee is diving in. If we loop that, you can see the knee diving in as she's walking forward on that right side. There's a little bit of a crooked angle like she's holding it out. And how that happened is that happened over time. That was not one incident. Over time, that gluteus medius didn't fire, her knee caved in like I showed you on the skeleton, and now her foot is kind of just leading the path of getting severe osteoarthritis in the knee that could lead to a knee replacement in short course if she doesn't strengthen her gluteus medius. So now if we go to the next video, video number seven, you'll see this is her good side. And so there's a little bit of a pelvic drop, but not much. You see her knee diving a little bit, but we go to the other side where the foot's out.  So here's the good side. It's relatively straight. The foot is definitely straight. Here we go on the right side. The knee goes in, her hip drops, and then that's an unstable way to be going through life. And so she has right knee pain when she goes up and downstairs. She has right knee pain when she gets in and out of the car.  And the way to rescue your knees, even though there's already damage in the knee, is to strengthen the gluteus medius to support the knee. So now let's go to video number eight right now, where you're going to see a hiker. This is her good side. And so it's a little wobbly. The balance isn't there, but you can see it's relatively straight, relatively straight. Now if you go to video number nine, you'll see her troublesome side. And you can see how her pelvis on the opposite side is dropping. Her shoulders are even leaning over to the left, and her knee is wobbling in. So if we go back, we close the videos, I can explain a little bit more on the skeleton, where now that you've seen the videos, I can explain a little bit more how you can see some of in those videos, this tilt right here. And some of it looks like because like the shoulders will move over to the side. Those are things that I identify very quickly in the clinic when I see people walk. I can tell what muscle is not working when, just by if they kind of hitch over to one side, or if their shirt is wrinkling on one side, I can tell you which muscles in the body are not firing. And so I know what muscles to activate in their body, because our bodies are not perfect, but they are our bodies. And they're not symmetrical all over the place. But everything that we do in physical therapy, physical therapy for a better life, is to try to help activate the muscles in your body to help you be more symmetrical, and to help you be more aligned. So it ultimately leads to improved function and quality of life. So while you saw in the first video of the crooked knee, that knee is crooked. But if we strengthen the gluteus medius, get the foot going straighter. So it activates the gluteus medius pretty soon, you don't get this twisting at the knee anymore, that's going to continue to give osteoarthritis and pain while you just go about the daily routine. And to show the hip drop again on a skeleton, when this side drops down, when you're standing on this leg, that's what creates this angle, angulation, where the femur bone rotates in here. So like you're going in like this, that's the crooked knee that we saw on the video. So in strengthening the gluteus medius that attaches right here, the one that moves you out to the side but stabilizes you, you're stopping that excess aberrant motion from allowing the femur to move in and really twist your knee. So let's go right away to video 10, where it's going to tell you the exercises that you can do simply right now to rescue your knee. The secret to healthy knees is strong hips. And I'm going to explain to you why. You learned in the picture how the gluteus medius stabilizes your pelvis here on your leg. And you also saw in the previous video how when that is not happening, the knee can dive in and cause osteoarthritis or that crooked knee that gives you a lot of pain. But our bodies are not perfect or even all symmetrical. And so strengthening these muscles, even if you already have a crooked painful knee, every little modification and strengthening these muscles will help get you closer to symmetrical and closer to more aligned. So you don't have to have pain even if the leg is still crooked. So you want to strengthen the gluteus medius. And these are some of the simplest and best ways to get that muscle working. So first it's great to lie down to isolate it. So you can put a band around your ankles or if it hurts your knee to do this, you could put a band above your knees. So there's less strain. I'm going to put it on my ankles.  And then you're going to slide apart and you're going to do 10 times. Then you're going to keep buns tight, press down, slide your right leg to the right for 10 times. Then you're going to repeat it with the left where people make a mistake as they lift and that is not your gluteus medius. That's your hip flexor.  That's number one. Number two for gluteus medius, I'm going to put it above my knees because anybody that has painful knees knows that down here the exercise is harder. Up here it's a little bit easier.  So I am using my right hand to stabilize me. Keep your knees straight and you're going to lift up and down. So it's the same exact muscle we are getting.  You can also help your hip rotators. It's called the clamshell. Clamshell, open up your knees, strengthen those hip rotators to straighten out this femur bone so your knee is not so twisted. But there's many hip rotators, so you want to work hip rotators when your hip is in the flex position and you also want to work them here like when you're standing, you're not in a flex position, you're in extended. So you want to do clamshells in both positions like that. You can also work your gluteus maximus and engage your hip abductors and rotators by sucking your stomach in, lifting your buns up and doing some hip rotation here.  And then finally, to make it more into practice and more functional, you could put it around your ankles, keep your feet straight.  If you don't have a long hallway to walk sideways, you can do what I call an out, out, in, in. Just keep some tension on the band.  You can put your hands there as a guide. Out, out, in, in until you feel the burn and then switch out, out, in until you feel the burn. So you can strengthen your hips to save your knees. Aloha. I hope that all of you who have sore knees or you've noticed that you're standing with one foot turned out will take those exercises to heart and practice them. I mentioned in the video, you don't need a band. It just adds resistance. So if you add a band, you can do less repetitions. But the key is that you do some of these exercises to improve the function of your body. The largest thing I saw when the pandemic started was people coming in with this knee pain. And I would see them walking like I showed you in those videos, like the crooked knee, the foot turned out, the hip caving in. And these are people that had moderate to severe osteoarthritis on X-ray and you don't get it that fast. You don't get it in three months of starting a walking program because you can't go to the gym. And so the osteoarthritis had been there.  We all stand different ways. Sometimes I'm in an elevator and I look down and I'll see my foot's turned out and I know what to do. And that's why I'm sharing it with you. So I will turn myself straight because I know that my muscles will fire in an improved fashion when I do that. But these are the little things, the small little nuances that we're doing throughout the day that we are not aware of that are causing painful arthritis and painful injuries to our body parts. And one of the coolest things about being a physical therapist is that we can educate you about the fact that a joint up here and a muscle up here is hugely responsible for the happiness of a joint right here. So you've got those rotators as many of them that I mentioned in that last video. And you want to strengthen those rotators because when your foot lands on the ground, there's a thing called pronation where the arch rolls down. And when that arch rolls down, it takes this shin bone and it turns in a little bit. And when that shin bone turns in a little bit, this thigh bone turns in a little bit. And that's the message that turns on your gluteus medius and those rotators and abductors to slow down that motion and stabilize your pelvis right here and your spine on that one leg. But in that picture that I showed in the video where the foot was turned out, you're already more in a pronated position. So you don't go through that pronation where the arch is lowering. It's already kind of lowered because the foot's out and it's sending it. The message to the brain is in getting there for this rotation to happen because it's already landing more rotated. So you don't get the stretch reflex that turns this muscle on that stabilizes you. So I know it's kind of complicated mechanics, but I wanted really want to hammer home that to everyone who has knee pain, including myself. I've suffered from it. My mom, my patients, it's the biggest thing that I hear without even doing these exercises. When I have someone turn their foot straight when they're walking, the biggest thing I hear is, you know what, my knee feels so much better when I turn my foot straight, but I'll forget and it'll hurt and I'll turn it straight. I'll never forget actually, I was in Connecticut and there was a young gentleman in his fifties and he was carrying his daughter up and down his stairs. She would fall asleep in the car on the way back from school and his knee was killing him and I watched him walk and he had his foot turned out like I showed you in the previous picture. And so I said, gosh, you know, did you have knee surgery or foot surgery or hip surgery? And he goes, no, no, no.  He had the surgery on his big toe and he had bunion surgery about 10 years before and anybody that's had a bunion surgery knows you can't really bear weight. They've got you in this hard shoe.  So I had him turn his foot straight. He had terrible pain. He said it was like nine out of 10. I had him turn his foot straight to walk up downstairs and he had no more pain. And that's an extreme example of turning your foot straight, stopping the abnormal rotation at your knee that's causing you to have pain and osteoarthritis. But I want everyone to hear the message that it's very simple. If you look down and you have got one foot asymmetrically turned out like that, you need to turn it in. If both your feet are out like that, people have feet that are toeed out. I was born toeed in. You can just adjust it a little bit inward. You don't want to take your anatomy and completely change it to a different one. The key and the thing to be aware of is that if you have your feet like this and one foot is asymmetrically turned out and that's the side of the knee pain, you want to bring it in because you want to activate the right muscles to stabilize your body so that you can stop having knee pain. You can prevent osteoarthritis at your knee. You can stop having hip arthritis or back pain as well. So I hope that helps. I want everyone to rewatch these videos as much as they can. And I'm going to wrap it up. Thank you so much for joining me here in my hometown. Thanks to Think Tech Hawaii and all our sponsors and donors for allowing me to bring this to you today. As always, life is better when you listen to your physical therapist. Thank you so much for watching Think Tech Hawaii. If you like what we do, please like us and click the subscribe button on YouTube and the follow button on Vimeo. You can also follow us on Facebook, Instagram, Twitter and LinkedIn and donate to us at ThinkTechHawaii.com. Mahalo.


I would like to introduce myself and my report today. My name is Lee Kwong Ha and I'm doing a DPI for Blackberry Company in Ontario. So Blackberry Company is selling cloud services for different kinds of database including Postgres, Oracle, MySQL, SQL Server, and Cassandra. So we have around over 3,000 software and working on around 800 staff of computer in IT. 800 above total of 10,000 are doing computer in IT in which around 80 staff are doing database. With other people doing cloud service, networking service, assurance, and so on. Storage supplies. So I'm working on database administrator of Postgres and we have a plan that we will move mainly the software into Postgres. So around a few thousand software of Blackberry on the cloud will be changing to use Postgres within this year and next year. Because like seeing the whole last year, we're moving only a few tests, everything. And my work mainly about this report to create the image for Postgres to sell on the cloud for the Blackberry cloud service. So about the report, I would like to present our models, our implementation, our performance testing, and the conclusion. So we have been developed for a few years the first cluster called Keep Alive Red Manager. It is same containment on the software on Postgres database of Blackberry for a few years. And we are testing the HESA Proxy and PC Pouser to bring the Postgres image into production. So this is the model of Keep Alive and Red Manager that we have been using for the past few years. That we use replication by Red Manager and Open Source to our Postgres to do master and standby. Including host standby and asynchronous standby with a witness to avoid the split plan errors that sometimes the witness will choose the more privileged standby to promote on failover. So because Keep Alive is installed on this cluster, the requirement of Keep Alive will require that the subnet of the whole cluster should be in the same containment. It means that we will not be able to cross zone with this model. So let's say on failover where the master fail, the Keep Alive will switch the IP to the host standby. And the Keep Alive on the master will notify master script to promote the host standby to be the new master. So we come to check and try to create the image for HESA Proxy PC Pouser. And we will discuss which solution we choose to create this image for Postgres. We use HESA Proxy like high availability Proxy for load balancer. And we use PC Pouser, a new version of Postgres to do connection pooler. It is more compact than the previous version PC Pool. So it requires lower memory than PC Pool. On our design, the front-end servers are inside the same subnet. But the cross containment, it means cross cloud zones can happen with the back-end. That the back-end server can be in different subnets.  This is the model. On this model, we see very clear that on the front-end, there is Keep Alive. And because of Keep Alive's requirement that the HESA Proxy 1 and the HESA Proxy 2 will be in the same subnet. But the load balancer, PC Pouser here, the back-end can be in different subnets. So in order to compare between PC Pouser and PC Pool, we see that PC Pool can distinguish which one is the current master of the cluster. And PC Pouser, we cannot do that with PC Pouser. For PC Pouser, we have to make health check. And the HESA Proxy will use telnet and HTTP curve to health check each back-end server and return the code that this server is writable or this server is writ-only. By that way, we can share the workload. In any case, and load balancing happens, even failover happens. Or even any of the server fail, then it detects right away by health check and continues the load balancing transparently without any error to the software. So for our implementation of this model, we would like to explain our development of Keep Alive and Red Manager first for the past few years. And then we try to report our research on HESA Proxy PC Pouser, including how the read request on load balancing, how the write request by using port splitting of HESA Proxy to distinguish between the read and the write for PC Pouser. And then the statistic report on HESA Proxy. The two kinds of failover with HESA Proxy, the farm failover and the auto failover. Then we would like to go into the details of implementation of the front-end cluster and the back-end cluster and how to install and share with Nex. And we sweep it back. So at the end of this part, we will come to the approach of how to create our auto image for postgres on cross containment. So for Keep Alive, we develop Blackberry Cloud including 20 network zones in which there are 16 productions, two laboratory zones and two restrict zones. We develop this called Saturn ring software, a software that tries to start information about the storage request of customers. This customer requests how many storage, how many devices we start inside the Saturn ring software. So on each zone, each cloud zone, we need to run a version of Saturn ring to know on this zone which customer how many storage they are required. So these 15 zones are low bone. It means half of them will be located all over the Canada and the United States. A few located in Germany and Amsterdam and a few located in Singapore, India and Hong Kong. So it means that the customer all over the world can have quick access from our service. So this is our implementation of our HESA Proxy and PC Pouser. On this one, we see that on the front end, we only install on HESA Proxy 1 and HESA Proxy 2 keep alive to create a version IP. And then the HESA Proxy here forwarding forwarding to the back end and load balancing. On the back end, we have PC Pouser, Postgres, Rep Manager to control the failover. And then Rep Manager, this is the watching dot service of Rep Manager. And the sweet neck here, we don't have PC Pouser. On the wheat necks, the database is empty because we don't need data on the wheat necks. And we don't hope that the wheat necks can be the master. So we don't put any data here. And the replication here through the log send from master to standby. So at the first observation, we see that the tune, the tune's in stone on the front end and the tune in stone on the back end. There are totally two different sets of components. So the first question is currently maybe many one will only use one image to do all of six virtual machines here. So is it good? We need to test it. Because this one is HESA Proxy, keep a line, no Postgres. This one is Postgres, PC Pouser and Rep Manager, where we come to two different images. The front end image and the back end image should be two different. So we can tell that we test it. We use OpenNepola to create the virtual machine. And then the first step, we use only one image, like a lot of place. And we use the OpenNepola test script to detect if this is the front end. We remove the Postgres, Rep Manager and PC Pouser. If this is the back end, we remove the HESA Proxy and keep a line. The first thing we detect is that it runs slow. Because when you create the VM, there are different VMs with one image, it will run slow. When you create the VM, you stay there and wait for why. So it's not good. And then we come to try to make two images. The first image only contains HESA Proxy, keep alive. The second contains only Postgres, Rep Manager, Rep Manager D and PC Pouser. When we use two different images, we see that the time we create the VM, only one third of the first approach. Only let's say around five, six seconds, we have a new front end server right away. And after less than 10 seconds, we have right away a back end server. So it means that we don't know which one can be better. Because if you do scaling, you manage two images at the same time, maybe more more difficult. Then the quicker time is obviously one third of the... Only one third if you use for timing, if you use the two different images. So we tend to develop two different images, and we try to develop like we will try to manage more work to have the cloud solution maybe better, maybe better. So this is how the load balancing happens. Suppose we have the keep alive IP on the HESA Proxy 1, and HESA Proxy 1, we listen on the port. This can be any port, but I just put 6432, but you can change it in your setting. So we application send a request. When HESA Proxy receives it, it will be distributed into three loads. So we test it is load balancing. Okay, this is how the drive, we use the different port, splitting the port to distinguish between the rigs and the drive for PC Pouser. For the old version, PC Poon, we don't need to do the port splitting because PC Poon have declaration inside the setting for the master. So if we send the drive request into a different port, it sends directly to the PC Pouser on the master. PC Pouser then forward the drive request to the database of the master and write it down. After that, the master send logs to sync the host standby and the async standby. So we have the port splitting for HESA Proxy. Hold on, I would like to, oh sorry, I need to go back. So how can we do this? We combine this with the health check to know which is a current master. The health check set in by CNETD will send an SQL statement to the current database to see if it is a writable database. And from the front end here, it uses telnet and HTTP protocols to check the health check on here and know which one is a current master to write on. So in case this is the current master, the health check will detect and the writing will come to here. Then we can do monitor by statistics code reports of HESA Proxy. This is the setting. We set the user admin with the same password admin to look at this and on this we can also verify the load balancing everything. We put the link here. Now we would like to come to testing the two kinds of failover of HESA Proxy, the first one called farm failover. Failover means that when this master is gone, the host standby will be promoted to be the new master. The question usually for beginners like this, is it important because if you set up a wrong image or postgres, can the asynchronous standby here be promoted to be master? The answer is should not. Should not. And then... So on read request, the happiness the load balancing will share into two back end here only.  So we have the read now. This is coming to PC PowerShell on the back end. And then forward to the postgres port, 5, 4, 3, 2, and then load balancing. So HESA Proxy set it by doing back end cluster. So there will be the current back end cluster that do a check. If the current back end cluster on PC PowerShell check and saw is not all right, then it's good to the back end cluster and do the reading, avoiding the fail server here. For auto failover. So suppose we have many standby, we don't know which one is going to be the master. So the auto failover attach to the health check and the write request more than the read request. Because for the read request, we only health check on port 5, 4, 3, 2, postgres and that check can be no need to write any script. You can flush indirectly in HESA Proxy. But for write, we need to send a sequence statement to make sure that that server is writeable. So for auto failover, we use health check here. Check which one is a writeable server currently. And then we write to the correct server. That is a new promoted master after failover. Then the host standby send log file to the async. The log files are sent between postgres server to make sure that all the database on the tile is the same. So when you create postgres image, suppose that we had to test everything. Even the send log, he had to test. So currently the question is, if you set the one log folder size, how much will be the best parameter? Let's say I have plenty of storage. I put the PC1 folder 40 gigabytes. And then I say by that way, I can receive up to 36 gigabytes of log file. And then by that way, then I have huge capability and I will be strong so I can set PC1 log parameter which is around 2000 by my calculation using formulas of log file size that you can find from postgres homepage. And then we go to test it on the real postgres image. What happened? First day, very good. One more week, very good. The third week, why is our cluster frozen? We opened it and saw the IOPS reach very high. Why we get very high IOPS? Because we believe that we are very strong. We set up, now we start in the system nearly 40 gigabytes of log file and any tile one log file create into the same folder is very slow. And when you send log file from the master to the standby, it became very slow because it access into a folder of 40 gigabytes of log files. Log files together. So then if that put into a real application, what will happen? The thing is after a few weeks, application will start to have exude when the database becomes slow. And you know the PC is locked to clean it. You clean manually. Difficulty. So currently on the real tile application, I would prefer to set the log file size. PC is locked. Number is 500 only. And then in order to have the real tile every two minutes, I can have a backup that whenever crash happen, I can recover every two minutes of data. So I use snapshot and combine to a small number that will guarantee the speed of the application on our Postgres image. So now we go to the details of the front-end cluster implementation. We use Keep Alive. If the HSA proceed one fail, it doesn't matter. This one only one to second to sweep the VIP here because the server here know data on the front-end. By default, the master will keep the version IP. So the Keep Alive, they are setting inside Keep Alive to speed up the switching IP of the master and the master in the backup here. For back-end, we install PC Pouser to do connection puller. So when we put in the image PC Pouser, we test. We test to make sure that with and without PC Pouser, is it PC Pouser will improve the performance of the back-end? And we see that yes, PC Pouser improve. So if some people ask naive question like this, I throw away the PC Pouser, then I just go one step directly into the database. I don't need PC Pouser and I suppose I go that way, it will be quicker because if you go PC Pouser and then you forward, it will be slower. So that question is not right and the belief that PC Pouser, we test and see the improvement in performance that the cluster running smoother, everything becomes smoother because the connection can be managed by PC Pouser. For the witness, so we suppose that a witness can store many clusters inside and control failover for many clusters. So we, at first, we still had HSA Proxy PC Pouser cross containment here that you see the cross containment here, the subnet C4918. Here is different subnet 122183. So we have the witness here, it's share one. And then suppose we connect it to a second same containment, keep a live wrap manager. Okay. So which way will be the best way to create the share witness that also we made a lot of tests to make sure our image will run smoothly, automatically have a witness with an empty database. So we currently, our image is on Postgres version 9.4.6 and inside version 9.4.6, this wrap manager config file will be priority is going to zero. The new version of Postgres says this must be at least zero, but before that, this is minus one. And the minus one are the zero to avoid that the wrap manager have no choice and decide to witness to become a new master. This one to avoid the witness to become new master. So we, inside the witness, we put the first wrap manager config file to manage the HSA Proxy and PC Pouser. And then this is inside the first folder, main folder. Then we put the second wrap manager config file in the keep alive wrap manager in the main folder, wrap manager witness folder to have the second different files. So on the witness, we have two different files upsetting for two different clusters. And then to create, we use the statement, wrap manager witness create. Then the first statement we pass in, this is the master for the HSA Proxy PC Pouser cluster. The second, we pass in the IP for the master of keep alive and wrap manager. Then we pass in on the first statement, the wrap manager config file for the HSA Proxy PC Pouser. And we pass in the second file for the keep alive wrap manager. And this will create a share witness. Then on the same share witness, we use wrap manager cluster show statement to show the two cluster on one server. We pass in in two different, the first config file of the HSA Proxy PC Pouser and we output the current back end of the HSA Proxy PC Pouser 1818319. And then we pass in the second config file of the keep alive wrap manager and we show the second cluster of 187188189. And from the two we see the share witness, same witness 191191. So how to do sweep back? This is the pawn. If we try to develop our image into scaling, let's say if we scale horizontally, then scale up can get the error like once we try to scale up, for example, at that time our image file suddenly inaccessible, cannot access it. Then the VM create into an empty standby. And when the load balancing happens into an empty standby, it returns in one night 100 errors back to the application of customer. So this is related. And then if we do scaling vertically, then the config of the scale down, when we add more RAM, when we add more hard disks, it's easy to add. But when you delete, it is difficult. Because suddenly a subveraning you delete is RAM, we will stop. So it means that we also test this one for the ability of scaling. So the step to sweep back for HSA proxy and PC browser, we suppose the master has been failed for a while. So at first, after we start it on, we have to reclone to get the data up to date. Then we start service. And we had to follow the new master from the failed one to make sure that on the cluster always at one time, only one master. So the failed master is now restarting at a new standby. Then we come to the next step that we had to return the cluster at it was that the master should be the master again and the standby, the promoted standby need restarting back to standby. So we stop service on the promoted master, that is the host standby. We promote the host standby, sorry, we promote the failed master back to master. And at this point we have one master, that is the master is back. Then we clone the host standby to the master because the host standby now need to come back at a standby. So it requires a clone statement. A clone statement will say that this host standby is a read-only database. So we start service on host standby and we follow the master. Now the cluster becomes, as it was, the master fix sweet back and the standby return a standby. If you have any other standby, we will also need to do a rep manager follow. So this is different. After a lot of changes started of the whole cluster, we on the front-end cluster, I will do a restart HSA process service. When we restart HSA process service, that we will ensure that the load balancing will be smoothly within the next week. Because a lot of changes started restart on the back-end, then when we restart HSA process on the front-end, that the whole cluster will be refreshed and for the whole next week load balancing will be very smooth. So now we now come to the decision. Now we have two images. Indeed, one image for the keep-alive rep manager and two images for the front-end image and back-end image for HSA process PC Pouser. So currently we have 100 software on the keep-alive rep manager and we haven't got any of them on HSA process and PC Pouser yet. So we are comparing to verify which one is a better one, which one is more reliable, like that. And we do checking the throughput, the input output, the CPU of each cluster to compare. We do this by... I would like to report here the J-matter, but we also have the PC page that generates very similar CPU and input output to J-matter. And then we also use Wally Hoss and Rafa Na Dashboard, the Resale CPU observation, everything very similar. So we show here the J-matter that we use J-matter formula throughput is the number of transitions per second. And the k-pi per second is a throughput multiplied by average pi divided by 1024. You can find these formulas back from Apache Homebase. You search for Y and then you will see it doesn't state it's into a formula, but it says one line like this. The throughput is the real number of transitions over the real execution time. And then with a little bit test, you know that here is in seconds. You can find all of these two on Apache Homebase. So on J-matter, we do HTTP requests, do tests for read-only, symbol-write and read-write. For read-only, we do without data execution loop and with each row execution. For symbol-write, you distinguish between insert and update and the list. Why we need to distinguish between insert and update and the list? Why we don't have symbol-write with insert update and the list together? At first, I borrowed this idea from PGPange. I saw that. Why PGPange? When we test, we saw two cases. Why we don't use one case? And we discovered that the delete throughput, it is much higher than the insert and update. It means the statement nature are two different. The number of transitions per second will be very different for insert update in compared to delete. So I agree with PGPange that we should divide into two cases for write. So because if you combine two very different like this, then the result is depend. Sometimes throughput high, sometimes throughput low. And finally, you discover that the insert update get throughput totally different to delete and you have different test result if you combine it together. You expect to get same result anytime you test. So because of that, the read draw also has select insert update case and select delete case. For each test in this, we measure the throughput, the CBU, the threshold, the response type, the bias throughput, the response type percentage and the response type over threshold, the resistance throughput over threshold. So we have all together for Jmeter, PGPange, Rafana, Dashboard, Wallyhose, we have around 200 charts. But we show here maybe we show to you 20. 20 and only Jmeter because they are very similar. Another one looks a little bit better than the rest, but only need one of them is enough. So this is the throughput. We measure on one million tests. The size of test database is 7 million samples and we run one million requests on 7 million samples database and then we have the throughput. Lowest is 1,000. Highest is 2,100. So we have the throughput like this. Then this is the throughput, transaction per second of keep a direct manager. This is the CBU of the keep a direct manager. This CBU show only the master. So then keep a direct manager will not offer load balancing because the 10 to 20 percentage here of the standby only show that the log file send communicate with the master. This is only for log file sending. No real withdrawal here. So load balancing is not offered by keep a direct manager. This is a threat chart of keep a direct manager. After one minute of test, the number of active test is 100 and then nearly six minutes it readily drop until the test of one million tests done. This is the respond time chart of keep a direct manager. This is the bias throughput over time. This is the respond type percentage of keep a direct manager. And this is the respond type over test. On average we have 37 milliseconds of respond type at around 85 tests. This is the transaction throughput over test. On average we have 1700 seconds of transaction per second of around 90 tests. This is the failover. So the failover of keep a direct manager surprisingly from it happened from six seconds on our cloud until maximum nine seconds. So the failover time happened less than 10 seconds. And I think that we also use order code on our cloud and order code failover keep a similar like this a little bit slower. But then it means that post-crash time is rate that if we can get a failover time less than we do a test like this per minute we send 120 update statement nonstop per minute to the database cluster of keep a direct manager. And then we do the failover happen. Okay, now we set the optimization here keep a direct manager failover less than nine seconds the application the user continue to use a software no error at all. No warning, no error. Because if the failover time less than 30 seconds the application in Python, the Django will not detect the changing of database master. So it pass. So then it means that on our first image we got very slow failover and then the application in one minute return 120 errors with 120 auto updates we test. So we had to tweak the config until the failover reach around less than nine seconds.  So you see when the keep a lie detect that the master fail, the CPU of the master reach to 37%. It means keep a lie run a notified down. Then the hard standby it detect that in the cluster now there is no master. So it reach CPU here around 29. And then the second percentage of CPU of the hard standby is around 18%. This is the red manager promote inside the notify master of the keep a lie on hard standby. So after the second one, this is the promotion of the hard standby, 18% of CPU. So now we come to the second cluster. Our new cluster has a cross CPG browser. The throughput is still from around 1000. But it reached to only 2300 in all the tests. Then the first test we are doing is, is it load balancing happen? So we use sista. We use sista and this is given to 30 and given to 14, version 14. Then we measure that at the same time, when we send in to the database, there are 1100 requests on the master. 1,900 risk on the hard standby and 800 risk on the async standby. So load balancing is sure. It happened right away in front of us. So that means that our setting is right. So this is the load balancing. Now we get into the process and the throughput of the HES-APROC CPG browser. This is the front end CPU U6 that only the HES-APROC 1 receive request from the application because there is no data on the front end. So...


Hey guys welcome back home again TV the only place on YouTube. We're all key culture collides. I'm Shannon and today I know it's been a while. I've been busy. Sorry today. I'm going to review once and always the new Power Rangers the Film whatever you want to call it out on Netflix It was kind of a letdown I want to say First and foremost The old the original Power Rangers The acting wasn't by any means Oscar worthy or anything like that But it was still entertaining With once and always The acting was way over the top I mean it was just horrible. It felt like they rushed it through so much. I really wish they would have taken a little bit more time on it and Got it right The the actors I know there they can do a lot better they've been Acting for over 30 years now They could have done so much better, but This once and always Like I said, it just seemed rushed and really kind of phoned in almost Let's talk the Megazord Megazord looked absolutely horrendous the CGI they used to Create the Megazord it looked in some it looked very short and plump In others it looked way too tall and skinny and Is it wasn't very? It wasn't very good The original Sentai footage With the actors in the actual Megazord costume Was so much better than the CGI they used to create the Megazord the individual Zords looked okay But the Megazord just it wasn't there Also Filming this on my computer real quick Mmm, let's see they really should have turned it into a A hour and a half to two hour film Like I said, it just felt really rushed the dialogue there was so So much exposition Like almost like hey, what are you doing now? You know that type of crap And I mean the stories like I said this the stories and all that from the original Power Rangers Weren't the greatest they were cheesy But they were so so much better than once and always You know, I've kind of browsed on YouTube a little bit and Seen a couple reviews of people saying how great it was and all this And I think that's just the nostalgia speaking in all actuality I am an OG Power Rangers fan. I remember sitting with a bowl of cereal the day it premiered and right in front of my TV big gold console TV and Watching it I remember seeing all the previews for the original Mighty Morphin Power Rangers and Feeling that it was going to be like a dinosaur version of Voltron, you know, and then seeing the first episode for the first time and being amazed and I was right there in the height of Power Rangers popularity and Seeing the Mighty Morphin Power Rangers the movie for the first time and Being there where you couldn't go to the store and just pick up a Power Rangers toy because they were all sold out Every week and to this day, I still never actually got the tall Mighty Morphin Power Rangers or any of the megas any of the Zords because of that and I the only Ranger figures actually I got from the original Mighty Morphin era were the flip Morphin style ones that they re-released But this was just a huge huge letdown for us original fans I was talking to Jared who's been on the show a couple times and He agreed it was definitely overrated I There were some things I liked I Like the fact that first of all, we never get to we never find out what SPA stands for All we know is that Adam and Aisha are across the galaxy Helping other planets and stuff. That's all we find out and You know Zack is a congress or former congressman He after a trainee dies saving Billy he takes it upon himself to become What What's her name? Minns guardian and so he retires from Congress Billy the command center isn't actually a command center. It's Princeton technologies Corporate office and stuff the upstairs is the corporate office and downstairs that the other executives and the employees and everything don't know about the downstairs level which is like the power chamber and Rita was Rita comes back because Billy and alpha 8 are trying to locate Zordon and bring him back Instead they find Rita's essence when the Z-wave hit it spread out the evil essences across the universe Rather than actually destroying them And so that's how Rita comes back and she takes it She's absorbed into alpha 8's body and I do like how the ending almost left ambiguous when Rita's destroyed because You don't know if she's actually destroyed or if she teleported out at the very last second We don't actually see her Body like explode or anything. We see energy explode, but we don't see her robotic body explode The concept for the story is good I did like the concept but everything else it was just extremely rushed and I Feel like Netflix could have done a lot better If this is what we have to look forward to in future ranger projects I Could easily do without it That being said I Hope they learn from the mistakes of once and always and Try a little bit harder next time I could easily see this Perhaps leading into a new Mighty Morphin series with a new generation of Power Rangers taking up the Mandels Maybe with Zack as the mentor and Billy Kind of providing the power chamber to them Since men's taken over as a yellow ranger and all this I just Like it's the script was the script is terrible. I Don't know how many others felt that but the script was horrible There there were some good lines some funny one-liners and everything And the idea that men couldn't morph until she Performed a selfless act or whatever that that was pretty good. I like that But the rest of it the Over The overboard Exposition and all this just relaying the backstory over and over Every every ranger's backstory and all this the acting it could have been so so much better So for once and always I'm really gonna give it a Three out of ten honestly I Will I watched it first thing this morning? I Got up and Got my kid off to school and was watching it and just finished it I Hope in the future if they do another one of these once and always They do it right they bring back the original I guess the original four since Tommy and or since just David Frank and Tui are have passed away But I don't really know much what else I can say about it because it was just If you think the original Series is bad and cheesy This is Way past This isn't even on the radar I did like the Little cameo by bulk of Skull they don't actually make a Physical appearance, but there's a billboard, you know both the skull own their own I think restaurant or something like that. I'm not I it was kind of a blink and you'll miss it type thing That was nice The juice bar was nice. The lighting could have been a lot better in there And yes, it does look a lot smaller like Zach says or was it Billy that said that? Anyway Those are my thoughts on once and always this summer I am I'll be graduating With my bachelors in psychology Next month so this summer I will have a lot more time on my hands to bring you guys more videos I Didn't get a lot of videos in the last summer because I was working on three different books Those are out now. I just look up S. M. Cornthwaite on Amazon you have the Hollow screams series for children Very similar to goose bumps are you for the dark all that stuff The haunting of hell's hollow, which is for very mature audiences Tales from hell's hollow, which is kind of a all ages horror short stories You know and then my first book Jack the Ripper the man behind the blade check them out They're all available on Amazon so Take care geeks


What up fellas, it's your boy Johnny and it is officially August. I know, it's back to school season, sad days for you. But that's totally okay bro because I got you. Everyone's been posting these videos in July, trying to give you those back to school feelings early, but not me. And back when I was in college, man, boy, I didn't know how to dress. I mean, I still don't, but y'all remember when the Janowskis were hot? Yeah, those were the days for me. I didn't have a guide. But now it is time for you to get back into school mode because today I got a few cheap ways to look fresh for the back to school season. Starting off with number one is something I like to categorize as a unique fitment. We all know what the school kids are going to be wearing, right? Fitted clothes. But honestly, I'm going to say it's straight up bland. Unless you lift seriously, I'll be honest, fitted clothes aren't going to look amazing on you. Now, don't get me wrong, fitted clothes are still going to look great on you. But for me, I also like to wear oversized clothes. I like both. I'm not going to pick one over the other and wear that every day. I'm going to mix it up. So by unique fitment, I mean anything that isn't your standard skinny jeans and a t-shirt. So you guys already know that oversized t-shirts look amazing. And if you're not into it, I get it. That's why I recommend oversized crew neck sweatshirts. They look super fresh and I actually think it looks better as an oversized piece. You're going to buy clothes anyways, and there is no price difference with wearing an oversized shirt. We also got crop pants, which can be a DIY project for you. Something a lot of guys still aren't doing, including myself, but I'll get on that. And if you aren't into crop pants at all, make your pants look different by cuffing them. Also, do not forget about your cargo pants, okay? Just be like me and sleep with them every night so you don't forget. Seriously though, adding some different fitted clothes to your wardrobe expands your realm of outfits. It also looks great and is something new to try out. Now, the second cheap way, like composing an outfit all year round, is to accessorize. Now, of course, we all know your bracelets, rings, chains and all that. Wearing these will already make you stand out. We know that.  So you all know I'm on this bandana train right now. It's a great way to add a splash of color or a pattern to your outfit. And it can be placed pretty much anywhere, from your belt loop, your arms around your thigh, on your head. As long as it ain't nothing that'll get you associated with some gangs, you're good, bro. But bandanas aren't the only way to add a splash of color or a pattern. There are so many overlooked accessories that can be used to contrast or even complement with another piece, resulting in a more cohesive but pleasing outfit. And I'm talking about your beanies, fanny packs and extended belts, shoelace belts, and an overlooked piece is the crew socks and even a tote bag. So I'm big on this too, but color crew socks can be used to complement another piece on your outfit or to make the fit flow well from top to bottom. But any of these larger accessories can be purchased in various colorways. And honestly, rolling with minimal outfits plus accessories is super pleasing versus a super overhyped outfit with all these accessories can be a bit too much. Tote bags are also pretty fresh as well.  You can just use a tote bag. It's unique. It isn't your regular backpack. And boy, look at this cause one. Cheap and a dope colorway. So just be careful with the accessories. If you got a fit with a ton of hype, let those pieces shine. If you got a very simple outfit, add on some accessories to make it more balanced. Also, don't overpay for accessories, man. I just get mine from Amazon. Next up is to learn how to layer because based on the calendar, you spend more days in school during the colder seasons because summer break is for reminiscing on why I didn't ask you to crush out at the beginning of the semester versus the very last day. As you said, she ain't feeling you because she thought you guys were friends and you got friends on. I don't have any experience with this at all. OK, but seriously, you got the edge of summer, all of fall, all of winter and just a little bit of spring. It's mainly cold when you're in school, so you're going to want the basic aspects of how to layer so you can compose those clean, cohesive aesthetic outfits. I'm going to remake my video on how to layer when the time comes.  So instead of buying more clothes, just combine a few pieces and layer them so you can stay warm, keep your wallet happy and look fresh as well. OK, after all that, the next way is to keep your fits minimal and simple because kids nowadays are always just trying to flex because they're insecure about something. You don't need to buy anything crazy or hide. Just focus on the main principles of color blocking. And now I finally have a video to reference on this. Sorry to keep you all waiting. But if you guys want to learn the basics of color blocking, there is a link in the description. Check it out. But to make it simple, mainly focus on contrast, basically lighter versus a darker piece. It can be just plain black and white to keep it super minimal and simple, but still fresh. But if you want to add some color, just make sure one piece is a lighter tone than the other.  Pretty much any color will contrast against those pants as a top.  And that is why white sneakers are so awesome and why everyone needs one in the wardrobe.   Last but not least is to be in the right headspace. First off, you have five days a week of school. Why don't you mix up your fits, bro? Second, if you are dressing to impress others, then you're already doing it wrong.  And you need validation from 18 year old kids to make yourself feel something. And third, you're in school, raids over the fits. But having the right fits gives you the confidence to get good grades. All right, fellas, I hope this video helps you out.  You really got to grow up when you graduate and college really is the last period of time you get to be a kid. So enjoy it because I never got the chance to, all right? Give this video a like, follow me on Instagram at FlavaJohnnyTie.  Subscribe to the channel, and until then, stay flying. I'm out, bro. Peace.


Okay, folks, Larry Pesavino for TFNN, mid-afternoon update here. We've got the Dow Jones near the high of the day. We got the NASDAQ in the new high ground and the S&P 500s within a heartbeat of closing in a new all-time high. Our guest today, direct from Vienna, Austria, will be Cycles Research King, Mr. Bill Meridian. He'll be on the show here in just a few minutes as soon as we come up with the first break. The Treasury bonds continue to move lower, talks of lower interest rates due to the Fed starting to bring their, what do you call it, dropping the price of trying to get my thoughts together here. Excuse me, folks, I've got a little bit of an analogy today. That's what's wrong with my throat. But they're trying to get the Fed together to start dropping interest rates. Now, if they start dropping interest rates with the market going up, that's going to be a very unusual thing. It's usually they do that the opposite, but things are different this time. We are moving so fast to the upside with these MAGA stocks and artificial intelligence stocks, folks. It appears that we have a blow-off that is going on. How long will it last? We'll have to wait and see. But usually the old market says whatever goes up will come down, but maybe not in our lifetime. That's the one thing that we have to remember. We had a big move in gold today. It got all the way up to 2041. We're now trading at 2030.  But other than that, the markets are holding their own, doing pretty much what we thought they were going to do. Now, the one thing that we want to remember, folks, that we are in this month of January, which is the most key cyclical month of the whole year from our perspective. We've got a lot of things happening, and there'll probably be more happening. But we've got to be ready to act, and all we're going to do is follow the patterns. That's really what we're going to be trying to do. So remember, our guest today is Bill Meridian. He'll be coming up right after this break, God willing, and she usually is. But we'll be doing that just shortly. So live every day in an attitude of gratitude, and may God bless and stay tuned for Bill Meridian of Cycles Research for a fabulous show as always. I hope I got the timing right. Oh, and I'm 30. All right. Came within a second.


Oh really? Can you rock it? Rock it? Just like the tanks? Yes, please. Good job. Rock it. Good job. Now, we can come this side. So it's opposite side. This is a marker delivered. Like the heat on the inside. We can get it. We can get it. We can get it. We can get it. We can get it. We can get it. We can get it. We can get it. And it doesn't get it. We can get it. And then the electric squid. There are two connectors. One black and one gold. And then the body cap. And the one... The one in the back. The one in the back. The one in the back. The one in the back. The one in the back. And then the rear blast fuse and parachute. And then the blast fuse and tie. Can you do it? It's functional. It's functional if you work. If you work. And then the proper... The right back. You can use the hole on the top. You can use the hole on the wall. Or you can use the hole on the wall. You can do it. Like crooked off to the side. Either way. You make sure this has the proper effectiveness on target. We want to make sure that it is centered over our target. As well as we'll clear anything that could be in the way between the charge and down. So there's a rock. You want to make sure we clear anything. Hopefully if it does come with it. It'll have a threaded fuse well. Which will put your blasting cap through. And then we'll use anything that comes with it. As well as if it's in the way. I don't know if you guys want to follow me. I don't know. Whatever you did at the end, yeah.