We saw in part 1 how to deploy our starter kit in OCI, and in part 2 how to connect to the compute instance. We will now check which development languages are available on the compute instance acting as the application server. After that, we will see how easy it is to install a new […]
In part 1, we saw how to deploy several resources to OCI, including a compute instance that will act as an application server and a MySQL HeatWave instance as a database. In this article, we will see how to SSH into the deployed compute instance. Getting the key To connect to the deployed compute instance, […]
If you want to create a new application, test it, and deploy it on the cloud, Oracle Cloud Infrastructure provides an always-free tier for compute instances and MySQL HeatWave instances (and more). If you are a developer, it can also be complicated to start deploying to the cloud, as you need to figure out the […]
It may not be surprising that there’s been a few projects over the years that I’ve worked on where we’ve had to care about stack usage (to varying degrees).
For threaded userspace applications (e.g. MySQL, Drizzle) you get a certain amount of stack per thread – and you really don’t want to bust that. For a great many years now, there’s been both a configuration parameter in MySQL to set how much stack each thread (connection) gets as well as various checks in the source code to ensure there’s enough free stack to do a particular operation (IIRC open_table is the most hairy one of this in MySQL).
For the Linux Kernel, stack usage is a relatively (in)famous problem… although by now just about every real problem has been fixed and merely mentioning it is probably just the influence of the odd grey beard hairs I’m pretending not to notice.
In a current project I’m working on, it’s also something we have …
[Read more]I wonder if this comes under “Code Style” or not…
Anyway, Monty and I finished getting Drizzle ready for adding “-Wframe-larger-than=32768″ as a standard compiler flag. This means that no function within the Drizzle source tree can use greater than 32kb stack – it’s a compiler warning – and with -Werror, it means that it’s a build error.
GCC is not perfect at detecting stack usage, but it’s pretty good.
Why have we done this?
Well, there is a little bit of recursion in the server… and we can craft queries to blow a small stack (not so good). On MacOS X, the default thread stack size is only 512kb. This gives not many frames if 32kb stack is a even remotely common.
I found some interesting places to throw a lot of things on the stack too – that would be rather far down on a …
[Read more]The rise of the "Open Source Software Stack" reached another milestone today.
Sun released a SPECjAppServer2004 performance result using
top-to-bottom Open Source Software stack components:
OpenSolaris/MySQL/Glassfish. At 1197.10 JOPS, the
performance is highly respectable - not setting any land speed
records, but it is in the ball park with other results using the
same class of hardware. The difference (of course) is
in the price/performance.
The other contenders were two [1][ …
[Read more]