The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,854 other subscribers

Archive for 2019

Delphi sorcery: Loop wars – measuring performance

Posted by jpluimers on 2019/01/08

[WayBack] Delphi sorcery: Loop wars – measuring performance – already showing some nice optimisations that should have been in the RTL into the first place, – sprouted into a nice discussion at [WayBack] Since there was this offtopic argument going on about performance of for-in versus for-to. – Stefan Glienke – Google+ with some relatively straightforward forand for ... in loop compiler optimizations that could be done, but we have dreamt of for like the last decade or two.

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

OpenSuSE Tumbleweed on RaspberryPi 3: adding ” modprobe.blacklist=vc4″ to the kernel commandline was a lot tougher than I hoped for.

Posted by jpluimers on 2019/01/08

I run most of my Raspberry Pi systems headless, so I was a bit surprised that OpenSuSE tumbleweed on a Raspberry Pi 3B didn’t show anything on my HDMI monitor after I installed KDE after it switches away from text-mode boot output.

[WayBackHCL:Raspberry Pi3 – openSUSE suggests to

I see HDMI output in U-Boot, but not in Linux

The upstream Linux graphics driver for the Raspberry Pi has problems with a few monitors. The same applies to the 7″ LCD displays. In those cases, please fall back to the efi frame buffer console by passing the following into the kernel command line:

 modprobe.blacklist=vc4

However, it does not explain how to modify that “the kernel command line”.

Searching for obvious ways via “Raspberry Tumbleweed Kernel Command Line” got me to for instance

which all suggest editing /boot/cmdline.txt, however that file does not exist:

# ls -al /boot
total 34624
drwxr-xr-x  6 root root     4096 Jul 23 21:05 .
drwxr-xr-x 24 root root     4096 Jul 16 02:02 ..
-rw-r--r--  1 root root       65 Jul 16 12:42 .Image-4.4.76-7-default.hmac
-rw-r--r--  1 root root        0 Jul 16 16:56 0x75b762d5
lrwxrwxrwx  1 root root       22 Jul 16 16:34 Image -> Image-4.4.76-7-default
-rw-r--r--  1 root root 14878208 Jul 16 12:20 Image-4.4.76-7-default
-rw-r--r--  1 root root  3217519 Jul 16 12:20 System.map-4.4.76-7-default
lrwxrwxrwx  1 root root        1 Jul 16 02:00 boot -> .
-rw-r--r--  1 root root     1725 May 24 20:11 boot.readme
-rw-r--r--  1 root root     2405 Jul 16 16:56 boot.scr
-rw-r--r--  1 root root     2333 Jul 16 16:56 boot.script
-rw-r--r--  1 root root   152522 Jul 16 08:39 config-4.4.76-7-default
lrwxrwxrwx  1 root root       12 Jul 23 16:13 dtb -> dtb-4.11.6-1
drwxr-xr-x  3 root root     4096 Jul 23 16:13 dtb-4.11.6-1
drwxr-xr-x  5 root root    16384 Jan  1  1970 efi
drwxr-xr-x  7 root root     4096 Jul 24 18:27 grub2
lrwxrwxrwx  1 root root       23 Jul 16 16:34 initrd -> initrd-4.4.76-7-default
-rw-------  1 root root  8080932 Jul 23 21:05 initrd-4.4.76-7-default
-rw-r--r--  1 root root   288571 Jul 16 12:42 symvers-4.4.76-7-default.gz
-rw-r--r--  1 root root      377 Jul 16 12:42 sysctl.conf-4.4.76-7-default
-rw-r--r--  1 root root  1484762 Jul 16 16:56 unicode.pf2
drwxr-xr-x  2 root root     4096 Jul 24 09:05 vc
-rw-r--r--  1 root root  7282031 Jul 15 07:00 vmlinux-4.4.76-7-default.gz

There are other config.txt files:

# find / | grep config.txt
/boot/efi/config.txt
/boot/vc/config.txt

However, these seems to be unclear which of the two is actually used and what options can be set at all: [WayBackRaspberry Pi • View topic – aarch64 on Pi3.

So the quest continues, as a lot of settings can be applied in these files:

Setting “modprobe.blacklist=vc4”

I’ve temporarily given up on the /boot/config.txt editing, but continued searching for “modprobe.blacklist=vc4”, which lead to a few interesting results:

All of those suggest adding modprobe.blacklist=vc4 to the grub configuration. The second post actually has the most elaborate steps for this, which I’ve paraphrased into:

  1. As root, edit /etc/default/grub (make a backup first)
  2. Search for the variable GRUB_CMDLINE_LINUX
  3. Add the modprobe.blacklist=vc4to the end of the variable initialisation (ensure there is a space before it and you keep the terminating double-quote)
  4. Re-generate the grub configuration file used at boot time (make a backup first): grub2-mkconfig > /boot/grub2/grub.cfg

This solved my problem: no text output on HDMI.

Note that in order to get graphical output, you need to install any of the non-JeOS images. Installing just kde+kdm and dependencies isn’t enough to get the X server going.

–jeroen

Posted in Development, Hardware Development, Raspberry Pi | Leave a Comment »

What RDBMS do you use when doing location-aware things? 

Posted by jpluimers on 2019/01/08

There was a nice discussion on [WayBack] What RDBMS do you use when doing location-aware things?More specifically, I am looking into a simple app with use of GPS… – Andrea Raimondi – Google+

TL;DR: use PostGIS on top of PostgresSQL.

–jeroen

Posted in Database Development, Development, PostGIS | Leave a Comment »

AmazonSmile – Kontaktieren Sie uns

Posted by jpluimers on 2019/01/07

Für mein Archiv: Zur Amazon chat geht via AmazonSmile – Kontaktieren Sie uns.

–jeroen

https://smile.amazon.de/gp/help/contact-us/general-questions.html/

Posted in LifeHacker, Power User | Leave a Comment »

Strange MAC addresses starting FA:8F:CA without OUI in your network? They are Locally Administered Addresses and likely from Google.

Posted by jpluimers on 2019/01/07

A while ago, I write about Locally Administered Addresses: a few series of MAC addresses you can use on your local network: MAC address ranges safe for testing purposes (Locally Administered Address).

A while ago, I found ones in my network and ones in my WiFi SSID survey starting with FA:8F:CA. They did not show up in the Wireshark · OUI Lookup Tool nor their manufacturer database.

But with bit 7 turned off they start with F8:8F:CA which does show up as “F8:8F:CA Google, Inc.”

They appear to be Google devices, in my case Google ChromeCast ones, though they can also be Google Home ones.

Google does “magic” with networks, just look at a few of the links here:

–jeroen

Posted in Ethernet, Google, Internet, Network-and-equipment, Power User, Ubiquiti, WiFi | Leave a Comment »

Zabbix triggers and web response scenarios

Posted by jpluimers on 2019/01/07

A few notes on Zabbix triggers and web scenarios:

  • Triggers are part of the web scenario as a whole, not the step inside a web scenario
  • A trigger is only displayed in the web scenario graph if it contains only the web response time
  • You do not need triggers for:
    • http response code: if you specify one or more “Status codes” (overview grid) or “Required status codes” (edit screen)” for a step, the web scenario will fail without the need for a trigger
    • http response content: if you specify a “Required” (overview grid) or “Required string” (edit screen) for a step, the web scenario will fail without the need for a trigger
  • If a step of a web scenario fails, the other steps are not executed.
  • Graphs for web scenarios show cumulative times of the steps, but absolute times for the triggers.

For now I’ve set these kinds of triggers on response times:

  • Level Warning: 2 minute of response time > average
  • Level Average: 5 minutes of response time > 2*average
  • Level High: 10 minutes of response time > 4*avarage
  • Level Disaster: 30 minutes of response time > 10*average

These are the colours by default used for the trigger levels: at http://example.org/zabbix/adm.triggerseverities.php

Default Zabbix trigger severities and their colours.

Default Zabbix trigger severities and their colours.

–jeroen

Posted in *nix, Monitoring, Power User, Zabbix | Leave a Comment »

FileZilla not available as homebrew cask any more

Posted by jpluimers on 2019/01/07

After an outrage about AdWare mid last year on the Windows side of things, a new outrage on the Mac side of things at the end of last year caused FileZilla to be removed from the homebrew cask repository.

They do not care that there is a non-bundle version that (right now) does not have adware, as FileZilla could put AdWare in that version at any moment in time.

After trying to update, it will disappear, and you might get an error like this (a full log is below the fold):

"Error: Cask 'filezilla' is unavailable: No Cask with this name exists."

Too bad, as FileZilla was fun while it lasted.

For the dare devils, you might want to try the non-bundled version at fosshub, but please run it through at least VirusTotal before installing, and remember: you have to trust yet another man-in-the-middle!

Uninstalling now that the cask has been removed is described in:

Related:

 

–jeroen

Read the rest of this entry »

Posted in Apple, Power User, Windows | Leave a Comment »

Lock conflict on no wait transaction

Posted by jpluimers on 2019/01/04

Just in case I ever run into this again: [WayBack] Lock conflict on no wait transaction

–jeroen

Posted in Database Development, Development, Firebird, Power User | Leave a Comment »

Zabbix: the web scenario respose time trigger unit is seconds, not milliseconds

Posted by jpluimers on 2019/01/04

When you look at the “Response time” graph for a Zabbix web scenario step that fetches a URL, you’d think the unit would be milliseconds (as last/min/avg/max are all listed in milliseconds).

However an expression like this puts the trigger off the scale:

{owa.example.org:web.test.time[https OWA,https OWA returns http code 200,resp].last()}>100

This trigger however works:

{owa.example.org:web.test.time[https OWA,https OWA returns http code 200,resp].last()}>0.1

The [WayBack] web scenario step items topic indeed lists the web.test.time unit as seconds

–jeroen

Web scenario:

https OWA returns http code 20015 sec https://example.org/owa

https OWA returns http code 200 15 sec https://example.org/owa

Trigger:

"{owa.example.org:web.test.time[https

0.1″ class=”size-medium” /> {owa.example.org:web.test.time[https OWA,https OWA returns http code 200,resp].last()}>0.1

Posted in *nix, Monitoring, Power User, Zabbix | Leave a Comment »

DBA Blog 2.0: Installing Zabbix into Azure using a MySQL PaaS

Posted by jpluimers on 2019/01/04

Interesting: [WayBack] DBA Blog 2.0: Installing Zabbix into Azure using a MySQL PaaS

–jeroen

Posted in *nix, Azure Cloud, Cloud, Cloud Development, Development, Infrastructure, Monitoring, Power User, Software Development, Windows Azure, Zabbix | Leave a Comment »