Slides as used for my database version control talk at PF Congres. I removed the photo's because I wasn't exactly sure if the licenses the photo's were published under allowed me to redistribute them in this slide show. I left the references to the original images in.
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...Alan Pinstein
Talk given at CodeWorks PHP Conference in Atlanta on 9/29/2009.
Covers MP "migrations for php" project as well as other best-practices for managing database migrations for PHP projects.
Patterns and Tools for Database Versioning, Migration, Data Loading and Test ...Alan Pinstein
Talk given at CodeWorks PHP Conference in Atlanta on 9/29/2009.
Covers MP "migrations for php" project as well as other best-practices for managing database migrations for PHP projects.
From continuous integration servers to blogging systems, we've all seen and used pluggable applications. Writing our own though can be an elusive task. That need not be the case, though, as the Java EE spec contains all you need to do just that. In this session, we'll see how we can leverage the power of CDI to write, for example, easily extensible JSF applications. When the session is over, you'll have all you need to write the next killer app, and, thanks to Java EE, you'll be surprised to see how little work it really is.
SOUG - Experiences with Oracle Solaris 11.4JomaSoft
Oracle Solaris 11.4 was launched in August 2018.
What are the new features in the area of Zones, ZFS and Security?
What was delivered in the last 30 monthly updates?
Sprytniejsze testowanie kodu java ze spock framework (zaawansowane techniki) ...PROIDEA
SPRYTNIEJSZE TESTOWANIE KODU JAVA ZE SPOCK FRAMEWORK (ZAAWANSOWANE TECHNIKI)
Spock Framework jest coraz częściej wykorzystywany do pisania testów automatycznych dla kodu produkcyjnego napisanego w Javie. Dzięki zastosowaniu DSLa opartego o język Groovy umożliwia tworzenie bardziej zwartych konstrukcji charakteryzujących się dużą czytelnością. W czasie prezentacji pokażę szereg bardziej zaawansowanych i często mało znanych mechanizmów, których zastosowanie może jeszcze bardziej ułatwić i uprościć testowanie naszego kodu. Przedstawię również kilka nowych funkcji, które stały się dostępne wraz z wydaniem wersji 1.0. O podstawach Spocka mówić nie będę, ale dzięki jego naturalnej klarowności nawet osoby wcześniej go nieużywające na pewno nie będą miały trudności, aby się odnaleźć.
From continuous integration servers to blogging systems, we've all seen and used pluggable applications. Writing our own though can be an elusive task. That need not be the case, though, as the Java EE spec contains all you need to do just that. In this session, we'll see how we can leverage the power of CDI to write, for example, easily extensible JSF applications. When the session is over, you'll have all you need to write the next killer app, and, thanks to Java EE, you'll be surprised to see how little work it really is.
SOUG - Experiences with Oracle Solaris 11.4JomaSoft
Oracle Solaris 11.4 was launched in August 2018.
What are the new features in the area of Zones, ZFS and Security?
What was delivered in the last 30 monthly updates?
Sprytniejsze testowanie kodu java ze spock framework (zaawansowane techniki) ...PROIDEA
SPRYTNIEJSZE TESTOWANIE KODU JAVA ZE SPOCK FRAMEWORK (ZAAWANSOWANE TECHNIKI)
Spock Framework jest coraz częściej wykorzystywany do pisania testów automatycznych dla kodu produkcyjnego napisanego w Javie. Dzięki zastosowaniu DSLa opartego o język Groovy umożliwia tworzenie bardziej zwartych konstrukcji charakteryzujących się dużą czytelnością. W czasie prezentacji pokażę szereg bardziej zaawansowanych i często mało znanych mechanizmów, których zastosowanie może jeszcze bardziej ułatwić i uprościć testowanie naszego kodu. Przedstawię również kilka nowych funkcji, które stały się dostępne wraz z wydaniem wersji 1.0. O podstawach Spocka mówić nie będę, ale dzięki jego naturalnej klarowności nawet osoby wcześniej go nieużywające na pewno nie będą miały trudności, aby się odnaleźć.
"As Kafka’s popularity grows, enterprises often find themselves deploying not a single cluster, but several clusters. This is usually because of scale, but can be driven by other needs such as activities in different geographies or compliance requirements. Whenever you have multiple clusters, the ability to move data between clusters is very valuable. It enables very different scenarios such as geo-replication, disaster recovery, hybrid cloud architectures, but also simply allows reusing data between applications.
MirrorMaker is the Apache Kafka project’s solution for mirroring clusters and consists of 3 connectors for Connect. This tool allows creating all sorts of mirroring topologies by combining the connectors in different ways. In this session we will demonstrate how to use MirrorMaker by exploring two of the most common mirroring use cases: geo-replication and disaster recovery. For each we’ll explain the combination of connectors to use and highlight the key decision points and configurations that you should carefully consider. At the end of the session you will understand the capabilities of MirrorMaker and the process of building powerful mirroring scenarios with this tool."
Tracing Software Build Processes to Uncover License Compliance InconsistenciesShane McIntosh
Open Source Software (OSS) components form the basis for many software systems. While the use of OSS components accelerates development, client systems must comply with the license terms of the OSS components that they use. Failure to do so exposes client system distributors to possible litigation from copyright holders. Yet despite the importance of license compliance, tool support for license compliance assessment is lacking. In this paper, we propose an approach to extract and analyze the Concrete Build Dependency Graph (CBDG) of a software system by tracing system calls that occur at build-time. Through a case study of seven open source systems, we show that the extracted CBDGs: (1) accurately classify sources as included in or excluded from deliverables with 88%-100% precision and 98%-100% recall, and (2) can uncover license compliance inconsistencies in real software systems - two of which prompted code fixes in the CUPS and FFmpeg systems.
Cisco network equipment has always been an attractive attack target due to its prevalence and the key role that it plays in network structure and security.
This equipment is based on a wide variety of OS (firmware) architectures, types, and versions, so it is much harder to develop a universal shellcode. Publicly available Cisco IOS shellcodes are tailored to specific equipment, have narrow functionality, and are not exactly useful for penetration testing.
This talk is the presentation of a research initiated by our research center to create a shellcode which is as easily portable between different IOS firmwares as possible and which provides a lot of pentesting features because it can dynamically change the shellcode destination at the stage of post-exploitation.
We will also consider the possibility of creating a worm which could spread across the infrastructure, from firewall to router, from router to switch, etc.
BenchFlow: A Platform for End-to-end Automation of Performance Testing and An...Vincenzo Ferme
BenchFlow is an open-source expert system providing a complete platform for automating performance tests and performance analysis. We know that not all the developers are performance experts, but in nowadays agile environment, they need to deal with performance testing and performance analysis every day. In BenchFlow, the users define objective-driven performance testing using an expressive and SUT-aware DSL implemented in YAML. Then BenchFlow automates the end-to-end process of executing the performance tests and providing performance insights, dealing with system under test deployment relying on Docker technologies, distributing simulated users load on different server, error handling, performance data collection and performance metrics and insights computation.
My talk for SPEC Research Group DevOps (https://research.spec.org/devopswg) about BenchFlow. Discover BenchFlow: https://github.com/benchflow
Simple SQL Change Management with SqitchDavid Wheeler
SQL change management has always sucked. This talk introduces Sqitch, the VCS-aware SQL change management application that doesn’t suck. Come see how it works, learn the few simple rules you need to get the most out of it, and liberate yourself from the suckitude.
JavaEdge 2008: Your next version control systemGilad Garon
The next generation of VCS has a clear target ahead of them: making branching and merging easier. Until recently, Subversion was dominating the world of Version Control Systems, but now, Distributed Version Control Systems are growing in popularity and everywhere you go you hear about Git or Mercurial, and how they make branching and merging a breeze. But the Subversion team isn't going down quietly, they have a new weapon: the 1.5 version. Learn about the next generation of Version Control Systems is planning to solve your problems.
LinuxFest Northwest 2022 - The Evolution of a MySQL Database SystemFrederic Descamps
At the beginning of a project, the database is just a single MySQL instance (maybe not even running on its own hardware)... but with the evolution of the business requirements, the database must change to also meet the new targets of data loss and uptime. During this session we will follow the journey of a single MySQL server from the simple instance to a High Available Architecture with multi-site Disaster Recovery. We will discover easy manageable native solutions like MySQL InnoDB ReplicaSet, MySQL InnoDB Cluster and MySQL InnoDB ClusterSet. The session is also illustrated with commands and examples.
FOSDEM 2022 MySQL Devroom: MySQL 8.0 - Logical Backups, Snapshots and Point-...Frederic Descamps
Logical dumps are becoming popular again. MySQL Shell parallel dump & load utility changed to way to deal with logical dumps, certainly when using instances in the cloud. MySQL 8.0 released also an awesome physical snapshot feature with CLONE.
In this session, I will show how to use these two ways of saving your data and how to use the generated backup to perform point-in-time recovery like a rockstar with MySQL 8.0 in 2022 !
What to Do When You Don’t Know What to Do: Control System Patching Problems a...EnergySec
FoxGuard Solutions has encountered and resolved a wide variety of problems in our monthly work of patching control systems for our OEM clients and hundreds of power utility sites. In this presentation, we will cover a list of problems you might encounter and some real-world strategies that we have helped our clients implement to deal with them.
24. Here used to be an image of a one-way sign that I
removed because of the license the image was published
under
http://www.freefoto.com/preview/41-07-7
25. Process
Copy production to test environment
Apply patches
Run tests
Backup live database
Update production
22
28. Here used to be an image of a guy in a rowing boat that I
removed because of the license the image was published
under
http://www.sxc.hu/photo/643214
29. Here used to be an image of a sunken boat that I removed
because of the license the image was published under
http://www.sxc.hu/photo/946855
46. Patch log
At this point our patch number tracking doesn’t work
anymore!!!
patch_20100322_2158.sql
patch_20100323_0839.sql
patch_20100327_1025.sql
41
47. Patch log
At this point our patch number tracking doesn’t work
anymore!!!
patch_20100322_2158.sql
patch_20100323_0839.sql
patch_20100327_1025.sql
Last executed:
patch_20100327_1025
41
48. Patch log
At this point our patch number tracking doesn’t work
anymore!!!
patch_20100322_2158.sql patch_20100322_2253.sql
patch_20100323_0839.sql patch_20100325_1528.sql
patch_20100327_1025.sql patch_20100328_1230.sql
Last executed:
patch_20100327_1025
41
49. Patch log
At this point our patch number tracking doesn’t work
anymore!!!
patch_20100322_2158.sql patch_20100322_2253.sql
patch_20100323_0839.sql patch_20100325_1528.sql
patch_20100327_1025.sql patch_20100328_1230.sql
Last executed:
patch_20100327_1025
41
50. Patch log
At this point our patch number tracking doesn’t work
anymore!!!
patch_20100322_2158.sql patch_20100322_2253.sql
patch_20100323_0839.sql patch_20100325_1528.sql
patch_20100327_1025.sql patch_20100328_1230.sql
patch_20100322_2158.sql
patch_20100322_2253.sql
Last executed: patch_20100323_0839.sql
patch_20100327_1025 patch_20100325_1528.sql
patch_20100327_1025.sql
patch_20100328_1230.sql
41
51. Patch log
At this point our patch number tracking doesn’t work
anymore!!!
patch_20100322_2158.sql patch_20100322_2253.sql
patch_20100323_0839.sql patch_20100325_1528.sql
patch_20100327_1025.sql patch_20100328_1230.sql
patch_20100322_2158.sql
patch_20100322_2253.sql
Last executed: patch_20100323_0839.sql
patch_20100327_1025 patch_20100325_1528.sql
patch_20100327_1025.sql
patch_20100328_1230.sql
41
64. Akrabat DB Schema Manager
Zend Framework
Proposed by Rob Allen in 2006
Recently implemented
Might be in ZF in the near future
http://github.com/akrabat/Akrabat
52
71. Akrabat DB Schema Manager
Easy to use if you know ZF
PHP instead of SQL-only
Easy to ‘undo’ patches
Branch merging problem
Run from your deploy script
58